Skip to content

User Stories

JeffersonGarcia15 edited this page May 21, 2021 · 7 revisions

Users

Register

  • As a non-registered user, I want to be able to sign up for the website.
    • When I'm on the /auth page
    • I would like to be redirected to the home page after successfully registration
  • I would like to see some preview content to decide whether to register or not
  • I would like the website to inform me if something went wrong when trying to register, but keep the data populated so that I don't have to re-enter it.

Log in

  • After registering I want to be able to log in to the website through the /auth page.
  • When the log in form is displayed I want to be able to:
    • enter my email and password to log in
    • use captcha to make me feel safe about bots not being in the website stealing information
    • log in using my google account
  • When the log in form is displayed but my information fails to pass I want to be able to:
    • be notified what went wrong
    • have my data be populated

Demo User

  • As an unregistered user, I would like a way to have a demo user grant me the same privileges that a registered user would have.
  • I would like to see a demo button next to the register and login buttons.
  • As a demo user I would like to have the same privileges that a registered user has so that I can test the site and decide on wether I would want to create my own account.

Photos

Upload Photos

  • As a logged in user, I want to be able to:
    • post photos when I'm on the /api/photos route.

View photos

  • As a logged in user I want to be able to:
    • View photos when I'm on the home page
    • View specific photos when I'm on the /api/photos/:id
    • View photos that belong to a specific tag /api/photos/:tagId

Update a photo's info

  • As a logged in user, I want to be able to:
    • edit a picture's title
    • edit a picture's description

Deleting a photo

  • As a logged in user, I want to be able to:
    • Delete a photo and everything associated with it by just clicking a button

Albums

Create Albums

  • As a logged in user, I want to be able to:
    • post an album when I'm on the /api/albums route

View albums

  • As a logged in user, I want to be able to:
    • View albums when I'm on the home page
    • View a specific user's album when I'm on the /api/users/:id/albums

Update an album's info

  • As a logged in user, I want to be able to:
    • edit an album's title
    • edit an album's description

Deleting an album

  • As a logged in user, I want to be able to:
    • Delete an album and everything associated with it by just clicking a button

Comments

Create comments

  • As a logged in user, I want to be able to:
    • post a comment when I'm on the /api/photos/:id/comment route

Update a comment's info

  • As a logged in user, I want to be able to:
    • edit a comment's content

Deleting a comment

  • As a logged in user, I want to be able to:
    • Delete a comment and everything associated with it by just clicking a button

Tags

Create tags

  • As a logged in user, I want to be able to:
    • create a tag when I'm on the /api/photos/:id/tag route

Update a tag's info

  • As a logged in user, I want to be able to:
    • edit a tag's name

Deleting a tag

  • As a logged in user, I want to be able to:
    • Delete a tag and everything associated with it by just clicking a button

Followers

Create a follow

  • As a logged in user, I want to be able to:
    • follow someone when I'm on the /api/users/:id/follow route

Deleting a follow

  • As a logged in user, I want to be able to:
    • Delete a follow and everything associated with it by just clicking a button

Faves

Create a fave/like

  • As a logged in user, I want to be able to:
    • fave/like someone's picture when I'm on the /api/photos/:id/fave route

Deleting a fave/like

  • As a logged in user, I want to be able to:
    • Delete a fave/like and everything associated with it by just clicking a button