Venat
Venat is an open-source Discord bot for the Final Fantasy XIV community that is incredibly easy to self-host.
Description
We aim to offer the following features:
- Provide moderation and role management.
- Provide integrations with popular ffxiv services and streaming sites.
- Provide fun community features like music, games, and give-aways.
- Provide admin dashboard for managing the bot.
We are working towards building this in a modular way, so that you can pick and choose what features you need for
your server. This modular approach should also allow Venat to be extended to other game communities in the future.
Warning
Venat is in very early development and is not yet intended for general use. It's available now for developers and other contributors.
Development
Pre-requisites
- Node >=16.6.0
- Newer Node versions may be supported, but Venat is currently developed and tested only with Node 16.x.
- Yarn
- Docker
- nvm (optional)
Setup Bot
- Log into Discord portal: https://discord.com/developers/applications.
- Create new application.
- Select OAuth2 on left side.
- Select Reset Secret.
- Copy client secret and save for later.
- Select URL Generator on left side.
- Select the following scopes:
- bot
- applications.commands
- Select the following bot permissions:
- Administrator
- Copy generated url for later.
- Select Bot on left side.
- Add Bot to application.
- Update the following settings:
- Presence Intent: On
- Server Members Intent: On
- Message Content Intent: On
- Select the following bot permissions:
- Administrator
- Open generated url in web browser to authorize.
Setup Workspace
- Fork repo https://github.com/the-convocation/venat.
- Clone fork to local workspace.
- Create copy of core/.env.example and rename to .env.
- Update the following env variables in .env:
- Set TOKEN to the client secret from previous step.
- Set GUILD_ID_WITH_COMMANDS to your discord server id.
- Open command line to root dir.
- Run
yarn install
.
Run Bot
- Run
docker run -e POSTGRES_PASSWORD=postgres -e POSTGRES_DB=venat -p 5432:5432 postgres
.
- Run
yarn dev
.
- Verify bot is working by using the
/play
command.
Modules
Venat is built with modules to allow server owners to select the features they want and help aid in development efforts.
The modules should be named as follows: venat-module-area-feature (e.g. venat-module-xiv-market).
Help
Discord server coming soon. For now, please open an issue.
License
This project is licensed under the AGPL-3.0 license.