A modern, scalable, and feature-rich video sharing platform for creators and viewers.
- Node.js Foundation: High performance and efficiency with real-time interactions.
- Video Upload & Streaming: Effortless uploads and adaptive streaming playback.
- User Authentication & Authorization: Secure accounts and sensitive data.
- Search & Discovery: Sophisticated search to find new content easily.
- Social Features: Likes, comments, and community posts (tweets) for engagement.
- Subscription Model: Subscribe to channels and stay updated on new uploads.
- Dashboard: Analytics dashboard for creators with video performance insights.
- Scalability: Designed to grow with your user base and content library.
- Backend: Node.js, Express.js
- Database: MongoDB (Mongoose)
- Authentication: JWT, OAuth
- Video Processing: FFmpeg, Multer
- Frontend: (To be added)
- Other: Docker, Cloud Storage (optional)
Follow these steps to set up VideoHouse locally:
-
Clone the Repository:
git clone https://github.com/Just2Deep/VideoHouse.git cd VideoHouse -
Install Dependencies:
npm install
-
Configure Environment Variables:
- Create a
.envfile in the root directory. - Copy the contents of
sample.envas a template. - Set up necessary environment variables (database credentials, API keys, etc).
- Create a
-
Run the Application:
npm run dev
-
Access the App:
- Open your browser and navigate to
http://localhost:3000(or your configured port).
- Open your browser and navigate to
Contributions are welcome! Please follow these steps:
- Fork the repository.
- Create a new branch:
git checkout -b feature/your-feature-name - Commit your changes:
git commit -m "Add your message" - Push to the branch:
git push origin feature/your-feature-name - Open a Pull Request.
This project is licensed under the MIT License.
- Inspired by leading video platforms.
- Built with ❤️ by Just2Deep and contributors.
Feel free to explore, contribute, and make VideoHouse your own! 🎉