Vistora is a full-stack video summarization web application that allows users to upload videos, processes them using an ML pipeline, and displays summarized insights.
├── frontend/ # React app for UI
├── server/ # Express.js backend for API & auth
├── ml-pipeline/ # Python-based video summarization logic
├── .gitignore
└── README.md
- 🔐 User authentication (Login/Register)
- ⬆️ Video upload with preview & removal
- 🤖 ML pipeline for video highlight/summarization
- 📝 Summarized text display (based on model output)
- 📊 Placeholder for analytics dashboard (coming soon)
- 📱 Responsive & clean UI (modular with header/footer layout)
- React + Vite
- Axios
- React Router
- Tailwind CSS or Custom CSS (with violet theme)
- Node.js + Express
- JWT Authentication
- Multer (video file handling)
- MongoDB (user & video metadata)
- Python
- OpenCV, ffmpeg, Librosa, PyTorch/TensorFlow (for models)
- Pretrained models for highlight extraction
git clone https://github.com/yourusername/vistora.git
cd vistora
cd server
npm install
# Add your MongoDB URI and JWT secret to .env
npm start
cd ../frontend
npm install
npm run dev
cd ../ml-pipeline
python -m venv venv
source venv/bin/activate # or venv\Scripts\activate on Windows
pip install -r requirements.txt
# Run your processing script or setup Flask/FastAPI if it's exposed via API
Create .env files in relevant folders:
/server/.env
MONGO_URI=your_mongo_connection_string
JWT_SECRET=your_jwt_secret
PORT=5000
This project is licensed under the MIT License. See the LICENSE file for details. Let me know if you'd like to auto-generate badges, add screenshots, or support Docker.