Production-ready WebRTC infrastructure for privacy-focused note taking and live collaboration. RippleNote pairs a FastAPI backend with a modular Mediasoup SFU service, optional recording, and S3 storage for long-lived assets.
- 1:1 WebRTC video/audio sessions orchestrated through Mediasoup
- FastAPI backend that manages calls, signaling, recording, and storage metadata
- Local FFmpeg-based recording with optional S3 upload
- Modular Node.js mediasoup server tailored for containerized deployments
| Path | Description |
|---|---|
backend/ |
FastAPI application, domain models, services, and docs |
mediasoup-server/ |
Node.js Mediasoup SFU service with Docker support |
frontend/ |
Client integrations and experiments |
See backend/README.md and mediasoup-server/README.md for component-level detail.
- Backend – install Python dependencies and run
uvicornas described inbackend/README.md. - Mediasoup Server – install Node dependencies (
npm install) then runnpm startinsidemediasoup-server/. - Configure Environment – create a
.envfile with backend + mediasoup host/port info, and optional AWS/S3 + recording configuration. - Try the APIs – open
http://localhost:8000/docsfor interactive FastAPI docs and use the Mediasoup endpoints to bootstrap transports.