Netflix-Gemini

Stream, discover, and enjoy personalized content with Netflix-Gemini.

About the Project

Netflix-Gemini offers users an intuitive interface to stream, discover, and manage personalized content. It features user authentication, tailored recommendations, and a responsive design for an enhanced viewing experience.

Features

  • Movie Search with Gemini: Integrated Gemini for advanced movie search functionality, enabling users to easily find movies based on specific genres, ratings, and descriptions with AI-powered suggestions.
  • Why You Should Watch: Leveraged Gemini to generate personalized "Why You Should Watch" suggestions with five key points, providing users with insightful recommendations based on movie details, audience ratings, and trends.
  • Responsive UI with Tailwind: Created a fully responsive and modern user interface using Tailwind CSS, ensuring a seamless experience across all devices including desktop, tablet, and mobile.
  • Firebase Authentication: Integrated Firebase for secure user authentication, allowing easy registration, login, and account management with email/password or Google sign-in options.

Tackled Challenges

  • Challenge:

    Implementing secure routing to ensure that users are logged in before accessing restricted routes.

    Solution:

    Applied safe routing techniques, using Firebase authentication to block access to certain routes until the user is logged in, ensuring secure and smooth navigation.

  • Challenge:

    Fetching valid movie suggestions using Gemini's AI-powered recommendations.

    Solution:

    Integrated Gemini to fetch valid movie suggestions based on user preferences, genres, and viewing history, ensuring personalized recommendations.

  • Challenge:

    Displaying similar movies based on the genre of the currently playing movie.

    Solution:

    Developed a recommendation engine using Gemini to suggest similar movies based on genre, allowing users to explore related content effortlessly.

  • Challenge:

    Managing application state and synchronizing data across the platform.

    Solution:

    Implemented a centralized state management system using Redux to efficiently manage and persist user data, movie preferences, and watch history across the app.

Technologies Used

JavaScript
React
Redux Tool-kit
Tailwind
Firebase
React Router DOM