2023-09-03 19:06:20 +00:00
|
|
|
# Eris the Bot
|
|
|
|
|
|
|
|
Telegram bot for generating images from text.
|
|
|
|
|
|
|
|
## Requirements
|
|
|
|
|
|
|
|
- [Deno](https://deno.land/)
|
2023-09-04 16:55:48 +00:00
|
|
|
- [Stable Diffusion WebUI](https://github.com/AUTOMATIC1111/stable-diffusion-webui/)
|
2023-09-03 19:06:20 +00:00
|
|
|
|
|
|
|
## Options
|
|
|
|
|
|
|
|
You can put these in `.env` file or pass them as environment variables.
|
|
|
|
|
2023-09-10 18:56:17 +00:00
|
|
|
- `TG_BOT_TOKEN` - Telegram bot token. Get yours from [@BotFather](https://t.me/BotFather).
|
|
|
|
Required.
|
2023-10-12 09:39:19 +00:00
|
|
|
- `TG_ADMIN_USERNAMES` - Comma separated list of usernames of users that can use admin commands.
|
2023-10-18 21:11:25 +00:00
|
|
|
- `DENO_KV_PATH` - [Deno KV](https://deno.land/api?s=Deno.openKv&unstable) database file path. A
|
|
|
|
temporary file is used by default.
|
2023-10-15 19:13:38 +00:00
|
|
|
- `LOG_LEVEL` - [Log level](https://deno.land/std@0.201.0/log/mod.ts?s=LogLevels). Default: `INFO`.
|
2023-09-03 19:06:20 +00:00
|
|
|
|
2023-10-18 21:11:25 +00:00
|
|
|
You can configure more stuff in [Eris WebUI](http://localhost:5999/) when running.
|
2023-09-03 19:06:20 +00:00
|
|
|
|
2023-10-18 21:11:25 +00:00
|
|
|
## Running
|
2023-09-22 02:59:22 +00:00
|
|
|
|
2023-10-18 21:11:25 +00:00
|
|
|
- Start Stable Diffusion WebUI: `./webui.sh --api` (in SD WebUI directory)
|
|
|
|
- Start Eris: `deno task start`
|
2023-10-15 19:13:38 +00:00
|
|
|
|
2023-09-22 02:59:22 +00:00
|
|
|
## Codegen
|
|
|
|
|
2023-10-18 21:08:18 +00:00
|
|
|
The Stable Diffusion API types are auto-generated. To regenerate them, first start your SD WebUI
|
|
|
|
with `--nowebui --api`, and then run `deno task generate`
|
2023-10-18 21:11:39 +00:00
|
|
|
|
|
|
|
## Project structure
|
|
|
|
|
|
|
|
- `/api` - Eris API served at `http://localhost:5999/api/`.
|
|
|
|
- `/app` - Queue handling and other core processes.
|
|
|
|
- `/bot` - Handling bot commands and other updates from Telegram API.
|
|
|
|
- `/ui` - Eris WebUI frontend files served at `http://localhost:5999/`.
|
|
|
|
- `/util` - Utility functions shared by other parts.
|