Configuration
All node configuration is done via command-line flags or environment variables.
CLI Options
| Flag | Env Variable | Default | Description |
|---|---|---|---|
--host | - | 127.0.0.1 | Bind address for API/gRPC. Use 0.0.0.0 for public nodes |
--port | - | 4101 | gRPC port |
--api-port | - | 5101 | HTTP API port |
--chain-id | - | rougechain-devnet-1 | Chain identifier |
--block-time-ms | - | 400 | Block production interval (ms) |
--mine | - | false | Enable block production |
--node-name | QV_NODE_NAME | - | Human-readable name shown on the network globe |
--data-dir | - | ~/.quantum-vault/core-node | Data storage directory |
--peers | QV_PEERS | - | Comma-separated peer URLs |
--public-url | QV_PUBLIC_URL | - | This node's public URL for peer discovery |
--api-keys | QV_API_KEYS | - | Comma-separated API keys |
--rate-limit-per-minute | - | 0 (unlimited) | Rate limit for API requests |
Examples
Local Development Node
./quantum-vault-daemon --mine --api-port 5100
Syncing Node (No Mining)
./quantum-vault-daemon \
--api-port 5100 \
--peers "https://testnet.rougechain.io/api"
Public Mining Node
./quantum-vault-daemon \
--mine \
--host 0.0.0.0 \
--api-port 5100 \
--node-name "MyNode" \
--peers "https://testnet.rougechain.io/api" \
--public-url "https://mynode.example.com"
Once running, visit http://localhost:5100 in your browser to see the built-in node dashboard with live stats, peer list, and block height.
Multiple Peers
./quantum-vault-daemon \
--api-port 5100 \
--peers "https://node1.example.com,https://node2.example.com,https://node3.example.com"
Custom Data Directory
./quantum-vault-daemon \
--mine \
--api-port 5100 \
--data-dir "/var/lib/rougechain"
Environment Variables
You can also use environment variables:
export QV_PEERS="https://testnet.rougechain.io/api"
export QV_PUBLIC_URL="https://mynode.example.com"
export QV_NODE_NAME="MyNode"
export QV_API_KEYS="key1,key2,key3"
./quantum-vault-daemon --mine --api-port 5100
Data Directory Structure
~/.quantum-vault/core-node/
├── chain.jsonl # Block data (append-only)
├── tip.json # Current chain tip
├── validators-db/ # Validator state (RocksDB)
└── messenger-db/ # Messenger data (RocksDB)
Running with Systemd (Linux)
Create /etc/systemd/system/rougechain.service:
[Unit]
Description=RougeChain Node
After=network.target
[Service]
Type=simple
User=rougechain
ExecStart=/opt/rougechain/quantum-vault-daemon --mine --host 0.0.0.0 --api-port 5100 --node-name "MyNode" --public-url "https://mynode.example.com" --peers "https://testnet.rougechain.io/api"
Restart=always
RestartSec=5
[Install]
WantedBy=multi-user.target
Enable and start:
sudo systemctl enable rougechain
sudo systemctl start rougechain
sudo journalctl -u rougechain -f # View logs