Stream your local movies through a beautiful web interface. Local Movie Streamer, a MERN application, allows you to search through your movie collection, watch them, add subtitles, and control the stream from any device connected to your local network.
- Local Streaming: Stream videos stored on your local machine using WebSockets for seamless video streaming.
- Device Control: Control and access the stream from any device on your local network.
- Authentication: Secure login and sign-up pages have been integrated.
- Subtitles: Upload SRT subtitle files while watching a movie.
- Responsive: Can be accessed on various device sizes using Tailwind CSS.
- MERN Stack: MongoDB, Express.js, React.js, and Node.js.
- Streaming: WebSockets.
- Authentication: bcrypt (for password hashing) and JWT (for user authentication).
- Node.js (v14+)
- Yarn or NPM
- Ffmpeg installed on your machine
-
Clone the repository:
git clone https://github.com/sulimanbadour1/local-stream-app.git cd [your-repo-folder]
-
Install dependencies:
# Frontend dependencies cd frontend npm install # Backend dependencies cd ../backend npm install
- Create a directory and add your movies to it.
- Change the backend directory to point to your folder from the
server.js
file. - Modify the IP address in the server configuration to your local IP address if needed.
- File structure:
- Navigate to the
backend
directory. - Edit the
movieDirectory
variable inserver.js
to point to your local movie directory.
- Modify the API endpoints if needed to point to the correct backend server by using env variables.
-
Create a direrctory and add your movies to it.
-
Change the backend dir to your folder from the server.js file.
-
Navigate to the
backend
directory.cd backend
-
Start the server:
npm start node server.js
-
Navigate to the
frontend
directory.cd frontend
-
Start the React app:
npm run dev
- Open your web browser and visit
http://localhost:5173
or the configured IP address. - If you're a new user, sign up. Otherwise, log in and enjoy streaming your local movies!
- Search for movies using the search bar.
- Click on any movie card to start streaming.
- Upload
.srt
subtitle files directly while watching a movie.
Feel free to contribute to this project! Fork the repository, make your changes, and submit a pull request.
MIT License