This project is a Netflix clone built using the MERN (MongoDB, Express.js, React.js, Node.js) stack. It provides movie trailers based on categories fetched from the TMDB movies database using APIs, with a user authentication system. Users can add movie trailers to their watchlist to watch later and search between these trailers.
- View movie trailers based on categories (blockbuster, horror, trending, etc.)
- User authentication system (signup, login, logout)
- Add movie trailers to watchlist
- Search for movie trailers
- MongoDB: Database to store movie and user information
- Express.js: Web framework for Node.js to handle API requests
- React.js: Frontend library for building user interfaces
- Node.js: JavaScript runtime environment for server-side logic
- TMDB API: To fetch movie information and trailers
-
Clone the repository:
git clone https://github.com/usama739/Netflix-clone.git cd Netflix-clone
-
Install server dependencies:
cd netflix-backend npm install
-
Install client dependencies:
cd ../netflix-ui npm install
- Create a
.env
file in thenetflix-ui
directory and add your TMDB API key:REACT_APP_TMDB_API_KEY=your_tmdb_api_key_here
-
Start the backend server:
cd netflix-backend nodemon server.js
-
Start the frontend server:
cd ../netflix-ui npm start
-
Open your browser and navigate to
http://localhost:3000
.
- Sign up for an account or log in if you already have one.
- Browse movie categories and click on a movie to watch its trailer.
- Use the search bar to search for specific movies.
- Click on the 'Add to Watchlist' button to add a movie to your watchlist.