Welcome to the Contest Vote App! This app is designed to make your subreddit contests fair and transparent by replacing anonymous upvotes with controlled votes, ensuring only eligible users can participate. Votes are securely stored and displayed on a dedicated wiki page for full transparency.
- Controlled Voting: Define specific eligibility criteria such as account age and flair.
- Customizable Rules: Adjust voting rules to suit your community’s needs.
- Transparent Logs: Voting logs and results are saved on wiki pages accessible to moderators.
- Error Handling: Users are notified with detailed reasons if their vote is not accepted.
- Moderator Tools: View, remove, or clear votes from the database.
- Go to the Devvit App Directory and install the Contest Vote App on your subreddit.
- Once installed, the app will automatically set up the required wiki pages (perms: mod only) and send you a welcome message in Modmail.
- Access the app’s settings via the Config Page:
- Enable Voting: Toggle the
Enable voting?option to activate or deactivate voting. - Flair ID: Enter the
Flair IDof posts eligible for voting. - Account Age: Set the minimum age (in days) required for users to vote.
- Flair CSS Class: Specify the user flair CSS class required to vote.
- Enable Voting: Toggle the
- Save your settings.
- Required Settings: Both Account Age and Flair CSS Class must be defined for the app to function properly.
The app automatically creates a user flair titled "Verified contest participant" and updates your AutoMod script (with user flair ID) to handle participant verification. However, due to Reddit API limitations, you need to manually assign the CSS class verified to this flair:
- Go to your subreddit’s User Flair Settings.
- Locate the flair titled "Verified contest participant".
- Edit this flair and add the CSS class 'verified'.
- Save your changes.
When installed, the app adds the following rules to your AutoMod configuration:
- Trigger: When users comment !contest.
- Minimum Subreddit Karma: 50 (users must have at least 50 subreddit karma to participate).
- Action: Assign the "Verified contest participant" flair to eligible users and notify them with a confirmation message.
These settings were added to simplify setup but can be customized in your AutoMod configuration. Feel free to adjust them to better fit your community's needs!
- Announce the Contest:
- Inform your community about the contest rules and voting eligibility.
- Enable Voting:
- Ensure
Enable voting?is toggled toONin the settings.
- Ensure
- Monitor Logs:
- Check the Logs Wiki Page to track votes and any issues.
- View Voters:
- Use the [Contest Vote] Show all users from database menu option to get a list of all voters.
- Remove a Vote:
- Use the [Contest Vote] Remove User from database option to remove a specific user’s vote.
- Provide the username and an optional note.
- Clear All Votes:
- Use the [Contest Vote] Remove all users from database option to reset the voting database.
-
Contest Vote Wiki
- Access it at: https://reddit.com/r/YOUR_SUBREDDIT_NAME/w/contest-vote
- Contains links to logs, votes, and error codes.
- Logs and Votes wiki pages are, by default, visible only to moderators. After the contest ends, moderators can make these pages public if desired.
-
Logs Wiki
- Access it at: https://reddit.com/r/YOUR_SUBREDDIT_NAME/w/contest-vote/logs
- Tracks all voting attempts, reasons for failure, and successful votes.
-
Votes Wiki
- Access it at: https://reddit.com/r/YOUR_SUBREDDIT_NAME/w/contest-vote/votes
- Displays all recorded votes for the contest.
- VOTING_DISABLED: Voting is not enabled.
- MISSING_FLAIR: User does not have the required flair.
- LOW_ACC_AGE: User’s account is too new to vote.
- ALREADY_VOTED: User has already voted.
- NOT_CONTEST_POST: The post is not part of the contest.
- [Contest Vote] Show all users from database:
- View a list of all users who have voted.
- [Contest Vote] Remove User from database:
- Remove a specific user’s vote with an optional note.
- [Contest Vote] Remove all users from database:
- Clear all votes and restart the voting process.
- The user will receive a private message explaining why their vote was not recorded. The reason will also be logged on the Logs Wiki Page.
- Yes, moderators can vote if they meet the eligibility criteria set in the app’s settings.
- Clear all votes using the [Contest Vote] Remove all users from database option.
- Adjust settings as needed and enable voting.
The source code for the Contest Vote App is available on GitHub.
This project is licensed under the BSD-3-Clause License. This app was developed in compliance with Reddit's Developer Terms and adheres to the guidelines for the Devvit platform.
If you encounter any issues or have questions, please contact me via Modmail.
Thank you for using Contest Vote App! I hope it enhances your community’s contests and makes them fairer and more transparent.