Skip to content

User Story

Kyrene Flores edited this page Jan 30, 2024 · 2 revisions
  1. Users
    1. Sign Up
  2. 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:
  3. I would like to be able to enter my email, username, and preferred password on a clearly laid out form.
  4. 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.
  5. When I enter invalid data on the sign-up form:
  6. 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.
  1. 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` 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, so that I can seamlessly access the site’s functionality.
  • 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.
    1. 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.
    1. 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 a page displaying recent Songs, so that I can easily log out to keep my information secure.
    1. 1. Songs
      1. Create Songs
    2. As a logged in user, I want to be able to post new Songs.
      – When I’m on the `/new-song` page:
    3. I can write and submit a new Song so that I can share my thoughts and memes with my friends.
    1. Viewing Songs
  • As a logged in or logged out user, I want to be able to view a selection of the most recent Songs.
    – When I’m on the `/Songs` page:
  • I can view the ten most recently posted Songs, so that I can read and interact with the thoughts and memes of my friends.
    – As a logged in or logged out user, I want to be able to view a specific Songs and its associated SongComments and SongLikes.
  • When I’m on the `/Songs/:id` page:
  • I can view the content of the Songs, as well as the associated SongComments and SongLikes, so that I can read and interact with the thoughts and memes of my friends, and add my own thoughts and memes in the SongComments.
    1. Updating Songs
  • As a logged in user, I want to be able to edit my Songs by clicking an Edit button associated with the Songs anywhere that Songs appears.
    – When I’m on the `/songs`, `/songs/:id`, or `/users/:id/songs` pages:
  • I can click “Edit” to make permanent changes to Songs I have posted, so that I can fix any errors I make in my Songs.
    1. Deleting Songs
  • As a logged in user, I want to be able to delete my Songs by clicking a Delete button associated with the Songs anywhere that Songs appears.
    – When I’m on the `/Songs`, `/Songs/:id`, or `/users/:id/Songs` pages:
  • I can click “Delete” to permanently delete a Songs I have posted, so that when I realize I shouldn’t have publicly said something, I can easily remove it.
    1. 2. Comments
      1. Create Comments
    2. As a logged in user, I want to be able to post new comments.
      – When I’m on the `/songs` page:
    3. I should be able to click on the “create comment” button.
    4. I can write and submit a new comment on a Song, so that I can share my comments with my friends about that Song.
    1. Viewing Comments
  • As a logged in or logged out user, I want to be able to view a selection of the most recent comments on a Song.
    – When I’m on the `/songs` page:
  • I can view the ten most recently posted comments, so that I can read and interact with the thoughts and memes of my friends.
    1. Updating Comments
  • As a logged in user, I want to be able to edit my comments by clicking an Edit button associated with the Song
    – When I’m on the `/songs/:id`, or `/users/:id/songs` pages:
  • I can click “Edit” to make permanent changes to comments that I have posted, so that I can fix any errors I make in my comments.
    1. Deleting Comments
  • As a logged in user, I want to be able to delete my comments by clicking a Delete button associated with the Songs.
    – When I’m on the `/songs/:id`, or `/users/:id/songs` pages:
  • I can click “Delete” to permanently delete a Comment I have posted, so that when I realize I shouldn’t have publicly said something, I can easily remove it.
  • Clone this wiki locally