User Stories - pm24mcgi/Mod6PythonProject Wiki

USERS

Splash Page

Sign Up

As an unregistered user, I want to be able to CREATE an account to sign in in order to interact with the web application.

Acceptance Criteria

  • When I’m on the /signup page:
  • Signup form includes space for email, username, and password.
  • If invalid data is entered the user gets an error message.
  • User is automatically logged in so I can access the site’s functionality.

Demo User

As an unregistered and unauthorized user, I would like an easy to find and clear button on both the /signup and /login pages to allow me to visit the site as a guest without signing up or logging in.

    • When I'm on either the /signup or /login pages:
    • I can click on a Demo User button to log me in and allow me access as a normal user.
    • So that I can test the site's features and functionality without needing to stop and enter credentials.

Log in

As a registered and unauthorized user, I want to be able to log-in to the website via a log-in form.

Acceptance Criteria

When I'm on the /login page:

  • I would like to be able to enter my email and password on a clearly laid out form.
  • I would like the website to log me in upon successful completion of the log-in form.

When I enter invalid data on the log-in form:

  • I would like the website to inform me of the validations I failed to pass, and repopulate the form with my valid entries (except my password).
  • So that I can try again without needing to refill forms I entered valid data into.

Log Out

Acceptance Criteria

As a logged in user, I want to log out via an easy to find log out button on the navigation bar.

While on any page of the site:

  • I can log out of my account and be redirected to the home page.
  • So that I can easily log out to keep my information secure.

Profile Page

As a logged in user, I would like to see my bookings along with their reviews.

Acceptance Criteria

  • A user can create a profile page showing their bookings and reviews
  • A user can edit or delete their profile page

Spots

I would like to be able to see spots that are available for rent in particular areas.

Acceptance Criteria

  • There is a page with spots listed in full.
  • There is a search bar in the navigation bar that allows the user to search spots in certain areas.
  • Spots will show details such as price per night and review rating.
  • Spots can be viewed individually listing all amenities.

Bookings

As a logged in user, I would like to be able to create bookings where I may make my property/properties available for rent.

Acceptance Criteria

  • There is a page that lists all current bookings that belong to the user.
  • User can add a new booking for a spot they would like to stay at.
  • User can edit an existing booking or remove the booking in its entirety.

Reviews

I would like to be able to see all reviews that have been posted about a particular spot/booking.

Acceptance Criteria

  • Each booking/spot can have a review written about it by any user who has stayed at the property.
  • User can add a new review to a property they have visited.
  • User can edit or delete any review they have written.
  • User can leave a rating (out of five stars) along with their written review

Ratings

I would like to be able to see what the average rating for a booking/spot is.

Acceptance Criteria

  • Users can leave a rating on a property they've visited when writing a review.