Skip to content

User Stories

Joan-Buck edited this page Mar 12, 2022 · 14 revisions

Login/Logout

Sign Up

  • As an unregistered user, I want to be able to sign up for the website via a sign-up form, so I can use the site's functionality.

Acceptance Criteria

  • There should be a modal pop up that shows the sign up form.
  • The form modal should have a textbox for email, password, confirm password, first name, username, and last name.
  • When the continue button is clicked the modal should close and should be redirected to splash page.

Login

  • As an unauthorized user, I want to be able to sign into my account, so that I can access the site's functionality specific to my account

Acceptance Criteria

  • There should be a modal pop up that shows the login form.
  • The form modal should have a textbox for email and password.
  • When the login button is clicked the modal should close and should be redirected to splash page.

Demo user

  • As an unregistered user and unauthorized user, I would like to be able to sign in as a demo user, so that I can explore the site's functionality without signing up

Acceptance Criteria

  • A demo user login button is clearly visible on both the /signup and /sign-in pages.

Search

Songs, Albums, Artists, and Users

  • As a signed in user, I want to be able to use the search feature to find songs, albums, artists, and other users.

Acceptance Criteria

  • Clickable search button that brings up the search bar within a modal.
  • Search page background shows playlists.
  • The search modal should find by all songs, albums, or artists.
  • The search modal should find users by full name and/or username.
  • Search should populate data when a user stops typing in the search bar.

Playlists

  • As a signed in user, I want to be able to view, create, edit, and delete my playlists.

Acceptance Criteria

  • Logged-in users should have a Playlist section on the left nav bar, as well as "Create Playlist" button.
  • The Playlist Detail page has buttons to add songs, edit a playlist title, and delete a playlist.
  • Each playlist on the Playlist section of the navbar links to the Playlist detail page that lists all songs/details on a playlist.
  • The Playlist detail page has a button to add songs to the playlist (brings up the search modal).
  • The Playlist detail page has a delete button on each song so users can delete a song from a playlist.
  • Each playlist has a mood tag associated with it

Mood Tags

  • As a signed in user, I want to be able to select my mood.

Acceptance Criteria

  • There is a card on the splash page modal for logged in users to select their mood if they want. This brings them to the mood playlist page, rendering all Moodify's playlists related to the selected mood.
  • Detail stylings on a playlist detail page or mood page change color based on the mood selected or the mood of the playlist.

Continuous Play

  • As a signed in user, I want to be able to play/pause music without interruption anywhere within the application.

Acceptance Criteria

  • The Playbar should be visible from any page within the application.
  • The Playbar will display the play/pause button, the duration and current time spot of the currently playing song on a progress bar, the song name, artist name, album art.
  • A user can pause a playing song or play a paused song by clicking the play or pause button.
  • A user can go to a different time spot in the song by clicking or dragging along the progress bar.
  • A user can change the volume using volume controls.

Following users

  • As a signed in user, I want to be able to follow users and be followed by users.

Acceptance Criteria

  • In the search bar, any logged in user can search for another user.
  • Once user is selected from search results, you will see their basic information(name, head icon, playlists).
  • You can choose to click on "Follow" button next to their name to follow them or "Unfollow" button if you are already following them and wish not to.
  • Logged in user can click on their own profile and see how many people follow them and their own playlists.