user stories - DavidPhamThinkful/Life-Overflow GitHub Wiki

Questions

CREATE

  • As a logged in user, I can ask a new question
    • so that I can get some meaningful response

Acceptance Criteria:

  • There should be a button on the questions page to take me to a form for asking a new question
  • The form should clearly indicate what information is necessary
  • If the form is submitted with invalid data, the form should re-render with error messages
  • If the form is submitted correctly, I should be redirected to the questions page

READ

  • As a guest or an user, I can see all questions asked
    • so that I can see all recent activity on the site

Acceptance Criteria:

  • Should load questions page (most recent)
  • Should have different filter options
  • Each question should have a link to that questions' page (and see their answers and comments and votes)
  • There should be a nav links for the categories

UPDATE

  • As a logged in user, I can edit my own questions
    • so that I can make changes to my questions as desired

Acceptance Criteria:

  • Each question on the questions page should display an edit link ONLY IF I am the creator of that question
  • When I click the link, I should be directed to a page with an edit form
  • The form should pre-populate with the current question information
  • Upon submission, I should be redirected to the question page

DELETE

  • As a logged in user, I can delete my own questions
    • so that I can remove my own content if I decide I'd like to

Acceptance Criteria:

  • Each questions on the questions page should display a delete button ONLY IF I am the creator of that questions
  • When I delete a questions, the page should reflect the change without refreshing

Answers

CREATE

  • As a logged in user, I should be able to answer a question
  • so that I can provide something useful to the question provider

Acceptance Criteria:

  • It should exist within the question page
  • There should be a button to create an answer
  • A dynamic text area should appear after hitting the button to input your answer
  • A submit button to submit your answer
  • Answer should show up dynamically at the bottom of the page

UPDATE

  • As a logged in user, I should be able to edit MY answer on a question
    • so that I can edit my answer as needed

Acceptance Criteria:

  • There should be an edit button to edit MY answer
  • A dynamic text area should appear with the previous text prefilled
  • A submit button to submit the edited answer
  • Edited answer should show up dynamically after submitting

DELETE

  • As a logged in user, I should be able to delete My answer on a question
    • so that it no longer shows up on the question page

Acceptance Criteria:

  • There should be a delete button to delete my answer
  • There should be a confirmation popup to confirm deletion
  • Answer should be removed dynamically from the page upon confirming

Votes

CREATE

  • As a logged in user, I should be able to cast up/down votes on an answer
    • so that highly rated answers show up on top

Acceptance Criteria:

  • The should be a number counter for both up and down votes
  • There should be a upvote icon that increases the upvote counter
  • There should be a downvote icon that increases the downvote counter

UPDATE

  • As a logged in user, I should be able to change my vote
    • so that if I change my mind, I can change my vote

Acceptance Criteria:

  • The current vote standing should be highlighted
  • Pressing the opposite standing icon should change the current vote standing
  • The voting counters should change accordingly
  • The highlighted icon should also change accordingly

DELETE

  • As a logged in user, I should be able to remove my vote
    • so that if I change my mind, it can be removed

Acceptance Criteria:

  • The current vote standing should be highlighted
  • Pressing the same icon, the vote should be removed
  • The voting counters should change accordingly
  • The highlighted icon should also change accordingly
⚠️ **GitHub.com Fallback** ⚠️