User Stories - RoseMontoya/Luna-AA-Capstone 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.

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.

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.

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 a page displaying recent FauxTweets.
        • So that I can easily log out to keep my information secure.

Entry

Creating a new entry

  • As a logged-in user, I should be able to add a new entry for the current day, or for a previous day, so that I can keep track of my life.
    • I want to easily find where I can add a new entry.
    • I want the flexibility to choose as many activities as I want and the freedom to add or exclude level ratings.
    • I want the ability to add, edit or delete an activity or level while creating an entry.

Updating an entry

  • As a logged-in user, I want to be able to modify a past entry, so I can keep on top of any changes that might have occurred.
    • I should be able to easily where to edit each entry
    • I should be able to add and remove activities
    • I should be able change a level's rating

Viewing an entry

  • As a logged-in user, I should be able to view all past entries, so that I can reflect and analysis how my trackers have been over time.
    • I should be able to see all activities and levels associated with entry
    • I should be able to see today's entries, all entries, or a single entry

Delete an entry

  • As a logged-in user, I should be able to delete any of my entries I no longer want, so I can remove anything that isn't relevant.

Activity

Create an Activity

  • As a logged-in user, I should be able to add a new item to keep track of, so that I have the flexibly to track the things that are important to me.
    • I should be able to choose an icon
    • I should be able to name the activity

Edit an Activity

  • As a logged-in user, I should be able to change the name or icon of an activity.
    • I should be able to edit an activity when editing an entry or from the activities page.
    • I should be able to choose a different icon or rename activity.

View Activities

  • As a logged-in user, I should be able to see what activities I currently have, so that I can use on my entries.
    • When creating or editing an editing an entry, I should be able to see all the activities I could add.
    • There should be a page that makes it easy to view all of the activities I have.

Delete Activities

  • As a logged-in user, I should be able to delete any activities that no longer matter or apply to me.
    • When I delete an activity, it removes from any past entries where it is used.
    • I should be warned when trying to delete an activity, so I don't delete an activity I don't want to.

Level

Create a Level

  • As a logged-in user, I should be able to add a new item to keep track of, so that I have the flexibly to track the things that are important to me.
    • I should be able to name the level I want to be able to rating and keep track of.
    • I should be able to create a level when creating or editing an entry, or separately on a levels page.

Edit an Level

  • As a logged-in user, I should be able to edit a levels information.
    • I should be able to edit a level when editing an entry or from the levels page.
    • I should be able to rename a level.

View Levels

  • As a logged-in user, I should be able to see what levels I currently have, so that I can use on my entries.
    • When creating or editing an editing an entry, I should be able to see all the levels I could add a rating to.
    • There should be a page that makes it easy to view all of the levels I have.

Delete Levels

  • As a logged-in user, I should be able to delete any levels that no longer matter or apply to me.
    • When I delete a level, it removes from any past entries where it is used.
    • I should be warned when trying to delete a level, so I don't delete an level I don't want to.