llapresi / fastpoll Goto Github PK
View Code? Open in Web Editor NEWReal time polling app developed using React, Pusher, Express and Sequelize
Home Page: https://fastpoll-app.herokuapp.com/
License: MIT License
Real time polling app developed using React, Pusher, Express and Sequelize
Home Page: https://fastpoll-app.herokuapp.com/
License: MIT License
Add support for unlisted polls only accessible from URL and not listed on the homepage's poll list.
Currently users can vote as many times as they want on a poll. Proposed solution for preventing this involves creating a IPPoll table recording if a given IP address voted for a poll and preventing voting if a corresponding entry exists.
UI is currently lacking compelling presentation and looks extremely basic.
Add Poll logic could use quite a bit of work to be honest.
Currently validation for creating polls only comes in the form of getting JSON back from Sequelize's validation logic. Ideally there should be a client side validation layer that highlights required fields if they are not filled out (ex. poll name and poll option names).
Currently integration tests written for the server. Need to test API and database responses for successfully
Along with error handling
Create Poll form currently looks pretty ugly. Updating it to use the newer styling that the poll voting page does would help improve this quite a bit.
Currently the ability to add public polls is not exposed to end-users for a variety of reasons (incl. content concerns, possible bugs, etc)
Currently no unit/integration tests written for the server. Need to test responses for successfully
Along with error handling
Poll Voting page currently flashes and relayouts after fetching the poll data from the API. Ideally, this should be a non-intrusive, animated transition.
Right now duplicate votes are prevented by setting a key in local storage indicating that you have voted for a given poll. This is not a very secure way of stopping duplicates at all (you can easily open an Incognito Tab to get around this) but for the most part is "decent enough" for most casual use cases.
For anything needing a more secure system of preventing duplicates (or at the very least, a way to make duplicate voting more annoying), however, some kind of account/auth based system would probably be ideal.
Validation currently sends a somewhat big JSON message back to client via. Sequelize's error handling. This could probably be shorted to just the relevant text.
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.