kittsville / hypervote Goto Github PK
View Code? Open in Web Editor NEWLive approval ratings
Live approval ratings
The Activity Indicator currently uses opacity to indicate whether it should be displayed or not. This is not compatible with screen readers as opacity has no effect on them.
Hypervote is meant to be used on-the-go and deployed where conventional voting would have too much overhead. This means ease of voting via a mobile device must be a priority. Despite this no testing has been done on any smartphones!
The fancy button styling introduced in 67175e9 ruined the disabled/enabled styling of default buttons.
Currently voting can be done at any time and the results go unrecorded. This issue is about making voting only allowed between specific periods of time specified by admins.
Currently notifications are just logged to the console with a placeholder function UserNotification
. This issue seeks to add notifications visible in the UI.
Current there's no way of getting statistics for previous data points. Short of remembering, you don't know if 80% approval was 5 approval, 1 neutral, 0 disapproval or any other combination that makes for 80%.
Using a function on each point's draw event these numbers could be added to the graph.
Whether they should be always visible or appear on hover or on click is all up for debate.
Given how many more important things there are to work on I've no plans to implement this for a while.
Currently voting data is calculated based on all existing votes. When a vote expires it's gone forever. It would be useful to have this data archived and made public for analytics purposes.
Once #4 is implemented it'd be simple to add a scheduled event that saves the app/neu/dis vote counts every minute.
Accessibility, ease of use, etc.
Requests do not have to return in the order they were sent. This can lead to one result returning before another. If the results arrays (data and labels) are not sorted by their timestamps the graph could end up displaying points out of order, like so:
0 seconds --- 6 seconds ---- 3 seconds --- 9 seconds
a, n and d are used as a keyboard shortcuts for ease of voting. Currently they are activating when the keys are pressed, even if Ctrl and/or Alt were being held at the time. Understandably people shouldn't expect voting to occur when using unrelated keyboard shortcuts such as Ctrl + N (new window).
This can be fixed with a simple check to see if Ctrl or Alt are being held. It's included in the keyboard event passed to the UI handler.
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.