Skip to content

This is the backend service for Shelter - A property management app that connects room hunters to apartments and rooms around them. Built with MERN technologies

License

Notifications You must be signed in to change notification settings

prince-appiah/room-finder-api

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

room-finder-api

API Hosted On

Frontend Hosted On

📔 Table of Contents

🌟 About the Project

screenshot

👾 Tech Stack

Client
Server
Database
DevOps

🎯 Features

  • Property listing - by hosts and admin (on behalf of hosts)
  • Property booking - by customers
  • Approval and Decline of properties uploaded by hosts

📖 API Endpoints

API is currently hosted on shelter-api.cyclic.app

Base Url - {API_URL}/api/v1

Authentication

  • POST /signup
  • POST /otp
  • POST /login
  • POST /logout

Admin

  • GET /dashboard-reports
  • POST /users
  • PATCH /users/:user_id
  • DELETE /users/:user_id
  • GET /users
  • GET /bookings
  • GET /property
  • GET /property/:id
  • PATCH /property/:id
  • DELETE /property/:id
  • POST /property
  • POST /approve
  • GET /hosts
  • GET /hosts/:id
  • PATCH /hosts/:id
  • DELETE /hosts/:id
  • GET /room-types
  • POST /room-types
  • GET /room-types/:id
  • PATCH /room-types/:id
  • DELETE /room-types/:id
  • GET /amenities
  • GET /amenities/:id
  • PATCH /amenities/:id
  • DELETE /amenities/:id
  • POST /amenities

Customers

  • GET /customer-bookings
  • GET /customer-bookings/:property_id
  • PATCH /customer-bookings/:property_id
  • GET /property
  • GET /property/:id
  • GET /room-types
  • GET /room-types/:id
  • GET /amenities
  • GET /amenities/:id

Hosts

  • GET /property
  • GET /property/:id
  • GET /room-types
  • GET /room-types/:id
  • GET /amenities
  • GET /amenities/:id

🧰 Getting Started

‼️ Prerequisites

This project uses Yarn as package manager

 npm install --global yarn

🔑 Environment Variables

To run this project, you will need to add the following environment variables to your .env file

CLOUDINARY_API_SECRET

CLOUDINARY_API_KEY

CLOUDINARY_CLOUD_NAME

MAILGUN_DOMAIN

MAILGUN_API_KEY

DB_CLUSTER

DB_NAME

DB_PASSWORD

DB_USER

AUTH_PASSWORD

AUTH_EMAIL

JWT_EXPIRY_TIME

JWT_SECRET

DSN

PORT

HOST

NODE_ENV

🏃 Run Locally

Clone the project

  git clone https://github.com/prince-appiah/room-finder-api.git

Go to the project directory

  cd room-finder-api

Install dependencies

  yarn

Start the server

  yarn dev

🧭 Roadmap

  • Verify hosts through ID Verification
  • Rate properties - by customers

👋 Contributing

Contributions are always welcome!

See contributing.md for ways to get started.

📜 Code of Conduct

Please read the Code of Conduct

⚠️ License

Distributed under the no License. See LICENSE.txt for more information.

🤝 Contact

💖Like my work?

This project needs a ⭐️ from you. Don't forget to leave a star ⭐️.

About

This is the backend service for Shelter - A property management app that connects room hunters to apartments and rooms around them. Built with MERN technologies

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages