Movie Ticket Booking API

Welcome to the backend API repository for the Movie Ticket Booking System. This API is built using Express.js and Node.js, with MongoDB as the database. It provides functionality for user authentication using JWT tokens, including refresh token logic. Additionally, it offers authorization features such as restricting certain actions to admin users only, like creating movies or changing movie statuses.

Features

  • Authentication: Utilizes JWT tokens for user authentication with refresh token logic.
  • Authorization: Implements role-based authorization, allowing only admin users to perform certain actions.
  • Image Upload: Supports image uploads to Cloudinary using Multer for movie-related content.
  • Forgot Password: Implements a mail system for the forgot password logic, allowing users to reset their passwords via email.
  • Movie Management: Provides functionality for managing movies, including creation, modification, and status changes.
  • Cinema Company and Venue Management: Supports multiple cinema companies and their respective venues, allowing users to book movies at specific venues.
  • Seat Reservation: Allows admin users to insert seats for specific dates and movies, enabling users to book seats for their chosen movies.
Expressjs
Nodejs
Mongodb