Welcome to the Movie App! This web application allows users to explore and manage their movie watchlist. It includes features such as user authentication, movie listing, and the ability to add movies to a watchlist.
- The application has been deployed successfully. You can access the live version at
- Deployed Frontend Link
- Deployed Backend(Server) Link
-
Backend:
- Node.js
- Express
- MongoDB
- Cors (Cross-Origin Resource Sharing)
- Jsonwebtoken for authentication
- Bcrypt for password hashing
-
Frontend:
- React.js
-
User Authentication:
- Users can sign up and log in securely.
- Authentication is implemented using Jsonwebtoken for token-based security.
-
Movie Listing:
- Retrieve a list of available movies.
-
Watchlist Management:
- Users can add movies to their watchlist.
- Clone the repository:
git clone https://github.com/your-username/movie-app.git cd movie-app
- Install backend dependencies
cd Backend npm install
- Install frontend dependencies
cd ../Frontend/react-movie-app npm install
- Access the application by navigating to http://localhost:3000 in your web browser.
-
POST /users/register
- Registers a new user.
- Payload:
{username, email, password}
.
-
POST /users/login
- Logs in an existing user.
- Payload:
{email, password}
.
-
GET /users
- Retrieves all users.
-
GET /users/:userID
- Retrieves a single user by their ID.
-
PUT /users/:userID
- Updates a user's information.
- Payload:
{field to be updated}
.
-
DELETE /users/:userID
- Deletes a user by their ID.
-
POST /users/:userID/watchlist
- Adds a movie to user's watchlist.
- Payload:
{movieId}
.
-
DELETE /users/:userID/watchlist
- Removes a movie from a user's watchlist.
- Payload:
{movieId}
.
-
POST /movies
- Creates a new movie.
- Payload:
{title, duration, description, poster_image, genre, release_year,release_date,director,rating}
.
-
GET /movies
- Retrieves all movies.
-
GET /movies/:movieId
- Retrieves a single movie by its ID.
-
PUT /movies/:movieId
- Updates a movie's information.
- Payload:
{field to be updated}
.
-
DELETE /movies/:movieId
- Deletes a movie by its ID.