Skip to content

MUSTAFA-Hamzawy/EasyRoom

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation


EasyRoom

EasyRoom is a lightweight gRPC-based service for managing room bookings.
It provides essential functionalities such as listing available rooms, getting room details, booking rooms.

Table Of Contents

Features

  • ListAvailableRooms: Filters the rooms data to return only the rooms that are available.
  • GetRoomDetails: Retrieves the details of a specific room based on the room number provided.
  • AddRoom: Adds a new room based on data of the file "src/add-room.ts".
  • BookRoom: Books a room if it is available.
  • CheckRoomAvailability: Checks if a room is available based on the room number provided.

Built With

  • NodeJS
  • TypeScript
  • grpc-js
  • proto-loader
  • yarn

Getting Started

To get a local copy up and running follow these simple steps.

Prerequisites

  • NodeJS
  • npm or yarn

Installation

Clone the repo

git clone https://github.com/MUSTAFA-Hamzawy/EasyRoom.git

then, Move to the project directory

  1. Install dependecies
npm install
  1. Start Running the server
npm run server
  1. Start Running the clients ( different terminals )
npm run client

Contributing

Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.

  • If you have suggestions for adding or removing projects, feel free to open an issue to discuss it, or
  • Directly create a pull request after you edit the files with necessary changes.

Creating A Pull Request

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

About

A small application for exercising gRPC.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published