This is a Next.js project bootstrapped with create-next-app
.
This is a fully responsive full-stack Netflix application built using Next.js for the frontend and NestJS for the backend. The app mimics Netflix's core features like user authentication, movie listings, favorites, and more.
- Home Page:
- Displays a list of movies and series.
- Each movie card shows a blurred effect on hover with visible movie info and action buttons.
- Authentication:
- Login/Signup Page located at
/auth
. - User registration and login with backend auth services
- Login/Signup Page located at
- Favorites:
- Authenticated users can add movies to their favorites.
- A My List page shows all the user's favorite movies with a minus icon to remove from the list.
- Responsive Design:
- Includes a mobile menu with navigation links to Home, Series, Movies, New & Popular, and My List.
- Responsive footer with a link to the developer's GitHub.
- Authentication:
- Built with NestJS, allowing users to register and login.
- Passwords are hashed for security.
- JSON Web Token (JWT) used for authorization and stored in localStorage on successful login.
- MongoDB Integration:
- MongoDB Atlas is used as the database for managing users and their favorite movies.
- The Mongoose ODM (Object Data Modeling) library is used for defining schemas and interacting with MongoDB.
- OMDb API:
- Fetches movie and series data based on user input or hardcoded requests.
- https://netflix-rust-kappa.vercel.app/
- https://netflix-parvsharmaas-projects.vercel.app/
- https://netflix-git-main-parvsharmaas-projects.vercel.app/
-
Clone the repository
-
Frontend Setup:
- Navigate to the frontend directory, install dependencies then run it locally.
- Access via deployed links.
-
Backend Setup:
- Navigate to the backend directory:
- Install dependencies
- Run the backend server
This project uses MongoDB Atlas as the Database.
- Ensure that both the frontend and backend are running.
- Open the frontend at
http://localhost:3000
. - The backend runs at
http://localhost:8080
.
- POST `/api/auth/register`: Register a new user.
- POST `/api/auth/login`: Login and receive a JWT token and user details.
- Search functionality for movies and series.
- Improved error handling on the backend.
- Profile management for users.
Developed by Parv Sharma 🚀