-
Notifications
You must be signed in to change notification settings - Fork 0
User Stories
-
As an unregistered user, I want to be able to sign up for the site using a signup form.
- When I'm on the '/signup' page:
- I would like to be able to enter my full name, username, email address, and preferred password via a clearly laid out form. * I would like to be able up upload a profile photo from the signup form.
- I would like the site to log me in upon successful completion of the sign-up form.
- When I'm on the '/signup' page:
-
When I enter invalid data on the signup form: * I would like the site to inform me of the validations I failed to pass, and repopulate the form with my valid entries, with the exception of my password.
-
As a registered user, I want to be able to log in to the site using a login form.
- When I'm on the '/login' page:
- I would like to be able to enter my email and password via a clearly laid out form and have the site log me in upon successful completion.
- When I'm on the '/login' page:
-
When I enter invalid data on the login form:
- I would like the site to inform me of the validations I failed to pass, and repopulate the form with my valid entries, with the exception of my password.
- I would like an easy to find and clearly labeled button on the '/login' page that allows me full access to the site without actually having to log in or sign up.
- When I'm on the '/login' page:
- I can click on a 'Log in as Guest' button and be allowed the same access as a logged-in user.
- When I'm on the '/login' page:
- As a logged-in user, I want to be able to log out via an easy to find and clearly labeled 'Log out' button.
- While on any page of the site:
- I can log out of my account and be redirected to the '/login' page.
- While on any page of the site:
- As a logged in user, I want to be able upload songs via a clean and intuitive upload form.
- When I'm on the '/songs/new' page:
- I can upload a song via a file input, add a song title, an optional album name, and an artist name, as well as upload an optional album cover via a second file input.
- When I'm on the '/songs/new' page:
- As a logged in user, I want to be able to view as well as listen to all uploaded songs.
- When I'm on the homepage:
- I can view and listen to all songs posted by myself, as well as other users.
- When I'm on the homepage:
- As a logged in user, I want to be able to update the song title, album name, artist name, and album cover of songs I have uploaded via a clean, intuitive, and easy to find form.
- When I'm on any page that displays songs:
- I can click an "Edit" button and be redirected to a form to update the specified song.
- When I'm on any page that displays songs:
- As a logged in user, I want to be able to delete songs I have uploaded via an easy to find delete button.
- When I'm on any page that displays songs:
- I can click a "Delete" button, which will display a confirmation modal, and if confirmed, permanently delete any song I have uploaded.
- When I'm on any page that displays songs:
- As a logged in user, I want to be able create playlists via a clean and intuitive modal.
- From the 'new playlist' modal:
- I can specify a playlist title, as well as upload an optional cover photo.
- From the 'new playlist' modal:
- As a logged in user, I want to be able to view my playlists as well as other user's playlists.
- When I'm on the homepage:
- I can view and listen to my own playlists.
- When I'm on the users/:id page: * I can view and listen to the specified user's playlists.
- When I'm on the homepage:
-
As a logged in user, I want to be able to add songs to my library or any of my playlists via an easy to find "Add" button next to any song.
- When I'm on any page that displays song:
- I can click an "Add" button, and will be displayed a dropdown menu containing 'library', as well as a list of my playlists. Once a my library or a playlist is selected the specified will be added to the my library/playlist.
- When I'm on any page that displays song:
-
As a logged in user, I want to be able to remove songs from my library or any of my playlists via an easy to find "Remove" button next to any song displayed in the library/playlist.
- When I'm on the 'playlist/:id' or 'users/:id/library' pages:
- I can click a "Remove" button, and remove the specified song from the library/playlist.
- When I'm on the 'playlist/:id' or 'users/:id/library' pages:
-
As a logged in user, I want to be able to update the title, as well as the cover photo of any playlist I've created.
- When I'm on the playlists/:id page of any playlist I've created:
- I can click an "Edit" button and be redirected to a form to update the specified playlist.
- When I'm on the playlists/:id page of any playlist I've created:
- As a logged in user, I want to be able to delete playlists I have created via an easy to find delete button.
- When I'm on the playlists/:id page of any playlist I've created:
- I can click a "Delete" button, which will display a confirmation modal, and if confirmed, permanently delete any playlist I have created.
- When I'm on the playlists/:id page of any playlist I've created:
- As a logged in user, I want to be able to search for songs via an easy to find search bar.
- When I'm on the '/search' page:
- I can enter a song title, album name, or artist name, and be displayed songs that contain the specified search term.
- When I'm on the '/search' page:
- As a logged in user, I want to be able to view playlists that I follow.
- When I'm on my homepage page:
- I can see a list of the playlists I follow. If I click any of the playlists I will be redirected to the 'playlists/:id' page of the specified playlist.
- When I'm on my homepage page:
- As a logged in user, I want to be able to follow any playlist created by other users.
- When I'm on my 'playlist/:id' page:
- I can click a follow/unfollow button and have the playlist added/removed from my 'Followed Playlists' list.
- When I'm on my 'playlist/:id' page:
- As a logged in user, I want to be able to view users that I follow.
- When I'm on my profile page:
- I can see a list of the I can see a list of users follow. If I click any of the user's usernames or thumbnails I will be redirected to the 'users/:id' page of the specified user.
- When I'm on my profile page:
- As a logged in user, I want to be able to follow any other user.
- When I'm on a user's 'users/:id' page:
- I can click a follow/unfollow button and have the user added/removed from my 'Following' list.
- When I'm on a user's 'users/:id' page: