Skip to content

Latest commit

 

History

History
97 lines (59 loc) · 2.8 KB

README.md

File metadata and controls

97 lines (59 loc) · 2.8 KB

nmovies - A simple movie recommendation website

A simple movie recommendation website built using React in the frontend and Express in the backend.

nmovies

📋 Table of Contents

  1. 🤖 Introduction
  2. 🚀 Demo
  3. ⚙️ Tech Stack
  4. 🔋 Features
  5. 🤸 Quick Start

🤖 Introduction

The website allows users to search for movies and TV shows, get recommendations, and read reviews. Users can also create an account, log in, and save their favorite movies and TV shows.

This project was inspired by the React Pro course, created by Holetex and MoonFlix - Fullstack Responsive Movie Website 2022 tutorial, created by Tuat Tran Anh.

The backend is built using Express, MongoDB, JWT for authentication, sending emails by Mailgun and deployed on Heroku. You can find the repository here.

🚀 Demo

Check out the live demo.

⚙️ Tech Stack

  • React
  • TypeScript
  • shadcn/ui
  • TanStack Query
  • zustand
  • Zod

🔋 Features

  • User authentication: Register, send verification email, login, forgot password, reset password, refresh token.

  • User profile: Update user information, change password, delete account.

  • Movies: Get movies, search movies, get movie details, get recommended movies.

  • TV Shows: Get TV shows, search TV shows, get TV show details, get recommended TV shows.

  • Reviews: Get reviews for a movie or TV show with pagination, create a review, get user reviews with pagination, delete a review.

  • Favorites: Add a movie or TV show to favorites, get user favorites, remove a movie or TV show from favorites.

  • Responsive Design: Fully optimized for a seamless experience on desktops, tablets, and mobile devices.

  • High Performance: Fast loading and smooth interactions for an efficient user experience.

and many more, including code architecture and reusability

🤸 Quick Start

Follow these steps to set up the project locally on your machine.

Clone the repository

git clone https://github.com/nboraxxd/nmovies-client.git
cd nmovies-client

Installations

Install the dependencies using npm:

npm install

Environment Variables

Create a new file named .env in the root of your project and add the following content:

VITE_SERVER_API=
VITE_CLIENT_URL=

Runnning the project

npm run dev

Open http://localhost:5173 to view it in your browser.