https://github.com/shaksternano/borgar
A Discord and Revolt bot for making fun image edits.
https://github.com/shaksternano/borgar
discord discord-bot hacktoberfest image-editing image-processing kotlin revolt revolt-bot
Last synced: 4 months ago
JSON representation
A Discord and Revolt bot for making fun image edits.
- Host: GitHub
- URL: https://github.com/shaksternano/borgar
- Owner: shaksternano
- License: mit
- Created: 2022-04-15T21:45:31.000Z (about 4 years ago)
- Default Branch: main
- Last Pushed: 2025-09-14T18:27:56.000Z (9 months ago)
- Last Synced: 2025-09-14T20:36:28.165Z (9 months ago)
- Topics: discord, discord-bot, hacktoberfest, image-editing, image-processing, kotlin, revolt, revolt-bot
- Language: Kotlin
- Homepage:
- Size: 28.7 MB
- Stars: 11
- Watchers: 1
- Forks: 2
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Borgar
A Discord and Revolt bot that provides fun image editing commands, such as image captioning.
## Available commands
Some of the fun commands provided by Borgar:
- `%caption`: add captions to an image.
- `%rotate`: rotates an image.
- `%speed`: speeds up or slows down a GIF or video.
Run `%help` to see a full list of commands.
Commands can also be chained together. The following example captions an image and then rotates it by 90 degrees
clockwise:
```
%caption A caption %rotate 90
```
## Prerequisites
- Java 21 SDK or higher.
- A Discord and/or Revolt Bot Token.
- You can get a Discord token from the [Discord Developer Portal](https://discord.com/developers/applications) or a
Revolt token from the [Revolt Bot Menu](https://app.revolt.chat/settings/bots).
## Getting Borgar
You can find release builds of Borgar on the [Releases page](https://github.com/shaksternano/borgar/releases).
Builds from recent commits can be found on
the [Actions page](https://github.com/shaksternano/borgar/actions/workflows/build.yml).
## Running Borgar
1. Run Borgar with `java -jar borgar-X.X.X.jar`.
- Replace `X.X.X` with the version number of the JAR file you downloaded.
2. Running the program for the first time should create a `config.json` file and then exit.
3. Add your Discord and/or Revolt bot token to the `config.json` file and run the program again.
## Required permissions
### Discord

### Revolt

## Using PostgreSQL
Borgar can use PostgreSQL instead of the default SQLite database. To use PostgreSQL, follow these steps:
1. Install [Docker](https://docs.docker.com/get-started/get-docker) if you haven't already.
2. Run the Docker compose file with `docker compose up -d`.
3. Set the value of `database.url` in `config.json` to `jdbc:postgresql://localhost:5432/postgres`, adjusting the port
if changed in the docker-compose.yml file.
4. Optionally, change the user and password values in the `docker-compose.yml` file and update the `config.json` file
accordingly.
## Using Cobalt
Borgar uses [Cobalt](https://github.com/imputnet/cobalt) for the `%download` command, which allows downloading media
from various sites. To set up Cobalt, follow these steps:
1. Install [Docker](https://docs.docker.com/get-started/get-docker) if you haven't already.
2. Run the Docker compose file with `docker compose up -d`.
3. Set the value of `cobalt.apiUrl` in `config.json` to `http://localhost:9000`, adjusting the port if changed in the
docker-compose.yml file.
## Running the program from source
1. Run `./gradlew run`.
- If using IntelliJ IDEA, you can also run `app/src/main/kotlin/Main.kt`.
## Building a JAR File from source
1. Run `./gradlew build`.
2. The JAR file will be located in `build/libs`.