A full-stack web application for browsing, favoriting, and tracking exercises. Users can log workouts, view exercise details, and fetch related YouTube videos using the YouTube Data API.
Frontend: exercise-catalog.vercel.app
Backend: exercise-catalog.onrender.com
- React with Vite for fast development
- Tailwind CSS for utility-first styling
- Framer Motion for smooth animations
- React Router for page navigation
- React Icons and Headless UI for interactive components
- Recharts for data visualization
- Axios for API requests
- Flask (Python) REST API
- Flask-CORS for handling cross-origin requests
- Flask-Login for user authentication
- Flask-SQLAlchemy as ORM with SQLite
- YouTube Data API for related exercise videos
- dotenv for managing API keys and environment configs
- SQLite for development and prototyping
- Designed to support migration to PostgreSQL or other SQL backends
- 🔍 Browse 1000+ exercises across various muscle groups
- ❤️ Favorite exercises and view them in a dedicated page
- 📈 Track workouts and visualize weekly history
- 📺 Auto-fetch YouTube videos based on exercise name
- 🎨 Clean UI with mobile responsiveness and animations
- Add persistent user accounts via Supabase or Firebase Auth
- Improve search ranking with semantic matching
- Workout plan builder
- AI-based recommendations
# Frontend
cd frontend
npm install
npm run dev
# Backend
cd backend
pip install -r requirements.txt
flask runEnsure you have a .env file in the backend folder with:
YOUTUBE_API_KEY=your_key_here