38 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			38 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| ---
 | |
| id: bd7158d8c443eddfaeb5bdef
 | |
| title: Build a Voting App
 | |
| challengeType: 4
 | |
| forumTopicId: 302359
 | |
| dashedName: build-a-voting-app
 | |
| ---
 | |
| 
 | |
| # --description--
 | |
| 
 | |
| Build a full stack JavaScript app that is functionally similar to this: <https://voting-app.freecodecamp.rocks/>. Use a site builder of your choice to complete the project.
 | |
| 
 | |
| Here are the specific user stories you should implement for this project:
 | |
| 
 | |
| **User Story:** As an authenticated user, you can keep my polls and come back later to access them.
 | |
| 
 | |
| **User Story:** As an authenticated user, you can share my polls with my friends.
 | |
| 
 | |
| **User Story:** As an authenticated user, you can see the aggregate results of my polls.
 | |
| 
 | |
| **User Story:** As an authenticated user, you can delete polls that I decide I don't want anymore.
 | |
| 
 | |
| **User Story:** As an authenticated user, you can create a poll with any number of possible items.
 | |
| 
 | |
| **User Story:** As an unauthenticated or authenticated user, you can see and vote on everyone's polls.
 | |
| 
 | |
| **User Story:** As an unauthenticated or authenticated user, you can see the results of polls in chart form. (This could be implemented using Chart.js or Google Charts.)
 | |
| 
 | |
| **User Story:** As an authenticated user, if you don't like the options on a poll, you can create a new option.
 | |
| 
 | |
| When you are done, make sure a working demo of your project is hosted somewhere public. Then submit the URL to it in the `Solution Link` field. Optionally, also submit a link to your project's source code in the `GitHub Link` field.
 | |
| 
 | |
| # --solutions--
 | |
| 
 | |
| ```js
 | |
| // solution required
 | |
| ```
 |