This project is a full-stack web application for managing a movie watchlist, built using Java, Spring Boot, MongoDB, React.js, and Node.js. It enables users to create accounts, sign in, view and manage their personal watchlists, and add reviews to movies.
User registration and authentication with JWT CRUD operations for managing movies in a watchlist Ability to add reviews to movies Secure API endpoints with JWT authentication User-friendly React.js frontend interface
Java Development Kit (JDK) Spring Boot MongoDB (or other preferred database) MongoDB Java Driver
React.js Node.js and npm
/signup
: Register a new user
/login
: Log in a user and obtain a JWT token
/logout
: Log out a user
/movies
: Get a list of all movies
/watchlist
: Get a user's watchlist (requires JWT)
/watchlist/add
: Add a movie to a user's watchlist (requires JWT)
/watchlist/remove
: Remove a movie from a user's watchlist (requires JWT)
/reviews/add
: Add a review to a movie (requires JWT)
git clone https://github.com/your-username/your-project-name.git
Backend:
cd backend
mvn clean install
Frontend:
cd frontend
npm install
Configure database connection in backend/src/main/resources/application.properties Start the backend server:
cd backend
mvn spring-boot:run
Start the frontend server:
cd frontend
npm start
Access the application in your web browser, typically at http://localhost:3000 Sign up or log in to create or access your watchlist Manage your watchlist by adding, removing, and reviewing movies
This project is licensed under the MIT License. See the LICENSE file for details.