Skip to content

Fyurie/aquarius

 
 

Repository files navigation

Aquarius

Aquarius is a general purpose Discord chat bot. If you would like to add Aquarius to your server, click here.

Aquarius Assistance

If you have questions, concerns, suggestions, or need general assistance, please create an issue, tweet @IanMitchel1, or join Aquarius's Discord Server.

Development Guide

Aquarius is a Node.js application that integrates with Firebase Cloud Firestore. It is hosted on Zeit's Now.

Setup

You'll first need to create a bot and add the bot to a development server.

You'll then need to install v10 or later of Node.js.

Sign up for a Firebase account and create a Cloud Firestore database. To connect to it, create a file named .keyfile.json with your Firebase credentials. You can follow the instructions here to get the contents of the file.

Finally, create a file named now-secrets.json with the following structure:

{
  "@aquarius-env": "development",
  "@aquarius-token": "token",
  "@aquarius-client-id": "id",
  "@aquarius-firebase-keyfile": ".keyfile.json",
  "@aquarius-firebase-project": "database-name"
}
Additional Optional Fields
  • "@aquarius-sentry": "url" - Integrates with Sentry error reporting
  • "@aquarius-dictionary-api-key": "key" - Enables the Dictionary command
  • "@aquarius-test-bot-token": "token" - Enables the test framework (WIP)
  • "@aquarius-hearthstone-key": "key" - Enables the Hearthstone command
  • "@aquarius-timber-key": "key" - Enables logging to Timber
  • "@aquarius-showtimes-server": "url" - Enables the Deschtimes command
  • "@aquarius-showtimes-key": "key" - Enables the Deschtimes command
  • "@aquarius-tvdb-api-key": "key" - Adds Images to the Deschtimes Command
  • "@aquarius-github-api-token": "token" - Enables the Release command to automatically notify users of updates
  • "@aquarius-dark-sky-api-key": "key" - Enables the Weather command
  • "@aquarius-mapbox-api-key": "key" - Enables the Weather command

Once the file is created, run:

$ yarn install

This will fetch all the dependencies needed to run the bot. You can then start Aquarius by running:

$ yarn start

The bot will take a few seconds to connect. You can test it by sending ping in a channel it can respond in (Aquarius should reply with pong).

Adding New Commands and Plugins

For further information on creating Commands and Plugins check the Wiki.

Visual Studio Code

The repository is setup to work well with Visual Studio Code. You can add breakpoints and run the "Launch Aquarius" task to start the bot in "Debug" mode. Many of the core APIs also have JSDoc integrations for VS Code's intellisence.

About

A highly configurable discord bot.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 100.0%