User story - dalishuishou668/Klickr GitHub Wiki
User Stories
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, username, 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.
- 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 email and password on a clearly laid out form.
- I would like the website to log me in upon successful completion of the lob-up 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.
- 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).
- When I'm on the
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.
- I can click on a Demo User button to log me in and allow me access as a normal user.
- When I'm on either the
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 landing page.
- So that I can easily log out to keep my information secure.
- I can log out of my account and be redirected to landing page.
- While on any page of the site:
Images
Create Images
- As a logged in user, I want to be able to create new images.
- When I'm on the
/explore
page:- I can create a new image by click the upload button in the right corner of the navbar.
- So that I can share my images with my others.
- I can create a new image by click the upload button in the right corner of the navbar.
- When I'm on the
Viewing Images
-
As a logged in user, I want to be able to view a selection of the images from the database.
- When I'm on the
/explore
page:- I can view all images.
- So that I can read and interact with the thoughts.
- I can view all images.
- When I'm on the
-
As a logged in user, I want to be able to view a specific image and its associated comments and favorites.
- When I'm on the
/images/:id
page:- I can view the content of the image, as well as the associated image descriptions.
- So that I can read and interact with the thoughts and add my own comments and favorites.
- I can view the content of the image, as well as the associated image descriptions.
- When I'm on the
Updating Images
- As a logged in user, I want to be able to edit my image by clicking an Edit button associated with the image.
- When I'm on the
/image/:id
pages:- I can click "Edit" to make permanent changes to image I have posted.
- When I'm on the
Deleting Images
- As a logged in user, I want to be able to delete my image by clicking a Delete button associated with the image.
- When I'm on the
/images/:id
pages:- I can click "Delete" to permanently delete an image I have posted.
- When I'm on the
Albums
Create Albums
- As a logged in user, I want to be able to create new albums.
- When I'm on the
/yourpage
page:- I can create a new album by navigating to 'your album' section and click on add new album button.
- When I'm on the
Viewing Albums
-
As a logged in user, I want to be able to view all my albums.
- When I'm on the
/yourpage
page:- I can view view all my albums by clicking the 'your album' button.
- When I'm on the
-
As a logged in user, I want to be able to view a specific album and its associated images.
- When I'm on the
/albums/:id
page:- I can view the content of the album, as well as the associated images.
- When I'm on the
Updating Albums
- As a logged in user, I want to be able to edit my album by clicking an Edit button associated with the album.
- When I'm on the
/albums/:id
pages:- I can click "Edit" to make permanent changes to album I have created.
- When I'm on the
Deleting Albums
- As a logged in user, I want to be able to delete my album by clicking a Delete button associated with the album.
- When I'm on the
/albums/:id
pages:- I can click "Delete" to permanently delete an album I have posted.
- When I'm on the
Comments
Create Comments
- As a logged in user, I want to be able to add comments.
- When I'm on the
/images/:id
page:- I can create a new comment.
- When I'm on the
Viewing Comments
- As a logged in user, I want to be able to view all comments of a single image.
- When I'm on the
/images/:id
page:- I can view view all comments.
- When I'm on the
Updating Comments
- As a logged in user, I want to be able to edit my comment by clicking an Edit button associated with the comment.
- When I'm on the
/images/:id
pages:- I can click "Edit" to make permanent changes to comments I have created.
- When I'm on the
Deleting Comments
- As a logged in user, I want to be able to delete my comment by clicking a Delete button associated with the comment.
- When I'm on the
/imagess/:id
pages:- I can click "Delete" to permanently delete a comment I have posted.
- When I'm on the
Favorites
Add Favorites
- As a logged in user, I want to be able to add favorites.
- When I'm on the
/images/:id
page:- I can create a new comment.
- When I'm on the
Viewing Favorites
- As a logged in user, I want to be able to view all my favorites and total favorites of a single image.
- When I'm on the
/your-favorite
page:- I can view all my favorites.
- When I'm on the
Removing Favorites
- As a logged in user, I want to be able to remove my favorite by clicking a favorite button associated with the image.
- When I'm on the
/images/:id
pages:- I can click "unlike" to permanently remove the favorite I have posted.
- When I'm on the
Follows
Add Follows
- As a logged in user, I want to be able to follow others.
- When I'm on the
/user/:userId
page:- I can follow other person.
- When I'm on the
Viewing Follows
- As a logged in user, I want to be able to view all my follows.
- When I'm on the
/home
page:- I can view all my follows.
- When I'm on the
Unfollows
- As a logged in user, I want to be able to unfollow by clicking unfollow button associated with the user profile.
- When I'm on the
/users/:id
pages:- I can click "unlike" to permanently unfollow the person.
- When I'm on the
Search
- As a logged in user, I want to be able to search my interested images in the database.
- When I'm on the
/search
page:- I can search by image content which I'm interested in.
- When I click an individual search result, it will direct me to that single image page.
- When I'm on the