Files
Nicholas Carrigan (he/him) 8e62a243bb fix(learn): Update demo links (#40575)
* fix(learn): Replace demo projects

Replaces the Heroku demo project links with the
.rocks demo projects that @moT01 provided.

Signed-off-by: nhcarrigan <nhcarrigan@gmail.com>

* fix(learn): Use correct endpoint

Corrects the API endpoint for the image search
project.

Signed-off-by: nhcarrigan <nhcarrigan@gmail.com>

* fix: user stories to align with project + backticks

Co-authored-by: moT01 <20648924+moT01@users.noreply.github.com>
2021-01-21 11:09:35 -06:00

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
```