Giter VIP home page Giter VIP logo

fastpoll's People

Contributors

llapresi avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

fastpoll's Issues

Unlisted polls

Add support for unlisted polls only accessible from URL and not listed on the homepage's poll list.

Prevent duplicate voting

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 Refresh

UI is currently lacking compelling presentation and looks extremely basic.

Add Poll Revision (incl. Client Validation)

Add Poll logic could use quite a bit of work to be honest.

Validation

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).

Write Integration Tests

Currently integration tests written for the server. Need to test API and database responses for successfully

  • Listing polls
  • Finding poll by id
  • Creating poll
  • Submitting vote

Along with error handling

Allow Public Polls

Currently the ability to add public polls is not exposed to end-users for a variety of reasons (incl. content concerns, possible bugs, etc)

Unit/Intergration Tests for Server/API

Currently no unit/integration tests written for the server. Need to test responses for successfully

  • Listing polls
  • Finding poll by id
  • Creating poll
  • Submitting vote

Along with error handling

Poll Voting Page Flashing on load

Poll Voting page currently flashes and relayouts after fetching the poll data from the API. Ideally, this should be a non-intrusive, animated transition.

Add Options for Duplicate Prevention

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.

Format validation error messages

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.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.