Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ahmedsobhy01/watch-party
A platform for synchronized movie watching with friends and family, offering offline and online streaming, real-time chat, emoji reactions, and support for multiple subtitles
https://github.com/ahmedsobhy01/watch-party
nodejs real-time socket-io streaming vuejs watch-party
Last synced: 3 months ago
JSON representation
A platform for synchronized movie watching with friends and family, offering offline and online streaming, real-time chat, emoji reactions, and support for multiple subtitles
- Host: GitHub
- URL: https://github.com/ahmedsobhy01/watch-party
- Owner: AhmedSobhy01
- License: mit
- Created: 2024-06-13T17:37:30.000Z (8 months ago)
- Default Branch: main
- Last Pushed: 2024-09-05T12:51:21.000Z (5 months ago)
- Last Synced: 2024-09-06T00:59:48.950Z (5 months ago)
- Topics: nodejs, real-time, socket-io, streaming, vuejs, watch-party
- Language: Vue
- Homepage: https://party-streaming.ahmedsobhy.net
- Size: 1.25 MB
- Stars: 4
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
🎬 Watch Party Website
This project provides a platform for enjoying movies with friends and family in perfect sync. If you’ve struggled to find a good, free service for synchronized movie watching, you’ve found the right place! 🎉
## 🚀 Motivation
This project was inspired by the challenge of finding a free, reliable way to watch movies synchronously with friends and family. Many existing services either lacked essential features or were not freely available. I aimed to build a solution that makes it easy to enjoy movies together, no matter where you are.
## ✨ Features
- **Offline Movie Watching:** Watch movies from a local file with your friends. 🖥️
- **Online Streaming:** Stream videos using a video file or m3u8 URL for a seamless online experience. 🌐
- **Real-Time Chat:** Engage in real-time conversations with friends while watching. 💬
- **Reaction Bar:** React to scenes with emojis, making the movie-watching experience more interactive. 😄😂😱
- **Multiple Subtitles:** Support for multiple subtitles, available both offline and online, to accommodate different languages and preferences. 🗣️📜## 🛠️ Tech Stack
- **Node.js:** Manages server-side logic and backend operations. 🔧
- **Socket.io:** Facilitates real-time communication and synchronization between users. 🔗
- **Vue.js:** Handles the client-side interface, providing a responsive and user-friendly experience. 🎨## 📂 Project Structure
- **Root Directory:** Contains the frontend part of the application.
- **`api` Directory:** Houses the backend code and server logic.## 🌐 Live Demo
Invite your friends and come over to our live demo at https://party-streaming.ahmedsobhy.net! See the features in action and enjoy a movie night together!
## 🚧 Getting Started
Follow these steps to get the project up and running locally:
1. **Clone the Repository:**
```bash
git clone https://github.com/AhmedSobhy01/watch-party.git
cd watch-party
```2. **Create the .env File:**
Copy the .env.example file to create a new .env file:```bash
cp .env.example .env
```3. **Install Frontend Dependencies:**
Navigate to the root directory and run:```bash
npm install
```4. **Install Backend Dependencies:**
Navigate to the `api` directory and run:```bash
cd api
npm install
```5. **Create the .env File:**
Copy the .env.example file to create a new .env file:```bash
cp .env.example .env
```6. **Start the Backend Server:**
```bash
npm start
```7. **Start the Frontend Application:**
In another terminal, return to the root directory and run:```bash
npm run build
npm start
```8. **Open Your Browser:**
Visit `http://localhost:3000` to start using the watch party website. 🍿## ⚙️ Configuration
Customize settings such as server port and other environment variables in the `.env` file. Refer to the `.env.example` file for guidance on setting up your environment.
## 📜 License
This project is licensed under the MIT License. For more details, see the [LICENSE](LICENSE) file.