A private camera streaming application that enables seamless sharing of camera feed between devices using WebRTC technology.
- Real-time camera streaming via WebRTC
- Persistent connection even when minimized/backgrounded
- Low-latency peer-to-peer video transfer
- Multiple viewers support
- Simple and intuitive UI
# Install dependencies
npm install
# Run in development mode
npm run dev- Create a Railway account at https://railway.app
- Click "New Project" in the Railway dashboard
- Select "Deploy from GitHub repo"
- Connect your GitHub repository
- Railway will automatically detect the Dockerfile.railway specified in railway.json
- Deploy the application
The Docker-based deployment uses:
Dockerfile.railway- Multi-stage Docker build for Railway.dockerignore- Files to exclude from the containerrailway.json- Railway configuration
If you encounter build failures, try these steps:
- In the Railway dashboard, go to your project settings
- Make sure the "Watch" tab is enabled to see build logs
- Try a clean build by clicking "Redeploy" and selecting "Clear build cache"
- If Docker build still fails, contact Railway support and share your build logs
- On the sharing device, visit the application and grant camera permissions
- On the viewing device, visit the
/watchroute to view the camera feed
NODE_ENV: Set toproductionfor production deploymentsPORT: (Optional) Port to run the server on, defaults to 5000
- The application uses WebRTC, which works best over HTTPS
- For local development with external access, use a tool like ngrok