-
Notifications
You must be signed in to change notification settings - Fork 1
User Stories
Melinda Cortez edited this page May 31, 2023
·
3 revisions
- As an unregistered user, I want to be able to sign up for the website via a sign-up form.
- When the sign up form opens:
- I would like to be able to enter my email, username, and preferred password.
- I would like the website to log me in upon successful completion of the sign-up form to instantly access site functionality.
- I would like the website to inform me of any 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 the sign up form opens:
- As a registered 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.
- Upon logging in I would like to be directed to my list of private messages.
- I would like the website to log me in upon successful completion of the form.
- 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.
- When I'm on the
- 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
- As a logged in user, I want to log out via an easy to find log out button in the user dropdown or at the bottom of the navigation bar on the left of the page.
- While on any page of the site:
- I can log out of my account and be redirected to the login form.
- While on any page of the site:
- As a logged in user, I want to be able to create new servers via an easy to find button on the side navigation bar.
- When I'm on the form to create a server:
- I can name my server and upload a picture for the icon.
- Upon successfully creating a new server I would like to be directed to the server's main channel.
- When I'm on the form to create a server:
- As a logged in user, I want to be able to view a list of the servers I am a part of on the side navigation bar as well as a button to explore other servers I am not currently apart.
- As a logged in user, I want to be able to view a list of the servers I am a part of on the side navigation bar as well as a button to explore other servers.
- When I'm on a single server page:
- I can view a list all of the channels associated with the server.
- As a logged in user who doesn't own the server I want to be able to see a dropdown next to the server name at the top of the page that opens a menu with an option to invite someone to the server or leave a server
- When I'm on a single server page:
- As a logged in user who owns the server, I want to be able to invite users to the server, create channels, create categories.
- I should be able to access this functionality through a dropdown next to the server name at the top of the page.
- I want to be able to access server settings through the dropdown to assign roles to users on the server.
- As a logged in user who is also the owner of the server, I want to be able to delete my server by navigating to the server settings through the server dropdown menu.
- When I click on the delete server button I want a modal to popup to confirm I want to delete the current server.
- When I confirm delete I want to be redirected to the direct messages server.
- As a logged in user, I want to be able to view a list of the channels I have access to next to the server list off to the left of the application.
- As a logged in user I want to be able to see each category for all the channels
- As a logged in user if I am the owner/admin I also want to see an easy way to add/edit and delete a channel.
- This should be an add button to create a new channel
- There should be a settings icon to edit or delete a channel
- When I am on a single channel I should see
- The name of the channel at the top and a list of all the prior messages in that channel
- An empty input field to insert messages into
- As a logged in user who is also owner/admin I should see an add button next to each category of channels.
- Clicking on this button should open a modal that allows me to choose a channel name, a submit button and whether it is private or
- As a logged in user who is also owner/admin clicking on the server name at the top of the server via the server drop down will show an option to add a channel
- Clicking on this button should open a modal that allows me to choose a channel name, a submit button and whether it is private or
- As a logged in user who is also owner/admin I should be able to see a settings icon next to each channel and clicking on it
- will open a modal that lets me change the name of the channel or delete it
- As a logged in user who is also owner/admin I should be able to see a settings icon next to each channel and clicking on it
- will open a modal that lets me delete it
- if I click delete a modal will open and I will have to confirm I want to delete
- After confirming delete I should be redirected back to the welcome channel
- As a logged in user who is a part of a server, when I click on a channel in the server I want to see all the messages associated with that channel open to the side of the channel list.
- I want to be able to see new messages pop up at the bottom of the list real time.
- I want the messages to include the username of who wrote the message as well as the date a time the message was written.
- I want to see an icon with the amount of reactions each message has at the bottom left of the message.
- As a logged in user who is a part of a server, when I am looking at channel messages, I want to have an empty input field at the bottom of the messages that allows me to write a message to the channel.
- When I add a new message to the channel I want the message to instantly pop up at the bottom of the list for myself as well as other users currently viewing the channel.
- When I mouseover a message written by another user, I want to see a menu popup at the top right of the message with a reply button that allows me to reply to that specific message as well as a button that allows me to react to the message.
- As a logged in user who is part of a server and currently viewing a channel, when I mouseover any message I wrote, I want a menu to pop up at the top right of the message that has an edit button to edit my message.
- When I click to edit the message, I want a the textarea to turn into an input textarea prepopulated with the current message for me to edit.
- When I hit enter I want the edited message to be saved and the message to be instantly updated in the message list with a small text indicating the message was edited at end of the message.
- When I click to edit the message, I want a the textarea to turn into an input textarea prepopulated with the current message for me to edit.
- When I delete a message I want a pop up to display to confirm if I want to delete the message.
- The pop up should display the message, the username of the message creator, the time/date stamp of the message, and any reactions the message has received.
- There should be a button to confirm or cancel the delete.
- Only the creator of the message or a server owner/admin should be able to delete a message.
- When I click to view all of my direct messages, I should see a list of all the users I have messaged in the past sorted with the conversation that had a message sent most recently on top.
- I should see the messages in the conversation at the top of the list when I click on the direct message tab.
- I should be able to click through a list of users and have the conversations displayed.
- When viewing a conversation with a user, I should be able to send a message through a text input at the bottom of the window. It should be live chat with the user I'm chatting with seeing my messages after a short delay without refreshing.
- I should be able to delete any direct message with another user that I am the creator of.