CineTrack is a modern web application for tracking your movies and TV shows watching experience. Built with Django and styled with a Netflix-inspired design, it offers a comprehensive solution for managing your watchlist and analyzing your viewing habits.
- Add movies and TV shows to your watchlist
- Mark items as "Currently Watching" or "Completed"
- Rate completed items on a 5-star scale
- Search for movies and TV shows using TMDB's extensive database
- Interactive charts and visualizations powered by Chart.js
- Genre distribution analysis (pie/bar charts)
- Monthly watch time tracking (line chart)
- Movies vs TV Shows split (doughnut chart)
- Completion rate statistics
- Top 5 rated titles
- Watch streak tracking
- Backlog analysis (added vs completed items)
- Personalized user profiles
- Watch statistics (total watched, average rating)
- Auto-generated favorite genres
- Watch persona (e.g., "Cinephile", "Movie Buff")
- Movies vs Shows count
- Watch streaks tracking
- Profile customization options
Personal watchlist with movie/show cards
Interactive analytics dashboard with various charts and statistics
User profile showing watch statistics and favorite genres
- Backend: Django 5.1.2
- Database: PostgreSQL
- Frontend:
- HTML/CSS/JavaScript
- Bootstrap 5
- Chart.js for visualizations
- APIs: TMDB (The Movie Database) API
- Authentication: django-allauth
- Clone the repository:
git clone https://github.com/yourusername/cinetrack.git
cd cinetrack
- Create and activate a virtual environment:
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
- Install dependencies:
pip install -r requirements.txt
- Set up environment variables in
.env
:
DEBUG=True
SECRET_KEY=your-secret-key
DATABASE_URL=your-database-url
TMDB_API_KEY=your-tmdb-api-key
- Run migrations:
python manage.py migrate
- (Optional) Seed the database with sample data:
python manage.py seed_watchlist 50 # Creates 50 watchlist entries
- Run the development server:
python manage.py runserver
Variable | Description |
---|---|
DEBUG |
Debug mode (True/False) |
SECRET_KEY |
Django secret key |
DATABASE_URL |
Database connection URL |
TMDB_API_KEY |
TMDB API access token |
- Register a new account or login
- Search for movies/shows using the search bar
- Add items to your watchlist
- Mark items as "Currently Watching" or "Completed"
- Rate completed items
- Visit your profile to see your statistics
- Check the analytics dashboard for detailed insights
- Fork the repository
- Create a new branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'Add amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.