Shot Tube MERN is a full-stack web application built using the MERN (MongoDB, Express, React, Node.js) stack. It allows users to upload and share video content, similar to a mini YouTube application.
- User authentication and authorization
- Video upload and playback
- HLS streaming with support for multiple resolutions
- Video transcription(English) for enhanced accessibility
- Notification system
- Commenting,replying and liking system
- Email verification for password reset
- User profile management
- Responsive design
To run this project locally, follow these steps:
- Node.js
- npm or yarn
- Docker and Docker Compose
git clone https://github.com/md-asharaf/shot_tube-MERN.git
cd shot_tube-MERN
The project includes a docker-compose.yml
file for easy setup. Run the following command to start the application using Docker Compose:
docker-compose up --build
This will start the server on port 8000
and the client on port 3000
.
If you prefer to run the project without Docker, follow these steps:
cd client
yarn install
cd server
yarn install
yarn run dev
yarn run dev
- Navigate to the
client
directory and start the development server. - Navigate to the
server
directory and start the server. - Open your browser and visit
http://localhost:3000
to see the application in action.
Contributions are welcome! Please fork this repository and submit a pull request for any enhancements or bug fixes.
This project is licensed under the ISC License.