A fully-functional Netflix clone built from scratch using HTML, CSS, JavaScript, and React. This project leverages the TMDB API to provide a vast catalog of movies and series. Responsive design principles ensure a seamless user experience across devices, while YouTube IFrame API integration allows users to preview trailers directly on the platform.
- Dynamic Movie and Series Catalog: Powered by the TMDB API, offering a comprehensive library of titles.
- Trailer Playback: Integrated with YouTube IFrame API to allow users to watch trailers directly.
- Dynamic Routing: Enabled using React Router for smooth navigation.
- Responsive Design: Optimized for various screen sizes to provide an intuitive user interface on desktops, tablets, and smartphones.
- Intuitive UI: Clean and modern layout resembling the Netflix platform.
- Frontend: HTML, CSS, JavaScript, React
- API: TMDB API, YouTube IFrame API
- Routing: React Router
- Design Principles: Responsive Web Design (RWD)
- Clone the repository:
git clone https://github.com/your-username/netflix-clone.git
- Navigate to the project directory:
cd netflix-clone
- Install dependencies:
npm install
- Start the development server:
npm start
- Open your browser and visit:
http://localhost:3000
- Sign up at The Movie Database (TMDB).
- Generate an API key from your TMDB account.
- Create a
.env
file in the root directory and add your TMDB API key:REACT_APP_TMDB_API_KEY=your_api_key
This project enhanced my understanding of:
- Building large-scale web applications with React.
- Integrating third-party APIs (TMDB and YouTube IFrame).
- Implementing dynamic routing using React Router.
- Developing responsive layouts with CSS and modern web design principles.
- Add user authentication for personalized recommendations.
- Enable user profile and watchlist management.
- Implement offline support for mobile devices.
Contributions are welcome! Please follow these steps:
- Fork the repository.
- Create a new branch:
git checkout -b feature/your-feature-name
- Commit your changes:
git commit -m 'Add some feature'
- Push to the branch:
git push origin feature/your-feature-name
- Open a Pull Request.
This project is licensed under the MIT License. See the LICENSE
file for details.
Feel free to reach out if you have any questions or suggestions!