Skip to content

User Stories

Bergan Oudshoorn edited this page Apr 21, 2021 · 9 revisions

Visiting Pages (Unregistered, Unauthorized)

As an unregistered and unauthorized user, I want to be able to visit Echo and view the servers.

When I'm on the /home page:

  • I would like to be able to see users and servers on the main page
  • I would like to be able to see the most recent servers and recent users on the main page

                     

Visiting Pages (Registered, Authorized)

As a registered and signed in user, I want to be able to do everything an unregistered user can do, plus...

When I'm on the /home page:

  • I would like to see nav bar links to my servers, and private messages, as well as a logout feature.

When I'm on one of my servers:

  • I would like to be able to messages others within the different channels
    • I would like to be able to delete my messages and reply to others
  • Selecting a specific user will allow me to be able to directly message them
  • I would like to be able to create new channels within my server
    • I would like to be able to delete my server and specific channels

When I'm on another server(not owned by User):

  • I would like to be able to messages others within the different channels
    • I would like to be able to delete my messages and reply to others
  • Selecting a specific user will allow me to be able to directly message them

                     

Sign Up

As an unregistered and unauthorized user, I want to be able to sign up for Echo via a sign-up form.

When I'm on the /signup page:

  • I would like to be able to enter my username, email, select and profile picture, password and confirmed password on a clearly laid out form and a submit button.

    • I would like the website to log me in upon successful completion of the sign-up form.
    • Redirecting me to the home page that shows logged-in user elements
  • When I enter invalid data on the sign-up form:

    • I would like Echo 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 authorized 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 in a clearly laid out form with two form fields and a submit button.

    • I would like the website to log me in upon successful completion of the log-in form and send me to the main page in a logged in state that distinctly confirms I am logged in by having different elements appear on the page so that I can seamlessly access the site's functionality that requires authorization such as messaging within a server.
  • When I enter and submit invalid data in the log-in 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.
  • As an unregistered and unauthorized user who lands on the login page, I want to be able to sign up for an Echo account.

    • When I’m on the /login page, I would like to see a “signup for an account” link that would send me to the Echo signup page.

                     

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 the main page to keep my information secure.

                     

Update User Preferences

As a logged in user on any page I can click on a cog in the top navbar to view my settings page.

  • While on my settings page I can update any of my required info or delete my account.
  • Settings to change/update include: Profile Picture, and Delete My Account

                     

Creating a new server/channel

As a logged in user I want to be able to create a new server

  • When create the server I want to be able to create channels and invite other users
    • Once the other users message I want to be able to rely to their messages

                     

Delete Server/Channel

As a logged in user, I want to be able to delete a server as well as delete my channels

  • When I am on one of my servers I want to be able to delete any channel that is not in use
    • I would also like to delete the entire server if it is not in use

                     

Find a server/user

As a logged in user I want to search for any user and any server

  • When I search in the search bar I want to find all users and servers containing the words that I wrote

                     

Private message

As a logged in user I want to be able to private message any user

  • When on a specific server channel I want to be able to click on a user and be redirected to a direct message chat
    • There i would like the ability to message the user one on one

                     

Clone this wiki locally