VNOX-Server/dev/README.md

2 KiB

Local development configuration

This directory holds the default config for running VNOX on your machine.

File: config.toml

[node]
name    = "dev-node"
address = "127.0.0.1"

[gateway]
bind            = "127.0.0.1:7600"
max_connections = 100
session_timeout = 600

[voice]
bind = "127.0.0.1:7700"

[storage]
data_dir    = "./dev/data"
backend     = "sqlite"
sqlite_path = "./dev/data/vnox.db"

Sections

[node]

  • name - shown to clients after connect (HELLO / session UI).
  • address - public node address for future federation; local dev uses loopback.

[gateway]

  • bind - TCP listen address for client connections. Default dev port: 7600.
  • max_connections - connection cap (not enforced in all code paths yet).
  • session_timeout - session lifetime in seconds; sent to clients as expires_at.

[voice]

  • bind - UDP listen address for voice relay. Default dev port: 7700.
  • Sent to clients as voice_endpoint when they join a channel.

[storage]

  • data_dir - gateway data directory; stores SQLite DB and server_identity.json.
  • sqlite_path - SQLite database file for chat history and user records.

First run

mkdir -p dev/data

cargo run -p vnox-gateway -- --config dev/config.toml
cargo run -p vnox-voice-node -- --config dev/config.toml
cargo run -p vnox-client

On first gateway start, dev/data/server_identity.json is created automatically. Back it up if you care about a stable server identity across reinstalls.

E2E voice test

With gateway and voice-node running:

cargo run -p vnox-client --bin vnox-e2e-voice

This headless test connects two TCP clients, joins the voice channel, sends UDP packets, and verifies the voice-node relays between them. Exit code 0 means pass.

Logs

Set log level via environment variable:

VNOX_LOG=debug cargo run -p vnox-gateway -- --config dev/config.toml

Full reference

Production-oriented options: docs/03-server/configuration.md.