A modern, full-stack video streaming platform built using React.js on the frontend, Node.js/Express on the backend, and Cloudinary for secure video uploads and streaming. Styled beautifully with Tailwind CSS and structured with clean separation of frontend and backend folders.
π§ Coming soon...
videostream/
βββ backend/ # Node.js + Express Backend
β βββ controllers/ # Route logic (e.g., upload, stream)
β βββ routes/ # API routes
β βββ config/ # Cloudinary and server config
β βββ models/ # DB models (if using DB like MongoDB)
β βββ utils/ # Helper functions
β βββ index.js # Entry point (Express server)
β
βββ frontend/ # React.js Frontend
β βββ public/
β βββ src/
β β βββ components/ # Reusable UI components
β β βββ pages/ # Pages like Home, Upload, Player
β β βββ hooks/ # Custom React Hooks
β β βββ App.jsx # Main App component
β β βββ main.jsx # React DOM render
β βββ tailwind.config.js # Tailwind CSS config
β
βββ README.md
βββ .env # Environment variables
βββ package.json- πΉ Upload videos to Cloudinary
- π Stream videos via secure Cloudinary links
- π Video search & filter (optional enhancement)
- π§Ύ Clean REST API for handling uploads and playback
- πΌοΈ Beautiful responsive UI with Tailwind CSS
- ποΈ Organized codebase with backend/frontend separation
- βοΈ React.js (Vite or CRA)
- π¨ Tailwind CSS
- π¦ Axios (for API requests)
- π’ Node.js
- β‘ Express.js
- βοΈ Cloudinary SDK (for uploads)
- π dotenv for environment variables
git clone https://github.com/itsmesaadali/BackendNodejs.git
cd BackendNodejscd backend
npm install
# Create a .env file and add:
# CLOUDINARY_CLOUD_NAME=
# CLOUDINARY_API_KEY=
# CLOUDINARY_API_SECRET=
# PORT=5000
npm run devcd ../frontend
npm install
npm run devFrontend will usually run on
http://localhost:5173
Backend will run onhttp://localhost:5000
| Home Page | Upload Page | Video Player |
|---|---|---|
Videos are uploaded and streamed using Cloudinary. Make sure to:
- Create an account on Cloudinary
- Get your Cloud Name, API Key, and API Secret
- Add them to the
.envfile in the backend.
- π Authentication with JWT
- β€οΈ Like, comment, or save videos
- π§ AI-generated thumbnails
- π Admin dashboard for video analytics
Contributions are welcome! Please open issues or submit a pull request if you'd like to improve this project.
This project is licensed under the MIT License.
Made with β€οΈ by itsmesaadali
π§ Email: itmesaad@gmail.com