🎬 EnterCinema [Vue.js - Django Rest Framework]

🎬 EnterCinema [Vue.js - Django Rest Framework]

A sophisticated media discovery platform built with Vue.js frontend and Django Rest Framework backend that transforms entertainment choices. It features AI-driven search and recommendations, comprehensive user profiles, advanced filtering options, and seamless integration with multiple streaming providers.



  • Python Backend Integration: EnterCinema integrates a backend from Django Rest Framework for user registration and authentication, ensuring enhanced security and access control through the Django Admin Panel. The authentication system now supports both traditional DRF-based authentication and Google OAuth, allowing users to sign in with their Google accounts.
Guide GIF
  • Comprehensive User Profile Management: Users enjoy complete control over their profiles, with the ability to save favorite movies and TV series, personalize their entertainment preferences, and conveniently access account settings. The addition of a user profile menu on both the main and profile pages further enhances user interaction, providing easy access to authentication and account customization options, including avatar changes.
Guide GIF
  • Advanced Search Filters: Implemented advanced search functionality by year, genre, and rating. This enhancement allows users to filter search queries more precisely, making it easier to find exactly what they are looking for.
Guide GIF
  • “Ask AI” Assistant: Integrated chatbot that handles natural language queries about film and television, allowing complex questions and providing personalized content recommendations based on user preferences.
AI Assistant
  • Daily Prompt Feature: A rotating daily question about cinema that encourages interaction and content discovery. The system selects from predefined questions based on the date, inviting users to explore new aspects of film.

  • Comprehensive Rating System: Users can now rate and review items directly from their watchlist through a dynamic modal without leaving the page. A centralized rated items modal with tabs for different content types allows easy management of all ratings.

Rating System
  • Enhanced Search Relevance: Advanced AI-powered typo detection that analyzes queries to identify whether the user is searching for a person, film, or series, prioritizing results with a sophisticated relevance algorithm.

  • ‘Releases Timeline’ Page: Formerly “Upcoming Releases”, this revamped section features a new carousel display with an expanded 180-day view of future releases. For authenticated users, the content is personalized according to their preferences, ensuring they receive updates tailored to their interests.

Releases Timeline

Effortless Social Media Sharing:

EnterCinema empowers users to share their favorite movies and TV series effortlessly across various social media platforms.

Guide GIF

Community-driven User Reviews:

Users can explore insightful reviews for specific movies and TV shows, providing valuable feedback from fellow users.

Guide GIF

Extensive Provider Options:

With multiple provider options available for each movie and TV show, users can know about the streaming platforms where they can access specific content (Apple TV+, Disney+, Hulu, Max, Netflix, Prime Video, etc.)

Guide GIF

Discover by Categories:

Introducing intuitive carousels for different movie and TV series categories, EnterCinema elevates the browsing experience and simplifies content discovery for users.

Guide PNG

Latest Update: Version 1.6.10 (April 2025)

  • Ask AI Integration: Added an intelligent chatbot assistant modal for natural language queries about film and TV content.

  • Daily Prompt Feature: Implemented rotating daily cinema questions to encourage content discovery.

  • Rating System Overhaul: Introduced comprehensive rating functionality with direct evaluation from watchlist and centralized management.

  • Search Relevance Algorithm: Rebuilt search system with AI-powered main entity detection for improved result relevance.

  • Advanced Watchlist Filtering: Added comprehensive filtering/sorting mechanism for the Watchlist with persistent preferences.

  • Hybrid Recommendation System: Implemented an AI-API recommendation system that analyzes user patterns and explains recommendations.

  • Stremio Integration: Added direct streaming access through Stremio platform integration.

  • Google OAuth Authentication: Users can now sign in using their Google accounts alongside the existing authentication system.

  • Enhanced Search with Watch Providers: Added ability to filter TV shows by streaming service (Apple TV+, Disney+, Hulu, Max, Netflix, Prime Video).

  • Releases Timeline: Revamped the former “Upcoming Releases” section with an improved carousel and 180-day view.

Installation

Vue.js Frontend:

To run this project locally, follow these steps:

  1. Clone the repository to your local machine:
git clone https://github.com/imprvhub/entercinema.git
  1. Install the necessary dependencies:
yarn install
  1. Before running the project, you need to set up your environment variables in a .env file. Here’s how:
FRONTEND_URL=<Specify the URL where your frontend will be hosted, e.g., 'https://localhost:3000' or your custom domain.>
API_KEY=<Provide your TMDB API key here>
SUPABASE_URL=<Enter the URL for your database, e.g., your Supabase database URL>
SUPABASE_ANON_KEY=<Enter the anonymous key for your database, e.g., your Supabase anonymous key>    

By default, EnterCinema is configured to work with Supabase as the backend DRF database. However, you can use another database if needed. Simply replace DATABASE_URL and DATABASE_ANON_KEY with the appropriate values based on your database configuration.

  1. Run the project:
yarn dev

The project should be accesible at, e.g., ‘http://localhost:3000


Django Rest Framework Backend:

To set up the Django Rest Framework backend for EnterCinema, follow these steps:

Prerequisites:

Python 3.9

  1. Clone the backend repository to your local machine:
git clone https://github.com/imprvhub/entercinema-drf.git
  1. Install Dependencies: Navigate to the project directory and install the necessary dependencies using pip:
cd entercinema-drf
pip install -r requirements.txt
  1. Set Up Environment Variables. Create a .env file in the project directory and define the following variables:
DB_NAME=<Enter your database name>
DB_USER=<Enter your database username>
DB_PASSWORD=<Enter your database password>
DB_HOST=<Enter your database host, e.g., localhost>
DB_PORT=<Enter your database port>
  1. Apply Migrations:
python manage.py collectstatic
  1. Collect static files for deployment:
python manage.py collectstatic
  1. Run the server:
python manage.py runserver

Feedback:

Your feedback is valuable! If you encounter any issues or have suggestions for improvements, please create a new issue in the GitHub repository.


Share :

Related Projects



✨ AnalyzeMyDream [Astro.js - FastAPI]

✨ AnalyzeMyDream [Astro.js - FastAPI]

AnalyzeMyDream is an innovative platform built using Astro.js, offering AI-powered dream interpretation to help users gain deeper insights into their dreams. The platform integrates seamlessly with FastAPI, Flask, and advanced AI models, providing quick and detailed analyses. Subscription-based plan

Read More



Bolted - [Astro.js - Python - React.js]

Bolted - [Astro.js - Python - React.js]

Bolted is a modern URL shortening service built with FastAPI and Astro.js. It features a React-powered frontend for seamless user interaction and PostgreSQL for robust data persistence.

Read More



🦑 GitSet.dev [Astro.js - Python - React.js - AI - Node.js]

🦑 GitSet.dev [Astro.js - Python - React.js - AI - Node.js]

GitSet.dev is a comprehensive suite of AI-driven tools that enhances your GitHub development experience. It provides solutions for streamlined repository management, precise versioning, and clear documentation. Built with Astro.js/React.js, and in

Read More