User Stories - dech0n/hobby-hub GitHub Wiki
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 use a form to sign up for an account using an email address, username and password.
- Upon successful form submission I'd like to be logged in to the site and redirected to the homepage.
- When I enter invalid data on the sign-up form
- I would like to be informed of what data was incorrect and repopulate my form with the valid data I've already entered (Not the password).
- So that I can try again without having to re-enter all of the data.
- I would like to be informed of what data was incorrect and repopulate my form with the valid data I've already entered (Not the password).
- When I'm on the
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 username and password into a form.
- I would like to be redirected to the homepage upon successful submission of the log-in form.
- So that I can continue my search for a new hobby.
- When I enter invalid data on the log-in form:
- I would like to be notified of what data was invalid and I want the form to repopulate the valid data I've already entered (Not the password).
- So that I don't have to re-enter things that were correct.
- I would like to be notified of what data was invalid and I want the form to repopulate the valid data I've already entered (Not the password).
- When I'm on the
Log Out
- As a registered and authorized user I want to be able to log out of the website via a button in the navbar.
- While on any page of the site:
- I would like to be able to click a button to log out and be redirected to the homepage.
- So that I can protect my privacy and keep my information secure.
- I would like to be able to click a button to log out and be redirected to the homepage.
- While on any page of the site:
Demo User
- As an unregistered and unauthorized user I would like to easily find a button in the navbar to allow me to visit the site as a guest without signing up or logging in.
- While on any page of the site:
- I can click on Demo User button to log in and access the site as a normal user.
- So that I can test the site without entering any credentials.
- I can click on Demo User button to log in and access the site as a normal user.
- While on any page of the site:
Status
Setting a status
- As a registered and authorized user I would like to be able to add a hobby to my Wheelhouse via a corresponding status in a dropdown menu.
- While viewing a hobby on any page of the site:
- I would like to select an option from a status dropdown menu that will add my hobby to that category of my wheelhouse.
- So that I can keep track of hobbies that I want to learn, am currently learning or have mastered.
- I would like to select an option from a status dropdown menu that will add my hobby to that category of my wheelhouse.
- While viewing a hobby on any page of the site:
Wheelhouse
Create: Adding Hobbies to the Wheelhouse
- As a logged in user, I want to be able to choose an existing hobby from a dropdown to add to my wheelhouse.
- When I'm on the
/wheelhouse
page:- I can click on the dropdown of existing hobbies.
- So that I can add a hobby to any of my wheelhouse statuses.
- I can click on the dropdown of existing hobbies.
- When I'm on the
Read: Viewing Hobbies in Wheelhouse
- As a logged in user, I want to be able to view the lists of hobbies in my Wheelhouse with the statuses "Want to Learn", "Currently Learning", and "Accomplished".
- When I'm on the
/wheelhouse
page:- I can click the desired status to pull up the the list of hobbies under that status.
- So that I can view all the hobbies that I have added to that status.
- I can click the desired status to pull up the the list of hobbies under that status.
- When I'm on the
Update: Editing Hobbies in Wheelhouse
- As a logged in user, I want to be able to update the statuses of hobbies in my wheelhouse.
- When I'm viewing my list of hobbies on the
/wheelhouse
page:- I can click "Edit".
- So that I can change the status the hobby is in.
- I can click "Edit".
- When I'm viewing my list of hobbies on the
Delete: Deleting Hobbies in Wheelhouse
- As a logged in user, I want to be able to delete the desired hobby from my wheelhouse.
- When I'm viewing my list of hobbies on the
/wheelhouse
page:- I can click "Delete" to delete the specified hobby off of my Wheelhouse.
- So that if I no longer want to learn the hobby, I can easily remove it from my Wheelhouse.
- I can click "Delete" to delete the specified hobby off of my Wheelhouse.
- When I'm viewing my list of hobbies on the
Hobbies
Create Hobbies
- As a logged in user, I want to be able to create new hobbies.
- When I'm on the
/new-hobby
page: I can create and submit a new Hobby.- So that I can share my hobbies with other users.
Viewing Hobbies
- As a logged in or logged out user, I want to be able to view a selection of Hobbies.
When I'm on the
/hobbies
page: - I can view my hobbies
- So that I can read and interact with my experiences and the comments of other users.
- As a logged in or logged out user, I want to be able to view a specific Hobby and its associated Experiences and Comments.
- When I'm on the
/hobbies/:id
page: - I can view the content of the Hobby, as well as the associated Experiences and Comments.
- So that I can read and interact with my experiences and the comments of other users
Updating Hobbies
- As a logged in user, I want to be able to edit my Hobbies by clicking an Edit button associated with the Hobby anywhere that Hobby appears.
- When I'm on the
/hobbies
,/hobbies/:id
, or/users/:id/hobbies
pages:- So that I can edit the details of my hobby and fix any errors I make
- When I'm on the
Deleting Hobbies
- As a logged in user, I want to be able to be able to remove my Hobbies by clicking a Delete button associated with the Hobby anywhere that Hobby appears
- When I'm on the
/hobbies
,/hobbies/:id
, or/users/:id/hobbies
pages:- I can click "Delete" to permanently delete a Hobby that I created
- So that I can remove a Hobby I no longer want
- I can click "Delete" to permanently delete a Hobby that I created
Experiences
As a logged in user, I want to share my experience with a given hobby. I want to be able to quickly and easily write and post a review so that I can explain my level of satisfaction with my selected hobby. The review I create should be able to be viewed by other users so that they can make a more informed decision about the use of their valuable time in pursuit of a particular hobby. I should also be able to edit or delete any reviews that I post because circumstances might change regarding a particular hobby that I have experienced.
Adding an Experience
- As a logged in user, I want to share my experience with a given hobby.
- When I'm adding an Experience on the
insert-path-here
page:- I want to be able to quickly and easily write and post a review so that I can explain my level of satisfaction with my selected hobby.
- The review I create should be able to be viewed by other users so that they can make a more informed decision about the use of their valuable time in pursuit of a particular hobby.
- When I enter invalid data on the Experience creation form (invalid length etc.)
- I would like to be advised that the information is invalid
- I would like to be brought back to the form so that the information can be corrected.
- When I'm adding an Experience on the
Reading an Experience
- As a logged in or logged out user, I want to be able to read Experiences from other users on any given hobby page.
- When I'm on a specified
/hobby
page:- I want to be able to view all Experiences left by users on that specified hobby.
- When I'm on a specified
Updating an Experience
- As a logged in user, I want to be able to update any of my posted Experiences by clicking an "Edit" button associated with the Experience.
- When I'm on a specified
/hobby
page:- I can click the "Edit" button associated with an Experience I wrote to be able to edit that Experience left on the specified hobby.
- When I'm on a specified
Deleting an Experience
- As a logged in user, I want to be able to delete any of my posted Experiences by clicking a "Delete" button associated with the Experience.
- When I'm on a specified
/hobby
page:- I can click the "Delete" button associated with an Experience I wrote to be able to delete that Experience entirely.
- When I'm on a specified