User Stories - nishinelson/solo-project GitHub Wiki

Sign Up

  • As an unregistered and unauthorized user, I want to be able to create an account using a sign up form.
    • While on the /signup page:
      • I want to be able to input my email, username, and preferred password into the sign up form.
      • I want the website to log me in after successfully completing the sign up form.
        • So that I can access the site's functionality.
    • When I enter invalid data on the sign up form:
      • I would like to be informed of any invalid inputs and have the form repopulate my previous valid inputs (with the exception of my password).
        • So that I can try again without needing to reenter valid data.

Log In

  • As a registered and unauthorized user, I want to be able to log in with a login form.
    • While on the /login page:
      • I would like to be able to enter my username and password on a form.
      • I would like the website to log in me in after successfully inputting valid information.
        • So that I can access the site's functionality.
    • When I enter invalid data on the log in form.
      • I would like to be informed of any invalid inputs and have the form repopulate my previous valid inputs (with the exception of my password).
        • So that I can try again without needing to reenter valid data.

Demo User

  • As an unregistered and unauthorized user, I want to be able to easily find the demo button on the /signup and /login pages so I can use the site as a guest without the need of having to register or log in.
    • When I'm on the /login or /signup pages:
      • I can click on a Demo User button to log me in and allow me access as a registered user.
        • So that I can demo the site's features and functionality without needing to enter any credentials.

Log Out

  • As a logged in user, I want an easily accessible logout button on the navbar.
    • While on any page of the site:
      • I can easily logout and be redirected back to the home page.
        • So that I can easily log out and keep my information secure.

Groups

Create Groups

  • As a logged in user, I want to be able to create new groups.
    • When I'm on the /Groups/new page:
      • I can write a description, set a location, and submit a new group.
        • So that I can form a group for people of similar interests in my area to join and attend events.

Viewing Groups

  • As a logged in or logged out user, I want to be able to view all groups in a selected area.
    • When I'm on the /groups page:
      • I can view all groups in a selected area.
        • So that I can browse through other users Cocktail-Qs.
  • As a logged in or logged out user, I want to be able to be able to view a specific group along with its events and members.
    • When I'm on the /groups/:id page:
      • I can view the details of a group page along with its events and members.
        • so that I can look for groups that have similar interests as myself.
  • As a logged in or logged out user, I want to be able to join a group that has similar