Website where users can list or rent spaces.
Technologies | |
---|---|
Front End | HTML, CSS, Bootstrap, ERB |
Back End | Ruby, Sinatra, PostgreSQL |
Testing | Capybara, RSpec |
- Visit the MakersBnB website.
- Curious to see what's on MakersBnB before signing up? Check out the inventory of listings with the link below the sign up form.
- To make a booking request, or list your own space, sign up!
- For the best user experience, use MakersBnB in Chrome, Firefox or Edge!
- Connect to
psql
in the command line. - Create the database using the command
CREATE DATABASE "makers_bnb";
. - Connect to the newly created database using
\c makers_bnb
. - Run the queries saved in the files in
db/migrations
to set up the appropriate tables. - To set up the test database, repeat steps 2 and 3 in
psql
withmakers_bnb_test
.
- Ensure the database is set up using the Setting Up The Database instructions above.
- Run
rackup
in the command line. - Go to
localhost:9292
in Google Chrome or Mozilla Firefox.
- Ensure the test database is set up using the Setting Up The Database instructions above.
- Ensure you are in the project root on the command line.
- Run
rspec
in the command line.
As a user
so that I can see all/list properties
I would like to be able to sign up for Makers BNB
As a user
so that I can find a property,
I would like to be able to see a list of all properties I can book
As a user,
so that I can list a property,
I would like to be able to become a 'host'
As a user,
so that I can have a place to stay,
I would like to be able book a property
As a user,
so that I can confirm my booking,
I would like to receive a confirmation from the host
As a host,
so that I can manage all my properties,
I would like to be able to add multiple properties
As a host,
so a user can book my space,
I would like to provide details about my space(description, price, location)
As a host,
so that users can book my property,
I would like to be able to approve the request
As a team, we felt that in order to execute on the project efficiently, we needed a solid idea of what our vision for the project was. How would we go about building MakersBnB? What would the database architecture look like? What pages did we need in order to meet the criteria in the user stories? Without having all of these questions - and many, many more - answered and agreed upon before we started to implement, our individual efforts may diverge quickly.
As such, we spent the whole of Monday and part of Tuesday planning and diagramming the backend of the project. We felt it was important to keep things as simple as possible while ensuring that we met the specifications in the user stories. We kept our solution down to 3 classes and 3 database tables.
Initial CRC Cards displaying all tables of the makers_bnb database Initial Class Diagram created during the planning session, containing all three classes used. Flowchart representing the initial planning for a simple workflow of a host Flowchart representing the initial planning for a simple workflow of a guest RSpec test suite (including coverage)