Skip to content

itsmesaadali/BackendNodejs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

33 Commits
Β 
Β 
Β 
Β 

Repository files navigation

πŸŽ₯ VideoStream Web App

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.


🌐 Live Demo

🚧 Coming soon...


πŸ“ Folder Structure

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

πŸš€ Features

  • πŸ“Ή 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

🧰 Tech Stack

Frontend

  • βš›οΈ React.js (Vite or CRA)
  • 🎨 Tailwind CSS
  • πŸ“¦ Axios (for API requests)

Backend

  • 🟒 Node.js
  • ⚑ Express.js
  • ☁️ Cloudinary SDK (for uploads)
  • πŸ”’ dotenv for environment variables

πŸ”§ Setup & Installation

1️⃣ Clone the Repository

git clone https://github.com/itsmesaadali/BackendNodejs.git
cd BackendNodejs

2️⃣ Setup Backend

cd backend
npm install
# Create a .env file and add:
# CLOUDINARY_CLOUD_NAME=
# CLOUDINARY_API_KEY=
# CLOUDINARY_API_SECRET=
# PORT=5000

npm run dev

3️⃣ Setup Frontend

cd ../frontend
npm install
npm run dev

Frontend will usually run on http://localhost:5173
Backend will run on http://localhost:5000


πŸ“Έ Screenshots

Home Page Upload Page Video Player

🌩️ Cloudinary Integration

Videos are uploaded and streamed using Cloudinary. Make sure to:

  1. Create an account on Cloudinary
  2. Get your Cloud Name, API Key, and API Secret
  3. Add them to the .env file in the backend.

πŸ“š Future Improvements

  • πŸ” Authentication with JWT
  • ❀️ Like, comment, or save videos
  • 🧠 AI-generated thumbnails
  • πŸ“Š Admin dashboard for video analytics

🀝 Contributing

Contributions are welcome! Please open issues or submit a pull request if you'd like to improve this project.


πŸ“„ License

This project is licensed under the MIT License.


πŸ’¬ Contact

Made with ❀️ by itsmesaadali
πŸ“§ Email: itmesaad@gmail.com

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published