https://github.com/crock/discord-bot-utils
Core utilty classes for Discord.js bots
https://github.com/crock/discord-bot-utils
discord discord-bot discord-js firebase web-server
Last synced: 3 months ago
JSON representation
Core utilty classes for Discord.js bots
- Host: GitHub
- URL: https://github.com/crock/discord-bot-utils
- Owner: crock
- Created: 2019-10-18T18:08:40.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2019-12-07T00:10:04.000Z (over 6 years ago)
- Last Synced: 2025-02-28T19:48:23.079Z (over 1 year ago)
- Topics: discord, discord-bot, discord-js, firebase, web-server
- Language: JavaScript
- Homepage:
- Size: 19.5 KB
- Stars: 2
- Watchers: 4
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Discord.js Bot Utils
These are some core utility classes for Discord.js bots.
## Usage
Create a `.env` file in the root directory of your bot with the following keys:
```
# Discord
DISCORD_BOT_TOKEN=
# Miscellaneous Configuration
CMD_PREFIX=
WEB_SERVER_PORT=
API_ROUTE_PREFIX=
# Firebase Configuration
FIREBASE_API_KEY=
FIREBASE_AUTH_DOMAIN=
FIREBASE_DB_URL=
FIREBASE_PROJECT_ID=
FIREBASE_STORAGE_BUCKET=
FIREBASE_MESSAGING_SENDER_ID=
```
Don't forget to call `require('dotenv').config()` in the start file of your bot!
**Client module**
```js
const { Client } = require('@crock/discord-bot-utils');
Client.getClient();
Client.login();
```
**Auth (permission) module**
```js
const { Auth } = require('@crock/discord-bot-utils');
Auth.isOwner(Object member);
Auth.isAdmin(Object member);
Auth.isMod(Object member);
Auth.isRole(String 'foobar', Object member);
```
**Configuration module**
```js
const { Config } = require('@crock/discord-bot-utils');
Config.initConfig();
Config.resetConfig();
Config.reload();
Config.saveConfig();
Config.getBotToken();
Config.getServerPort();
Config.getApiRoutePrefix();
Config.getRef();
Config.getConfig();
Config.getCommandPrefix();
Config.getChannel(String name);
Config.getRole(String roleType);
Config.getVerifyMessage();
Config.setCommandPrefix(String prefix);
Config.setChannel(String channel_type, String id);
Config.setRole(String role_type, String id);
Config.setVerifyMessage(String id);
```
**Database module**
```js
const { DB } = require('@crock/discord-bot-utils');
DB.getDatabase();
DB.startListening(String path, String eventType = 'value');
DB.stopListening(String path = null, String eventType = null);
// Firebase database runtime logs are saved in firebase.log file.
// Log files can be found at logs/
DB.logData(data);
// Firebase database errors are saved in firebase.error.log file
DB.errorData(data);
DB.writeData(String path, Object data);
DB.updateData(String path, Object data);
DB.appendData(String path, Object data);
DB.deleteData(String path);
```