. !__________! . _______
/_\ |____ ____| /_\ |__*__|
__|__ {____}{____} __|__ |__*__|
__|_*_|__%%%%%%%%%%%%__|_*_|__|__*__|__
| | %%%%%%%%%%%%%% | | |/ \|
%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%
/||||||||||||||||||||\
||||||||||||||||||||||
This is a clone of AirBnB built using Ruby, Sinatra and PostgreSQL. It was a group project as part of Makers Academy and we named our Website MakersBnB.
It uses:
- [Ruby 3.0.2] As our coding language
- [Sinatra] Our DSL use for writing web apps
- [Capybara] For user testing
- [RSPEC] For unit testing
- [PostgreSQL] Our local database
- [CSS]
- [HTML]
Miro board. Planning, design and MVP
As a user,
So that I can host my property,
I would like to list a space.
As a user,
So that I can go on holiday,
I would like to view a space.
As a user,
So that I can make a booking,
I would like to contact the host.
As a user,
so I can keep track of my listings,
I would like to make an account for MakersBnB.
As a signed-up user,
so I can use the platform,
I would like to log in and log out of MakersBnB.
As a logged-in user,
so I can host my space,
I would like to list a space.
As a user,
so I can keep track of my listings,
I would like my acccount to keep track of multiple spaces.
As a user,
so I can accurately advertise my space,
I would like to add a name to my space.
As a user,
so I can accurately advertise my space,
I would like to provide a short description.
As a user,
so I can accurately advertise my space,
I would like to add a price per night.
As a host,
so I can keep track of availability,
I would like to have a range of dates where my space is unoccupied.
As a guest,
so that I can plan my booking,
I would like to see a range of dates where the space is available.
As a customer,
so I can stay in a BnB,
I would like to request to hire a space for one specific night.
As a host,
so I can confirm the listing,
I would like to approve the request made by the customer.
As a user,
so I don't get double bookings for the same night,
I would like to make approved occupied dates unavailable to book to other guests.
As a host,
So my space is fairly available,
I would like for the space to remain available with multiple requests.
- Start time 10am
- Lunch 1pm - 2pm
- End day 5:30pm
-
Breaks decided amongst pairs.
-
Two pairing slots.
- Stand ups. 10am-10:15am.
- Retro. 5:30pm.
- Fork this repository
- Clone your fork to your local machine
- Type
bundle install
to install dependencies
- Connect to psql
- Create the database using the psql command CREATE DATABASE makers_bnb;
- Connect to the database using the pqsl command \c makers_bnb;
- Run the query we have saved in the file 01_create_property_database.sql
- Type
ruby app.rb
in terminal to run local server - Browse to local address given in terminal