SkillAgentSearch skills...

Riverside

This is a minimal peer-to-peer audio/video recording application inspired by Riverside.fm. It allows two participants to connect via a WebRTC-based video call and record their own audio/video streams locally in high quality. Once the recording is complete, each participant's media is uploaded to Amazon S3 for storage and later retrieval.

Install / Use

/learn @omshdev/Riverside

README

🎥 Peer-to-Peer Recording App (Riverside Clone - v1)

A minimal Riverside.fm clone (version 1) built using WebRTC, MediaRecorder, WebSockets, and the MERN stack. This version supports one-on-one high-quality audio/video calls with local recording and upload to AWS S3.


🚀 Features

  • Peer-to-peer video and audio call using WebRTC
  • Local recording on each client using MediaRecorder API
  • Upload recorded files to AWS S3 via backend API
  • Simple signaling server using WS (WebSocket)
  • Built with MERN stack (MongoDB, Express, React, Node.js)

🧱 Tech Stack

  • Frontend: React, WebRTC, MediaRecorder, Websocket
  • Backend: Node.js, Express, ws, AWS SDK
  • Storage: Amazon S3
  • Database: MongoDB (for sessions/users - optional in v1)

📦 Getting Started

1. Clone the repository

git clone https://github.com/OmSharma42306/Riverside.git
cd Riverside
cd repo
1) npm install
2) cd packages/db
    - npx prisma generate
    - tsc -b
    - copy that genrated folder into dist
3) npm run dev
4) start the Worker... 
    - cd apps/backend-server
    - cd dist/workers
    - node mergeWorker.js
View on GitHub
GitHub Stars9
CategoryDevelopment
Updated25d ago
Forks1

Languages

TypeScript

Security Score

90/100

Audited on Mar 7, 2026

No findings