VotingApp
🔥 🗳️ 💻 Build a Voting App - FCC Challenge #MERN
Install / Use
/learn @Createdd/VotingAppREADME
📝 Author
Daniel Deutsch <kbd>Createdd.com / Github / LinkedIn / CodePen / Medium / Hashnode / E-Mail</kbd>
FreeCodeCamp Dynamic Web Application Projects:
Build A Voting App
<img src="http://g.recordit.co/1hzd8ISznt.gif" alt="gif"/> <!---  -->See live on Heroku
<p align="center">(Keep in mind that I am using the free tier version on Heroku, which can shut down when traffic is too high in a certain time period)</p> <p align="center"> <a href="https://ddcs-votingapp.herokuapp.com/">https://ddcs-votingapp.herokuapp.com/ </a> </p>Built with the MERN stack
|MongoDB|Express|React|NodeJS|
|--|--|--|--|
|
||
||
|a free and open-source cross-platform document-oriented database program|Fast, unopinionated, minimalist web framework for node.|a JavaScript library for building user interfaces|a JavaScript runtime built on Chrome's V8 JavaScript engine|
Photo credit
<p align="center"> <a href="https://unsplash.com">Unsplash.com</a> </p>User stories:
- [X] As an authenticated user, I can keep my polls and come back later to access them.
- [X] As an authenticated user, I can share my polls with my friends.
- [X] As an authenticated user, I can see the aggregate results of my polls.
- [X] As an authenticated user, I can delete polls that I decide I don't want anymore.
- [X] As an authenticated user, I can create a poll with any number of possible items.
- [X] As an unauthenticated or authenticated user, I can see and vote on everyone's polls.
- [X] As an unauthenticated or authenticated user, I can see the results of polls in chart form. (This could be implemented using Chart.js or Google Charts.)
- [X] As an authenticated user, if I don't like the options on a poll, I can create a new option.
A FreeCodeCamp Challenge
<p align="center"> <a href="https://www.freecodecamp.org/challenges/build-a-voting-app">Build a Voting App</a> </p>Issues / Bugs / Further features
There are already issues open! Feel free to add feedback:
Frameworks / Libraries
| Name | Description |Used|
|----------|-------|---|
| React | Fast, composable client-side components. | Frontend |
| Redux | Enforces unidirectional data flows and immutable, hot reloadable store. Supports time-travel debugging. | Frontend |
| React Router | A complete routing library for React | Frontend | Compiles ES6 to ES5. Enjoy the new version of JavaScript today. | Frontend |
| React Google Charts | A React Google Charts Wrapper | Frontend |
| Axios | Promise based HTTP client for the browser and node.js | Frontend |
| MaterializeCSS | A a CSS Framework based on material design. | Frontend |
| Express | For creating the backend logic | Backend |
| Mongoose | To work faster with MongoDB | Backend |
| Passport | For simplified authentication in Node.js | Backend |
| Babel | Compiles ES6 into ES5 | General |
| Webpack | Bundles npm packages and our JS into a single file. | General |
| ESLint| Lint JS. Reports syntax and style issues. | General |
