Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/joecars/nerman
Nerman is not a Real Person, but he's great at listening
https://github.com/joecars/nerman
Last synced: 11 days ago
JSON representation
Nerman is not a Real Person, but he's great at listening
- Host: GitHub
- URL: https://github.com/joecars/nerman
- Owner: JoeCars
- Created: 2022-01-08T00:30:33.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2024-09-16T16:34:01.000Z (2 months ago)
- Last Synced: 2024-09-16T20:19:23.224Z (2 months ago)
- Language: JavaScript
- Size: 1.6 MB
- Stars: 3
- Watchers: 3
- Forks: 2
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Nerman
## Description
Nerman is a Discord governance bot designed with the express purpose of improving [Nouns](https://nouns.wtf/) community interactions, encouraging participation, and notifying community members of Noun proposals and sales.
## Development
### Requirements
---
To help develop Nerman, you will need the following:
- **[Git](https://git-scm.com/):** For source code version control.
- **[Node.js](https://nodejs.org/):** For the main development environment.
- **[MongoDB](https://www.mongodb.com/):** For the database.
- **[Discord](https://discord.com/):** To set up your own bot.
- **[Alchemy](https://www.alchemy.com/):** To track Nouns' blockchain activity.### Installation
---
To install Nerman, simply execute the following commands in the terminal:
```
git clone https://github.com/JoeCars/Nerman.git
cd Nerman
npm install
```### Additional Setup
---
1. **Create a Discord bot:** Follow this guide on [how to setup a Discord bot](https://discordjs.guide/preparations/setting-up-a-bot-application.html#your-bot-s-token).
2. **Setup A Database:** This can either be a cloud server or a locally-run MongoDB server.
3. **Add Environmental Variables:** Ensure you add the appropriate environmental variables.Once everything is ready, you can start the bot using `npm start`.
### Bot Scopes
---
For the bot to work, you need to give it the following permissions and scopes. The reasons for needing each scope is provided.
- guilds:
- Used to get all the active guild members before filtering them for role type in the voter threshold.
- guild.members.read:
- Nerman needs this in order to analyze the users in possessions of the voting role, which are needed for voting threshold calculations.
- bot:
- Need this to place the bot in the user's guild
- message.read:
- Nerman requires this scope so that it can read messages from all channels, rather than being restricted to just the guilds/channels created by the app.
- application.commands:
- This scope is added so that Nerman can use the slash commands available in the guild.
### OAuth2 Template URL
---
To invite the bot, you may be required to provide an OAuth2 URL. Please use the following template. Replace the `#` symbols after `client_id` with the client id value found in the Discord development portal.
```
https://discord.com/api/oauth2/authorize?client_id=##################&permissions=36507543616&redirect_uri=https%3A%2F%2Fwww.google.com&response_type=code&scope=guilds%20bot%20guilds.members.read%20applications.commands%20messages.read
```