Files

28 lines
1.3 KiB
Markdown
Raw Permalink Normal View History

# VoiceCat documentation
VoiceCat is a self-hosted channel-based voice and text system. Control traffic uses TLS 1.3;
media uses authenticated encrypted UDP derived from the TLS session. There is no plaintext
mode or central service.
Current references:
- [architecture.md](architecture.md) — components, ownership, concurrency, and native boundary.
- [api-dotnet.md](api-dotnet.md) — managed API and ownership contracts.
- [building.md](building.md) — development, platform builds, tests, and publishing.
- [deployment.md](deployment.md) — server packaging and operations.
- [ios-deploy.md](ios-deploy.md) — physical-device iOS build and deployment.
- [tech-stack.md](tech-stack.md) — supported dependencies and licensing.
- [broadcast-ring-format.md](broadcast-ring-format.md) — frozen extension/host ring ABI.
`proto/voicecat.proto` is the control-plane wire contract. Managed tests are the executable
behavior contract. Keep prose current with those sources rather than documenting historical
implementations.
Durable rules:
- Encryption is mandatory.
- GPL and LGPL dependencies are forbidden.
- Real-time audio callbacks never allocate, lock, block, or perform I/O.
- The server relays encoded media; it does not mix or transcode it.
- Wire, database, and shared-ring changes are explicitly versioned.