Skip to content

User Stories

Nichole edited this page Feb 2, 2021 · 9 revisions

Login


As an unauthorized user, I want to be able to login to the website via a form, so that i can access my private information.

Questions

  • What the user enter a username or an email address to login?
    • User will login via email and password.
  • What routes should we use for login?
    • User will login via /login route
  • Where should the user be redirected after login?
    • User will be redirected to the /homepage

Signup


As an unauthorized user, I want to be able to sign up for the website via a signup form, so that I can access MEMOREcall.

Questions

  • Will the user enter a username and an email address to signup?
    • User will signup using an email and password
  • Will we confirm their password during signup?
    • User's password confirm and hash password
  • What routes should we use for signup?
    • User would signup on /signup
  • Where should the user be redirected after signup?
    • User will be redirected to /homepage

Acceptance Criteria

  1. Given that I'm a user who has not signed up yet and
    • When I'm on the /signup route
    • Then there will be a signup form with an email and password field and a "Sign Up" button to submit the form.
  1. When I try to fill out the form with an email that already exists with a valid password and press Enter or press the "Sign Up" button
    • Then at the top of the form, I will see a red message User with that email or username already exists.
  1. When I try to fill out the form with a password shorter than 6 characters and press Enter or press the "Sign Up" button
    • Then at the top of the form, I will see a red message Password must be at least 6 characters long.
  1. When I try to fill out the form with a valid email, username, and password and press Enter or press the "Sign Up" button
    • Then I will be redirected to the homepage at the /homepage route.
  1. Given that I am a user that just signed up
    • When I refresh the homepage at the /hompage route
    • Then I will still be logged in

Demo User


As a first-time user who just wants to demo MEMOREcall, I want to be able to try out the site with a demo user login via a single button click on the login and signup form, so that I can access MEMOREcall without having to go through the trouble of creating a new account.

Questions

  • How does a demo user login?
    • Demo User can login on the main page by clicking the Demo User button
    • Demo User will be redirected to / homepage
  • What can a demo user do?
    • A Demo User can use MEMOREcall features just like a Logged in user.
  • How does a demo user logout?
    • Demo User can log out by clicking the Log Out at the top right.

Acceptance Criteria

  1. Given that I am someone that wants to test MEMOREcall and have not signed up
    • Then i can log in by clicking Demo User.
  1. Given that I am a logged in Demo User that want's to exit MEMOREcall
    • Then i can log out by clicking the Log Out button located at the top right.

Logout


As a logged-in user, I want to logout via a button on the navigation bar, so that I can hide my account information to the rest of the users on this device.

Questions

  • How can a logged-in user sign out of MEMOREcall
    • A logged-in user can sign out by clicking the Log Out button at the top right of the nav bar.

Acceptance Criteria

  1. Given that I am a logged-in user that wants to log out of MEMOREcall and I am located on any route
    • Then I can simply click the Log out button located at the top right of the nav bar.
  1. Given that I am a logged-in user that has logged-out
    • Then I will be redirected back to the / splash page

See all my Pic/Journals


As a logged-in user I want to be able to see my journals that I have made on MEMOREcall as a clickable book on the homepage, so i can view my journal.

Questions

  • How can a User view a particular journal?
    • A User can view a journal by clicking a journal on their bookcase.
  • What happens when a User selects/clicks a journal?
    • When a User clicks on a journal in their bookcase they will be able to view that journal.
    • When a User clicks a journal a User will be redirected to that journal at /journal/id.
    • in route /journal/id id is the journal id.
  • What will a User see when they select a journal?
    • A User will be able to view a journal at /journal/id ** A User will see an open Journal, viewing a modal with the first journal entry. ** A User will see a journal Navigation bar to navigate easily through the journal.
  • How will a User be able to interact with a selected journal? ** Viewing a journal will allow a user to flip through there journal entries using arrow buttons ** A Users arrow buttons are located on each side of the journal ** An arrow button located on the right of the journal will view the next page to the right of current page. ** An arrow button located on the left of the journal will view the next page to the left of the current page.
  • How can a User exit a selected journal? ** A button Close Journal will be available at the bottom of the journal ** Closing a Journal will redirect a user back to the "/homepage"

Acceptance Criteria

Create a Journal


As a logged-in user, I want to be able to create a Journal and start making entries!

Questions

  • How will a user be able to create a journal
    • A logged-in User can create a journal by clicking the + button on a bookcase to create a journal ** A User can click Create Journal on the side bar to create a journal
  • What happens when a User clicks Create Journal
    • A User is redirected to /create ** route /create will provide a form for a User to fill out to create a journal

Acceptance Criteria

Create/Add a Journal Entry


As a logged-in User and someone who just created a Journal, I want to be able to add a journal entry.

Questions

  • How can a User create a journal entry
    • User can create a journal entry while viewing journal by clicking Create Journal Entry on bottom of journal
    • User can create a journal entry by clicking Create Journal Entry from side bar
  • What will happen when a User clicks Create Journal Entry on the journal/id page
    • A User will be redirected journal/id/create to create a new journal entry
    • Once a User Creates a page they will be redirected to the journal and new entry journal/id/pageid
  • What will happen when a User clicks Create Journal Entry on the /homepage page
    • A User will be shown a list/modal of users journals they can add entries to ** Once a User selects a journal they will be redirected to journal/id/create to create a entry
    • Once a User Creates a page they will be redirected to the journal and new entry journal/id/pageid

Acceptance and Criteria

Edit a Journal Entry


As a logged-in user, I want to be able to edit my own Journal entry.

Questions

  • How can a User edit a journal entry
    • A User can edit a journal entry by being on journal/id/pageid and clicking Edit Entry below the journal
    • An Entry will be able to edit at journal/id/pageid/edit ** A User can submit changes or exit editing by clicking Cancel at the bottom of the edit page

Acceptance and Criteria

Delete a Journal


As a logged-in User and Owner of a Journal, I want to be able to delete my Journal.

Questions

  • As a User, how can I delete a Journal
    • I can Hover over a journal in my bookcase and select view or delete ** A User can select delete and then be prompted by a question

Acceptance and Criteria

Delete an Journal Entry


As a logged-in User and Owner of a Journal, I want to delete a Journal that I know longer want.

Questions

  • How can a User delete a journal entry
    • A User can delete a journal entry by being on journal/id/pageid and clicking Delete Entry below the journal
    • You will be prompted if you would want to delete an entry. ** A User can select Yes to confirm or No to cancel action.

Acceptance and Criteria

BONUSES

See my progress history


As a logged-in user,

Questions

Acceptance Criteria

Personalize a Journal


Edit personalized Journal