- Segmented Video Streaming: Streams videos in segments, similar to real-world applications ☑️.
- Video Upload: Upload any video with thumbnails ☑️.
- Thumbnail Display: View videos with custom thumbnails ☑️.
- High-quality video playback: Supports HD and 4K streaming ☑️.
- Multi-device Support: Responsive design for both desktop and mobile. ☑️.
- Channels: Not Implemented ❌.
- Search & Discovery: Not Implemented ❌.
- Playlists: Not Implemented ❌.
- Comments & Ratings: Not Implemented ❌.
-
Frontend: React, Vite, Tailwind CSS, flowbite, react-toastify, video.js
-
Backend: Spring Boot, JPA, Rest API
-
Database: H2 Database
-
Video Processing: FFMPEG
- JDK (version >= 21)
java -version
- Node.js and npm
node -v
npm -v
- FFMPEG
- Official site
- Download & Installation guide - https://www.geeksforgeeks.org/how-to-install-ffmpeg-on-windows/
ffmpeg -version
- IDEs:
- Spring Boot: IntelliJ IDEA, Eclipse, or Visual Studio Code with Java extensions.
- React: Visual Studio Code or any other code editor.
git clone https://github.com/manojnanjundaswamy/video-streaming-app.git
cd stream-front-end
npm install
npm run dev
mvn clean
mvn spring-boot:run
- Spring-boot app will be running in http://localhost:8080
Visit http://localhost:5173 in your browser.
Contributions are what make the open-source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
LinkedIn - ManojNanjundaswamy
Mail - manojnanjundaswamy@gmail.com
Project Link: https://github.com/manojnanjundaswamy/video-streaming-app