SCOUTOPIAN - Discord Bot which analyses compliance with the Utopian's contribution rules
SCOUTOPIANDISCORD BOT
Scoutopian is designed to be a utopian.io Discord Bot which will check contributions to give users/mods an opinion whether the contribution meets the rules.
Features
1- GitHub repository
- Looks for README.md and LICENSE files in the repo
- Checks if the last commit is older than 1 year
- Compares Utopian and GitHub names of the contributor. (for development category)
- Scoutopian will also search for the utopian username in the body of pull request if GitHub username is not same as utopian name.
- Gives an estimated score calculated by SOFT and HARD rules of Utopian
2- Downvotes
- Look for downvotes of the accounts/bots listed below
- @steemcleaners
- @cheetah (upvotes will also count)
- @mack-bot
- @spaminator
3- Coming Features & Roadmap
- All possible rules will be added including category rules
- If you have any suggestion or noticed a bug to report; you can contact me on Discord (@techrube#9826).
How to set up:
1 - Create a Discord App & a Bot User
- Visit this link: https://discordapp.com/developers/applications/me
- Click the
New App
button and fill the necessary information - Click the
Create a Bot User
button
2 - Add the Bot User to Your Discord Server
- Copy "Client ID" under app details section and paste it to its place in this link:
https://discordapp.com/oauth2/authorize?&client_id=<CLIENT ID>&scope=bot&permissions=0
(You can also useOAUTH2 URL GENERATOR
)
3 - Set Environment Variables
- Copy the bot user token from the Discord App page
- Set the
DISCORD_BOT_TOKEN
in your.env
using your bot token that you just copied.
Technology Stack
Language: Javascript
Server Framework: Node.js
The icon is a modified form of a design which provided by Freepik
Libraries
- Steem.js - Interacting with the Steem Blockchain
- Eris - Interacting with the Discord API
- Cheerio - Server side jQuery implementation
- Request - To make http calls
Preview
Sample Case 1: Utopian username does not match with GitHub username and cannot found attached to pull request or name field on the GitHub profile page of the contributor. (This check is specific to development category)
Sample Case 2: Contribution is flagged by at least one of the cleaner accounts/bots
Posted on Utopian.io - Rewarding Open Source Contributors
Hey @wehmoen, I just gave you a tip for your hard work on moderation. Upvote this comment to support the utopian moderators and increase your future rewards!
Hey @techrube I am @utopian-io. I have just upvoted you!
Achievements
Community-Driven Witness!
I am the first and only Steem Community-Driven Witness. Participate on Discord. Lets GROW TOGETHER!
Up-vote this comment to grow my power and help Open Source contributions like this one. Want to chat? Join me on Discord https://discord.gg/Pc8HG9x