BookIt API is a project developed with ExpressJS, TypeScript, MongoDB,Redis, Typegoose, Swagger, and Docker. It serves as the backend for the BookIt an Hotel Reservation Platform, providing APIs for managing Hotels, Rooms, User Authentication and Payments.
- ExpressJS with TypeScript - Express is a minimal and flexible Node.js web application framework that provides a robust set of features for web and mobile applications.
- MongoDB - MongoDB is a source-available cross-platform document-oriented database program. Classified as a NoSQL database program, MongoDB uses JSON-like documents with optional schemas.
- Redis - Redis is an open source (BSD licensed), in-memory data structure store used as a database, cache, message broker, and streaming engine.
- Cloudinary - Store, transform, optimize, and deliver all your media assets with easy-to-use APIs, widgets, or user interface..
- Typegoose - Define Mongoose models using TypeScript classes.
- Swagger - An open-source toolset for designing, building, and documenting RESTful APIs.
- Docker - A platform for developing, shipping, and running applications using containerization.
- AWS EC2 - Deployement.
-
User authentication and authorization:Allow users to create accounts and log in securely. -
Search Functionality:Enable users to search for hotels based on criteria like location, dates, room type, amenities, etc. -
Room Availability:Display available rooms for specific dates. -
Room Selection:Allow users to choose specific rooms based on preferences. -
Multiple Room Types & Rates:Display various room types (standard, deluxe, suite, etc.) with respective rates. -
Payment Gateway Integration:Secure handling of payments, including credit/debit cards, online transactions, etc. -
Guest Profiles:Maintain profiles with guest details for future bookings. -
Feedback and Review System:Collects guest feedback for improving services. -
Cancellation and Modification:Allow users to cancel or modify their bookings within specified terms and conditions. - Admin user Management
- API documentation with Swagger
- Clone or fork the repository:
https://github.com/codebudy5247/BookIt-APIs.git- Install the dependencies:
npm install- Create a
.envfile in the root directory and provide the necessary environment variables. You can use the.env.examplefile as a template.
- Set up a MongoDB database [atlas || local] and update the database connection details in the
.envfile.
- Start the application:
npm run devThe BookIt API will be running at http://localhost:1337.
See more projects on my profile - @Aditya shekhar