Skip to content

ScannerRadio/ZeppelinBot

 
 

Repository files navigation

Development

These instructions are intended for bot development only.

👉 No support is offered for self-hosting the bot! 👈

Running the bot

  1. npm ci
  2. Make a copy of bot.env.example called bot.env, fill in the values
  3. Run the desired start script:
    - npm run start-bot-dev to run the bot with ts-node
    - npm run build followed by npm run start-bot-prod to run the bot compiled
    - npm run watch-bot to run the bot with ts-node and restart on changes
  4. When testing, make sure you have your test server in the allowed_guilds table or the guild's config won't be loaded at all

Running the API server

  1. npm ci
  2. Make a copy of api.env.example called api.env, fill in the values
  3. Run the desired start script:
    - npm run start-api-dev to run the API server with ts-node
    - npm run build followed by npm run start-api-prod to run the API server compiled
    - npm run watch-api to run the API server with ts-node and restart on changes

Running the dashboard

  1. Navigate to dashboard/
  2. npm ci
  3. Make a copy of .env.example called .env, fill in the values
  4. Run the desired start script:
    - npm run build compiled the dashboard's static files in dist/ which can then be served with any web server
    - npm run watch runs Parcel.js's dev server that automatically reloads on changes

Config format example

Configuration is stored in the database in the configs table

# role id: level
levels:
  "12345678": 100 # Example admin
  "98765432": 50 # Example mod

plugins:
  mod_plugin:
    config:
      kick_message: 'You have been kicked'
      can_kick: false
    overrides:
      - level: '>=50'
        config:
          can_kick: true
      - level: '>=100'
        config:
          kick_message: 'You have been kicked by an admin'
  spam:
    config:
      filter_words: ['heck']
    overrides:
      - channel: '1234'
        config:
          +filter_words: ['foo']
      - level: '>=50'
        config:
          -filter_words: ['heck']

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 93.2%
  • Vue 5.9%
  • Other 0.9%