Welcome to the Netflix Clone project! This project is built with Tailwind CSS, React, Redux toolkit, and Firebase, integrating TMDB API for fetching movie and TV show data and OpenAI API for personalized recommendations.
- Project Demo
- Project Features
These libraries form the backbone of the application, providing essential functionality and structure.
- React - JavaScript library for building user interfaces with reusable components and to create single page applications (SPAs)
- React Router - A library for managing navigation and routing in React applications
- Redux - A predictable state container for JavaScript apps.
- Redux Toolkit - A library for efficient Redux state management with simplified configuration
- Firebase - Google's platform for app development with tools for database, authentication, and hosting
These packages enhance the user interface and user experience of the application.
- Tailwind CSS - A utility-first framework for rapid custom design using predefined classes
- React Icons - Icons for React applications.
- React Multi Carousel - Carousel component for React applications.
- React Show More Text - Component for collapsing/expanding long blocks of text.
- React Spinners - A collection of loading spinner components for React.
- Description: Used TMDB (The Movie Database) API to fetch movie and TV show data for the Netflix clone app.
- Documentation: TMDB API Documentation
- Description: Integrated OpenAI API to provide personalized movie recommendations based on user searches.
- Documentation: OpenAI API Documentation
To get started with this project, follow these steps:
- Clone the repository.
- Install dependencies using
npm install
. - Configure Firebase and OpenAI credentials.
- Start the development server using
npm run dev
.
- File an issue to notify about what you're working on (Optional, Mandatory only when working on big changes).
- Fork the repo, develop, and make code changes.
- Make sure that your commit messages clearly describe the changes.
- Send a pull request.
Want to submit an issue to this project?