Skip to content

User Stories

Jeramie Forbes edited this page May 29, 2024 · 3 revisions

Users

Sign Up

  • As an unregistered and unauthorized user, I want to be able to sign up for the website via a sign-up form.
    • When I'm on the /signup page:
      • I would like to be able to enter my email, name, and preferred password on a clearly laid out form.
      • I would like the website to log me in upon successful completion of the sign-up form.
        • So that I can seamlessly access the site's functionality
    • When I enter invalid data on the sign-up 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 in

  • As a registered and unauthorized user, I want to be able to log in to the website via a log-in form.
    • When I'm on the /login modal:
      • 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 login form.
        • So that I can seamlessly access the site's functionality
    • When I enter invalid data on the log-up 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.

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 modals:
      • 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 Out

  • 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 landing page.
        • So that I can easily log out to keep my information secure.

Vehicles for sell

All Available Vehicles for Sell

  • As a logged in or logged out user, I want to be able to view a list of vehicles for sell.
    • When I'm on the /cars page:
      • I can view the 15 most recently added vehicles.
        • And when clicked, I can see details of the vehicle.

View Specific Vehicle for Sell

  • As a logged in or logged out user, I want to be able to view details for a specific vehicle for sell.
    • When I'm on the /cars/:id page:
      • I can view all available details for a vehicle.

Reviews

Create a Reviews

  • As a logged in user, I want to be able to add at most 1 review to a vehicle.
    • When I'm on the /cars/:id page:
      • I can add a new review to a selected vehicle.
        • So I can give my thoughts about the vehicle.

Viewing Reviews

  • As a logged in user, I want to be able to view all the reviews associated with a specific vehicle.
    • When I'm on the /cars/:id page:
      • I can view up to 5 reviews at a time on the selected vehicle.
        • So that I can know other peoples experience with the same type of vehicle.

Updating Reviews

  • As a logged in user, I want to be able to edit my review by clicking on a pencil icon button associated with review beside the delete button.
    • When I'm on the /cars/:id page:
      • I can click the pencil icon button to make permanent changes to the review I posted.
        • So that I can fix any errors in my review.

Deleting Reviews

  • As a logged in user, I want to be able to delete my comment that I created by clicking "Delete" associated with the comment.
    • When I'm on the /cars/:id page:
    • I can click "Delete" on the associated review to permanently delete my review.
      • I will receive a confirmation modal asking if I am sure I want to delete the review.

Sell Vehicle

Request a sell or trade of a vehicle

  • As a logged in user, I want to be able to create a new sell or trade request.
    • When I'm on the /sell-my-car page:
      • I can add details about my vehicle.
        • So that I can get an offer for my vehicle from the buyer.
          • Then once I get the offer back, I can make a decision to trade my vehicle for another, sell my vehicle or decline the offer.

Viewing My Sold and Traded Vehicles

  • As a logged in user, I want to be able to view my sold, pending sell and traded vehicles history.

    • When I'm on the /history/sells page:
      • I can view my 5 most recently sold and traded vehicles as well as my pending sells.
  • As a logged in user, I want to be able to view a specific vehicle's details traded, sold or pending sell.

    • When I'm on the /sells/:id page:
      • I can view all available information associated to the vehicle traded, sold or pending sell.

Updating Sell Request

  • As a logged in user, I want to be able to edit my sell request information by clicking an Edit button associated with the request.
    • When I'm on the /sells/:id page:
      • I can click "Edit expense" to make permanent changes to any expense I am associated with.
        • So that I can fix any errors in my request form.

Deleting/canceling a sell request

  • As a logged in user, I want to be able to cancel any pending sell request I'm associated with by clicking a delete button associated with the sell.
    • When I'm on the /sells/:id page:
    • I can click "Delete" to permanently cancel a pending request.
      • I will receive a confirmation modal asking if I am sure I want to delete the transaction.

Purchase Vehicle

Send Purchase Request

  • As a logged in user, I want to be able purchase a vehicle.
    • When I'm on the /purchase page:
      • I can fill out a form to purchase a vehicle.
        • Form takes in name, address, etc...

Viewing Purchases

  • As a logged in user, I want to be able to view all of my past purchases.
    • When I'm on the /history/purchases page:
      • I can view the ten most recently bought vehicles.

Update Purchases

  • As a logged in user, I want to be able to update purchase information
    • When I'm on the /purchases/:id page:
      • I can update information used for purchase (name, address, etc...) in case I choose the wrong delivery address or other reason.

Delete/cancel Purchases

  • As a logged in user, I am able to cancel or delete a purchase request.
    • When I'm on the /purchases/:id page:
      • If I change my mind I can cancel a purchase and continue looking elsewhere.

Vehicle Wishlist

Add a Vehicle to Wishlist

  • As a logged in user, I want to be able to add a vehicle to my wishlist.
    • When I'm on the /cars or /cars/:id:
      • I can add a vehicle to my wishlist by pressing the "Wishlist" toggle button.

Viewing My Wishlist

  • As a logged in user, I can view all the vehicles added to my wishlist.
    • When I'm on the /wishlist page:
      • I can view the 10 most recently added vehicles to my wishlist.

Remove From Wishlist

  • As a logged in user, I want to be able to remove a vehicle from my wishlist.
    • When I'm on the /wishlist, /cars or /cars/:id:
    • I can click the "Wishlist" toggle button to remove from my wishlist.