You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

80 lines
2.4 KiB

[![Join the Discord chat at https://discord.gg/rAAQG9S](https://img.shields.io/discord/705322981102190593.svg)](https://discord.gg/rAAQG9S)
[![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](https://opensource.org/licenses/MIT)
# Majority Judgment Polling (for Streamers)
Organize a majority judgment poll in a few seconds _(as low as 0.5s, by hitting `Enter` twice)_, and let your community vote on it through one of the _providers_, like your Twitch Chat, using commands such as `A2 B1 C4`.
[![A short demo of the application](https://img.youtube.com/vi/6JnTlUcu1nA/0.jpg)](https://www.youtube.com/watch?v=6JnTlUcu1nA)
## Overview
This is a distributable project made with Godot Game Engine, and there is no server-side to this application.
All the data is held by the streamer, on their computer, whether they're using a binary executable or the web application on _itch.io_.
By design, the ballots are open, which may be unsuitable for politics, but it will allow us to enable delegation features, and we find that exciting!
Perhaps there is a way to close the ballots (using whispers, a Twitch js overlay or some other trick).
## Disclaimer
The project is in a **PRIVATE ALPHA** stage.
We're looking for streamers willing to test it out and help us improve the software by making it crash in a number of interesting ways.
Open an issue in our tracker, or join us on [Discord](https://discord.gg/rAAQG9S).
## Chat Commands
Vote Chat Commands are in the form:
```
<CandidateLetter><GradeValue>
```
Letters start with `A` (duh), and each candidate gets attributed a different letter when they are added to the poll.
Grades start at `0`, and their meaning is as follows:
0. TO REJECT
1. POOR
2. PASSABLE
3. GOOD
4. VERY GOOD
5. EXCELLENT
This is an example of meaning for 6 grades.
We may support different gradings in the future.
## Add a new provider
1. Extend `MajorityJudgmentAbstractProvider`.
2. Register it in `App.gd`.
3. Add its toggle to the `SettingsForm` scene.
## Missing Features
- Delegation (yay!)
- Use the Poll Title :p
- More providers (Youtube live, IRC, CSV file, etc.)
- Option to align with bottom (perhaps tricky, perhaps not)
- Option to change the background color
- Save/Load polls (only the GUI left to do)
- Resilience to scale (Poll tallier may be vastly improved)
- Option to enable/disable logs
- Allow candidates to be added by the Chat
-
## LICENSE
_This is libre software._
MIT