/screen-sharing

Share your screen with one simple room code. No downloads or sign-ups required.

Primary LanguageTypeScriptMIT LicenseMIT

Screen Sharing Application

A real-time screen sharing application built with Next.js, WebRTC, and PeerJS. Create or join rooms to share your screen with others instantly.

✨ Features

  • Real-time screen sharing
  • Room-based sharing system
  • Cross-browser support
  • Simple and intuitive interface

📱 Device Support

  • Hosting: Desktop/laptop browsers only
  • Viewing: Works on all devices (desktop, tablet, mobile)

🌐 Browser Support

Browser Screen Sharing Audio Sharing
Google Chrome ✅ (Only when sharing a tab)
Microsoft Edge ✅ (Only when sharing a tab)
Mozilla Firefox
Apple Safari

Important Notes

  • For audio sharing to work, users have to select the tab option when sharing in Google Chrome or Microsoft Edge.

🛠️ Built With

🚀 Getting Started

First, clone the repository:

git clone https://github.com/tonghohin/screen-sharing.git

Navigate to the project directory:

cd screen-sharing

Using npm

Install the dependencies:

npm install

Start the development server:

npm run dev

Using Docker

Start the development container:

docker compose up

📦 Deployment

Cloud Platform

This application can be deployed on any cloud platform that supports static site hosting.

Self Hosting

You can self-host this application using Docker:

docker run -p 3000:3000 -d --name screen-sharing ghcr.io/tonghohin/screen-sharing:latest

👥 Contributing

Contributions are welcome! Please read our Contributing Guide for details on how to submit pull requests, report issues, and contribute to the project.

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.