This web application is built to enable users browser through different houses which they can reserve on choice basis. The users can add their own houses to let other users reserve that for extra income. Users can register an account to use the website with full access with a unique username.
MIT License
This web application is built to enable users browser through different houses which they can reserve on choice basis. The users can add their own houses to let other users reserve that for extra income. Users can register an account to use the website with full access with a unique username. The whole application is built in two major parts. The Earthbnb_backend holds code for the API backend that returns and handles the database on API request from the frontend of this website. The database working behind the screen is a relational database developed with PostgreSQL
. The Earthbnb_frontend contains the user interface of the website where the users can interact with the database. The backend of the website is created with Ruby on Rails API
and the frontend is created with ReactJS
and Redux
.
Key features of the application.
/houses
and /houses/:id
are available publicly whereas API endpoints /reservations
and /reservations/:username
is private only to registered and logged in users.rswag
here.Live demo is available here.
N.B: The backend API is not available due to the restriction on the free account on Render for hosting PostgreSQl databases. As a result new account registration and viewing of the inner UI is not available in the live demo. Take a look at the UI images below.
To clone the repository in local environment try following steps.
You can check if Git is installed by running the following command in the terminal.
$ git --version
Likewise for Ruby
and gem
for package installation.
$ ruby --version && gem --version
Note: This project is built with Ruby
version 3.1.3
Clone the repository using this link.
In the terminal, go to your file directory and run this command.
$ git clone https://github.com/PrangonGhose/Earthbnb_backend
In the terminal, run these commands to get into development.
$ cd Earthbnb_backend
$ bundle init
$ bundle install (install dependencies)
Note: You might need to update database.yml for development and testing environments with necessary username and password for your database in their respective positions. Also make sure to comment out pidfile and workers at config/puma.rb to run the server without error.
$ rails db:create
$ rails db:migrate
$ rails db:seed
$ rails server
This website is applicable for both mobile and desktop version.
$ rails db:create RAILS_ENV=test
$ rails db:migrate RAILS_ENV=test
$ rails rswag
The Kanban Board made for this project can be found here. The initial state of the Kanban Board can be found here. There are four members in our team. Their details can be found in the authors section.
Prangon Ghose
Shinhyo Belliard
Glenda Diaz
Victor Gonzalez
Contributions, issues, and feature requests are welcome! Add suggestions by opening new issues.
Feel free to check the issues page.
Give a if you like this project!
Authors would like to thank:
This project is MIT licensed.