Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/mesbol6647/be-07-hotel-api-

This project offers streamlined access to a vast network of global accommodations, enabling real-time booking and detailed information retrieval. Ideal for enhancing travel platforms and booking systems, it simplifies integration and boosts operational efficiency.
https://github.com/mesbol6647/be-07-hotel-api-

multer node-js nodemailer-smtp-transport password-manager swagger-ui token

Last synced: 9 days ago
JSON representation

This project offers streamlined access to a vast network of global accommodations, enabling real-time booking and detailed information retrieval. Ideal for enhancing travel platforms and booking systems, it simplifies integration and boosts operational efficiency.

Awesome Lists containing this project

README

        

BE-07 Project(HOTEL-API)
Image Example
Image Example
Image Example


Technologies
Getting Started
Collaborators
Contribute


Description

Booking Hotel Room Project

Customers;

-can select start and end date and see the list of available rooms on selected dates.

-can not reserve rooms which are reserved by other customers on selected time period.

-can choose a room on the list and reserve that room, but can not reserve more than one room on a selected time period,

-can see the list of their reservations including past ones.

-can list, create, read their reservations.

-can not update, delete reservations.


Admins;

-can make CRUD operations on Room table,

-can make CRUD operations on Customer (User) table,

-can make CRUD operations on Reservation table,

-It can be createdId and updatedId in Room model.

There will be searching, sorting and pagination capabilities on list views.

💻 Features

- $or :Allows users to query the database to find documents that match any of the specified conditions.
- $nor:Enables querying the database to find documents that do not match any of the specified conditions.
- $nin:Provides the ability to query the database to find documents where a specified field's value is not in a given array of values.
- distinct:Retrieves distinct values for a specified field across a single collection.
- Custom Filter:Allows users to define and apply custom filtering logic to query the database based on specific criteria. This feature enables complex and flexible data retrieval by combining multiple conditions and logical operators.
- Populate:Mongoose method used to replace a path in a document with actual documents from other collections. It's commonly used to reference related documents.

🎨 Layout


Image Example

💻 Technologies

- Node.js
- Express.js
- MongoDB
- Mongoose
- Token
- Filter Search Sorting Pagination
- Sync
- Multer
- Morgan

🚀 Getting started

Here you describe how to run your project locally

Cloning

How to clone your project

```bash
git clone https://github.com/mesbol6647/BE-07-HOTEL-API-.git
```

Starting

How to start your project

```bash
cd project-name
npm some-command-to-run
```

🤝 Collaborators

Special thank you for all people that contributed for this project.




Mesut Bolat Profile Picture


Mesut Bolat



📫 Contribute

Here you will explain how other developers can contribute to your project. For example, explaining how can create their branches, which patterns to follow and how to open an pull request

1. `git clone https://github.com/mesbol6647/BE-07-HOTEL-API-.git`
2. `git checkout -b feature/NAME`
3. Follow commit patterns
4. Open a Pull Request explaining the problem solved or feature made, if exists, append screenshot of visual modifications and wait for the review!

Documentations that might help

[📝 How to create a Pull Request](https://www.atlassian.com/br/git/tutorials/making-a-pull-request)

[💾 Commit pattern](https://gist.github.com/joshbuchea/6f47e86d2510bce28f8e7f42ae84c716)