Provides signaling control plane for mediasoup, scalable ingress/egress media services, plus Terraform + GitHub Actions deployment workflows for popular cloud providers.
It is designed to be readable, testable, and operable for multi-peer rooms, with explicit diagnostics for join, transport, and media fanout failures.
Current release line: 0.1.0-alpha.1 (first public prerelease).
This is a prerelease, and feedback is actively requested from anyone interested in the project.
Feedback is welcome on architecture and design decisions, implementation approach, scaffolding, documentation clarity, and overall project direction. Please use GitHub Discussions for feedback, including philosophical discussions and codeless suggestions.
If SignalSalad is not the right fit for your use case, there are strong alternatives:
- Cloudflare WebRTC
- LiveKit (pion based)
- Edumeet (also mediasoup-based)
- FrameVR.io (3D world media chat)
signaling/: websocket + netsocket coordination servermedia/: ingress/egress media server processeswebapp/: debug UI and browser client harnesstypes/: shared signaling/media payload contractsdocs/: architecture, testing, operations, and troubleshootingcontainerization/: local Docker Compose stackinfrastructure/: cloud deployment modules and scripts
Requirements:
- Node.js
- npm
- Docker + Docker Compose
- Run local stack (canonical).
make devOptional direct compose command:
cd containerization
docker compose up webapp signaling ingress egressmake dev: start full local compose stackmake down: stop local compose stackmake test: run signaling integration + runtime + media unit testsmake lint: lint signaling/media/webappmake typecheck: typecheck signaling/media/webappmake docs: generate typedocs for signaling/media/webappmake dev-deps: install signaling/media/webapp dependencies
Special thanks to the mediasoup maintainers and contributors for building and sustaining an exceptionally stable foundation for realtime media systems.
SignalSalad depends on that work, but it is an independent project and is not endorsed by or affiliated with the mediasoup project or its maintainers.
- Architecture index
- Message Sequences
- C4 Level 1 - System Context
- C4 Level 2 - Container View
- C4 Level 3 - Signaling Code View
- C4 Deployment View
- Threat Model
- Roadmap
- Deployment
- Reliability
- Troubleshooting
- Operations Triage Playbook
- Media Scaling
- Signaling Error Taxonomy
Generated by make docs under docs/generated/:
-
demo-uiis the current temporary UI surface and may be replaced. -
harnessis the intended stable integration boundary for future UI swaps.