Skip to content

imprvhub/entercinema

Repository files navigation

Welcome to the EnterCinema Project.

Guide GIF

What's New:

ASK AI Chatbot Assistant (Beta)

Introducing our intelligent chatbot assistant that helps users discover content based on their preferences. Users can ask for movie and TV show recommendations using natural language, get information about actors, directors, and much more. The AI assistant provides personalized suggestions and enhances the overall content discovery experience.

Rating Functionality in Watchlist

Users can now rate and review items directly from their watchlist. A dedicated rating modal allows users to easily assign ratings and write reviews without leaving the watchlist page, providing a more streamlined user experience.

Rated Items Modal with Edit Functionality

A new centralized modal displays all rated movies and TV shows with tabs for easy navigation between content types. Users can access this modal from both the Hero section and Watchlist page, and can edit their ratings and reviews directly within the modal.

Revamped Upcoming Releases Section

The "Upcoming Releases" section has been transformed with a new carousel display for improved visual appeal. The date range for upcoming movies has been expanded to 180 days, providing users with a broader view of future releases. Section titles have been updated for clarity: "Upcoming Releases" is now "Releases Timeline" and "Latest Movies" is now "Movie Releases".

Google OAuth Authentication

Users can now sign in using their Google accounts in addition to the existing authentication system. The existing DRF-based authentication remains available as an alternative option.

Stremio Integration for Direct Content Access

Introduced direct streaming access through Stremio platform. Users can now enjoy seamless content viewing via our Stremio integration.

Enhanced Advanced Search with Watch Providers

A new dropdown feature in the advanced search lets users filter TV shows by watch provider (Apple TV+, Disney+, Hulu, Max, Netflix, Prime Video). This option is available only when 'TV Show' is selected.

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 migrate
  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.

Attributions

The foundational inspiration for this project is derived from the TasteJS repository, and I extend my gratitude for their pioneering work.

Data concerning movies and TV shows are sourced from TMDB, while information on streaming providers, networks, and platforms is obtained from JustWatch.

For further details, please refer to these Terms and Conditions.

About

a vue-django rest framework based web app for querying movies and series.

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •  

Languages