User Stories - gmiddle/ignored GitHub Wiki
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.
- When I'm on the
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 log-in form.
- So that I can seamlessly access the site's functionality
- When I enter invalid data on 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.
- 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).
- When I'm on the
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.
- I can click on a Demo User button to log me in and allow me access as a normal user.
- When I'm on either the
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 the home page.
- So that I can easily log out to keep my information secure.
- I can log out of my account and be redirected to a page displaying the home page.
- While on any page of the site:
Servers
Create a Server
- As a logged in user, I want to be able to create an empty server.
- When I'm on the dashboard: I can create an empty server and access it.
- So that I can add a new server separate from my existing servers.
- When I'm on the dashboard: I can create an empty server and access it.
Viewing Servers
-
As a logged in user, I want to be able to view the existing servers I have created followed by the servers of which I am a member.
- When I'm on the dashboard: I can arrange my servers freely.
- So that I can view all of my servers in an organized way.
- When I'm on the dashboard: I can arrange my servers freely.
-
As a logged in user I want to be able to view a single server that I have created.
- When I'm on the dashboard: I can view the content of the server and it’s members.
- So that I can interact with the view channels, server members and the messages that have been posted.
- When I'm on the dashboard: I can view the content of the server and it’s members.
Updating Servers
- As a logged in user, I want to be able to edit my servers by clicking an Edit button associated with the server.
- When I'm on a server’s page: I can click an "Edit" button to make changes to the server.
- So that I can rename the server or change the server icon.
- When I'm on a server’s page: I can click an "Edit" button to make changes to the server.
Deleting Servers
- As a logged in user, I want to be able to delete my servers by clicking a Delete button associated with the server.
- When I'm on the server's page: I can click "Delete" to permanently delete a server I have created.
- So that when I am finished hosting a server, I can remove it.
- When I'm on the server's page: I can click "Delete" to permanently delete a server I have created.
Channels
Create a Channel
- As a logged in user, I want to be able to create an empty channel within a server.
- When I'm on the server page: I can create, name, and add an image to a new channel.
- So that I can create specialized channels for topics in my server.
- When I'm on the server page: I can create, name, and add an image to a new channel.
Viewing Channels
-
As a logged in user, I want to be able to view channels of which I am a member.
- When I'm on the server page: I can view the channels from which I have been granted access..
- So that I can move between channels when I want to view them.
- When I'm on the server page: I can view the channels from which I have been granted access..
-
As a logged in user, I want to be able to arrange channels that I have created.
- When I'm on the server page: I can arrange my channels by topic or title.
- So that I can identify channels with similar titles and topics.
- When I'm on the server page: I can arrange my channels by topic or title.
Updating Channels
- As a logged in user, I want to be able to edit my channels by clicking an Edit button associated with the channel.
- When I'm on the task(s) page: I can click "Edit" to make changes to channels that I oversee.
- So that I can change the titles and update images associated with that channel.
- When I'm on the task(s) page: I can click "Edit" to make changes to channels that I oversee.
Deleting Channels
- As a logged in user, I want to be able to delete my channels by clicking a Delete button associated with the channel.
- When I'm on the task(s) page: I can click "Delete" to permanently delete a channel I have created.
- So that when I realize I want to remove an old or unnecessary channel I can remove it.
- When I'm on the task(s) page: I can click "Delete" to permanently delete a channel I have created.
Live Chat
Create a Chat
-
As a logged in user, I want to be able to create new chats.
- When I'm on the server page: I can write, edit and submit chat messages.
- So that I can effectively communicate with other members.
- When I'm on the server page: I can write, edit and submit chat messages.
-
As a logged in user, I want to be able to reply to messages posted by thor members.
- When I'm on the server page: I can write, edit and submit reply messages.
- So that I can effectively respond to posts by other members.
- When I'm on the server page: I can write, edit and submit reply messages.
Viewing Chat
-
As a logged in user, I want to be able to view messages I have sent.
- When I'm on the server page: I can view messages I have sent.
- So that I can follow the current communications as they evolve.
- When I'm on the server page: I can view messages I have sent.
-
As a logged in user I want to be able to view messages that other members have created.
- When I'm on the server page: I can view the content of other member’s messages.
- So that I can view other people’s contributions to the common conversation.
- When I'm on the server page: I can view the content of other member’s messages.
-
As a logged in user I want to be able to view images and gifs that have been sent.
- When I'm on the server page: I can view images and gifs on the posted messages.
- So that I can expand the types of communication available.
- When I'm on the server page: I can view images and gifs on the posted messages.
Updating Chat
- As a logged in user, I want to be able to edit my chat messages by clicking an Edit button associated with the message.
- When I'm on the server page: I can click "Edit" to make changes to messages that I have posted.
- So that I can fix any errors and update the content of the message.
- When I'm on the server page: I can click "Edit" to make changes to messages that I have posted.
Deleting Chat
- As a logged in user, I want to be able to delete my messages by clicking a Delete button associated with the message.
- When I'm on the server page: I can click "Delete" to permanently delete a message I have created.
- So that when I realize I want to remove old, incorrect or unnecessary messages I can remove them.
- When I'm on the server page: I can click "Delete" to permanently delete a message I have created.
Direct Messages
Create a Direct Message
- As a logged in user, I want to be able to create a direct message.
- When I'm on the direct message page: I can write, edit and submit a direct message.
- So that I can effectively create a private chat to message only with friends of my choosing.
- When I'm on the direct message page: I can write, edit and submit a direct message.
Viewing Direct Message
- As a logged in user, I want to be able to view all direct messages that I have created.
- When I'm on the direct message page: I can view all direct messages I have created.
- So that I can choose who I would like to message privately.
- When I'm on the direct message page: I can view all direct messages I have created.
- As a logged in user I want to be able to view a single direct message that I have created.
- When I'm on the direct messages page: I can view the content of the direct message and associated messages.
- So that I can message privately with the friend(s) of my choosing.
- When I'm on the direct messages page: I can view the content of the direct message and associated messages.
Updating Direct Message
- As a logged in user, I want to be able to edit my messages by clicking an Edit button associated with the message.
- When I'm on the direct messages page: I can click "Edit" to make changes to messages that I have posted.
- So that I can fix any errors and update details.
- When I'm on the direct messages page: I can click "Edit" to make changes to messages that I have posted.
Deleting Direct Message
- As a logged in user, I want to be able to delete my direct messages by clicking a Delete button associated with the message.
- When I'm on the direct messages page: I can click "Delete" to permanently delete a message I have sent.
- So that when I realize I want to remove old or unnecessary messages I can remove it.
- When I'm on the direct messages page: I can click "Delete" to permanently delete a message I have sent.
Search
- As a logged in user, I want to be able to search for a specified message or post.
- When I'm on the direct messages page or a channel page: I can input individual words or phrases to find relevant or matching messages.
- So that I can filter large groups of messages or locate messages that I am looking for.
- When I'm on the direct messages page or a channel page: I can input individual words or phrases to find relevant or matching messages.