It never hurts to pull before you start working
Also lets just have a seperate branches for each sprint that we can merge into our main branch whenever finished our current sprint.
Given a user who is not logged in, when they encounter a post, they can view it and click on it to see the associated comments
Given a user who is not logged in, when they try to click the upvote or downvote button, they will see a message that says "create an account to vote on posts and comments" and automatically be taken to the registration page
Given a user is not logged in, when they click on the login page, then they are directed to the login page
Given a user is logged in, when they are click on the login page, then they should be directed to their dashboard page
Given a user is not logged in, when they click on the flag button, then they will be redirected to the login page.
Given as user is logged in, when they click on the flag button, then they can see a small window that has information about the flag.
Given a user wants to post to a specific group, when they are on the create post page, then they should see fields to enter the post title, content, etc.
Given a user wants to publish their post, when they click submit, then the post should appear in the correct group
Given that the requested profile does not exist, when the user searches for the profile's username, a text pop-up will say "No Profile Found", showing no posts in the dashboard.
Given that the requested profile exists, when the user searches the profile's username, then posts from all other users will be filtered out
Given a user wants to see their rank, when they click on their profile, they should see a banner that displays their current rank
Given a user wants to see how many awards they have received, when they click on their profile, they should see a count that shows the number of awards they have earned
Given the user clicks add name, the user a enters their first and last name
Given they click edit username, they can add their own user name
Given the user clicks confirm on a popup , the changes are saved
Given an admin user is logged in, when they create a post, they can choose to flag their post before posting it.
Given a flagged post created by an admin, when another admin clicks on the edit flag button, they can still change the flag color or unflag the post.
Given a user wants to add a photo, the user clicks on the add photo button to access the library
Given the user is presented with the permission popup, when the user clicks allow, the user should be able to see images in the library to choose from
Given the user clicks confirm on a popup, the changes are saved
Given the user clicks exit on the popup, the changes are erased
Given a user finds a post they want to give an award to, when they click on the give award button, then a badge should appear on the post displaying the award
Given a user finds a post that they have already given an award to, when they click on the give award button, then a message should appear saying that they have already given an award to that post
Given that there are no posts that include the desired text, when the user clicks search, no posts will be shown in the dashboard with a text icon saying "No Posts Found"
Given that a post that includes the desired text exists, when the user clicks search, only posts with the included text would be shown (ranked by popularity)
Given a user has not selected a desired timeframe, when the user views the dashboard, a time/text icon indicates that the user is viewing the most popular posts from today, and in the dashboard, posts from the last 24 hours will be shown first before any other posts.
Given a user has not selected a desired timeframe and the user has scrolled past all posts from the past 24 hours, the time/text icon will change from "most popular from today" to "most popular of all time", displaying the rest of the posts in order of popularity.
Given a user is viewing the dashboard, when the user clicks on the time icon, the following options will be presented: Today, This Week, This Month, This Year, and All Time.
Given a user has clicked a timeframe, when the user views the dashboard, the most popular posts from the desired timeframe will be shown prior to any other posts.
Given a user wants to reply to a post, when they click the reply button on that post, then a text field should appear below the post where they can type their reply.
Given a user wants to publish their reply, when they click submit, then the reply should appear below the post
Given a user who has an account, when they enter the correct username and password combination on the login page, then they will be taken to the logged-in user homepage (which has a space at the top to write a post and post it in a community) and other posts that they can view/comment on below this space
Given a user who has an account, when they enter the incorrect username and password combination on the login page, the website will display a message that says "incorrect username/password combination", clear the username and password fields, and have them log in again
Given a user who has an account, when they don't enter any username/password combination on the login page, the website will display a message that says "incorrect username/password combination", clear the username and password fields, and have them log in again
Given a user has contributed to the site, when they have posted a certain number of posts/replies, then a badge appears by their name displaying their current rank
Given a user has a rank, when they submit a new post, then their accurate rank should appear next to their name
Given a user wants to upvote or downvote a post, when they view a post, then there should be buttons to upvote and downvote that post.
Given a user wants to see the amount of points a post has, when they view a post, there should be a number next to the upvote/downvote buttons that displays the current number
Given an admin wants to unflag a flagged post, when they click on the edit flag button, then they can choose to unflag the post.
Given an admin has already unflagged a post, when they want to unflag the post again, then they should instead receive a warning.
Given a user wants to add their car company, they click a drop down menu
Given the user wants to enter a car company, a drop down menu will show all the car companies available
Given the user clicks confirm on a popup, the changes are saved Given the user clicks exit on the popup, the changes are erased
Given a user who does not have an account, when they enter a unique username (the username is not already in use), the website will accept the username
Given a user who does not have an account, when they enter a username that is already taken (which is bad!) the website will not accept the username and ask them to input another username
Given the user clicks edit password, they can change the password
Given the user does not enter a new password that is the same as the last one, the password is valid
Given the user clicks confirm on a popup , the changes are saved
Given the user clicks exit on the pop up, the changes are erased
Given an admin finds a user that they feel does not deserve their current rank, when they click on the remove rank button, then the rank should disappear from that user
Given an admin finds an awarded post that they feel should not have that award, when they click on the remove award button, then the award should disappear from that post
Given a user wants to create a group, when they are on the group creation screen, then they should see forms to enter the group name, description, etc .
Given a user wants to finalize the creation of their group, when they click the finish button, then they should see a page with all the correct information about the group
Given there is a flagged post, when the admin click on the edit flag button, then they can choose to change the color of the flag.
Given an admin is changing a flag's color, when they select the new color, then they can save these changes.
Given a user who is not logged in, when they search for a community using the search bar at the top, then they will find the relevant communities (or communities similar to what they are looking for) when the press the "search" button
Given a user who is not logged in, when they search for a community using the search bar at the top and enter the name of a community that is not on the website, then they will find a "no community found" page/result
Given a user who does not have an account, when they click "create account" on the login page, they will be taken to a registration page
Given a user who does not have an account, when they try to log in and the username/password combo is not detected, then they will automatically be taken to the registration page
Given the user clicks add groups and tags, they can enter the tags and communities they are in
Given an admin wants to flag a post, when they're flagging a post, then they can write their reasons for flagging in a text box.
Given a flagged post, when the admin who flagged it clicks on the edit flag button, they can change their original comment.
Given a flagged post, when an admin (not the one who flagged it) wants to change the comment, they cannot and must instead flag the post for themselves.
Given a user wants to change information about their group, when they are on the edit group page, then they should see fields with the old information pre filled into them that they can make changes to.
Given a user wants to save their changes, when they click the save button, then they should see the acurate information on the group page
Given a user who is not logged in, when they encounter a post or comment thread, they can view it and click on it to see the associated comments
Given a user who is not logged in, when they try to create a post or write a comment, they will see a message that says "create an account to make posts and write comments" and automatically be taken to the registration page
Given the user finished entering all my changes and made my final edits, the user clicks the save button
Given the save button is clicked, the changes the user made in all the sections are loaded onto their profile
Given a user wants to join a group, when they click the join button, then they should be added to the group's member list.
Given a user wants to see what groups they are in, when they go to ther profile, then they should see a list of what groups they are members of
Given a user wants to delete a post, when they click the delete button on the post, then the post should no longer appear in the group.
Given a user wants to delete a reply, when they click the delete button on the reply, the reply should no longer appear below the post.
Given a user is not logged in, when they first enter the CarTalk URL and go to the website, then they will be taken to the home page with popular posts and an option to log in to the website
Given a user is not logged in, if they enter the wrong URL, then they are thrown an error
Given the user clicks the button history, they can view all their interactions on the dashboard
Given they click history, they can scroll and view the entirety of their history from the last week
Given a user is logged in, when they see all of the posts, then they should see if posts are flagged or not.
Given a user is not logged in, when they see the posts, then they should also see if posts are flagged or not.
Given a user wants to see posts, when they are presented these posts, then all of the flagged posts should be at the top of the page.
Given a post is flagged red, when the post has been flagged red by three admins, then the post should be automatically removed.
Given a post is flagged red, when the third admin flags the post red, then a message should appear informing the admin that the post has been deleted.
Given an admin wants to flag a post, when they click on the edit flag button, then they can choose to flag the post.
Given an admin is flagging a post, when they confirm that they're flagging a post, then they decide if the flag should be green (positive/popular) or red (negative/problematic).
Given an admin has already flagged a post, when they want to flag the post again, then they should instead receive a warning.
Given a new user is making an account, when they select a specific car company from the dropdown menu, they will automatically be added to that company's community in CarTalk
Given a user who does not have an account, when they select "I don't have a car" (this is an option on the dropdown), they will be added to a random car company's community
Given a user who does not have an account, when they don't select anything from the dropdown menu, they will be prompted to select a car company (or if they don't have a car, select "I don't have a car")
Given a user who does not have an account, when they enter a password that meets the requirements (the password is 8 or more characters), the website will accept the password
Given a user who does not have an account, when they enter a password that doesn't meet the requirements (the password is less than 8 characters), the website will not accept the password and ask them to input another password that is 8 or more characters
Given a user who does not have an account, when they don't enter the password, the website will not accept the password (because it is null/empty) and ask them to input a password
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.