A simple Booru API written in TypeScript with support for multiple Boorus and Docker compatibility.
- TypeScript 97.9%
- Dockerfile 2.1%
| config | ||
| public/assets | ||
| src | ||
| types | ||
| .dockerignore | ||
| .editorconfig | ||
| .env.example | ||
| .gitattributes | ||
| .gitignore | ||
| .gitlab-ci.yml | ||
| biome.json | ||
| booru-config.json | ||
| bun.lock | ||
| compose.yml | ||
| Dockerfile | ||
| DOCS.md | ||
| LICENSE | ||
| logger.json | ||
| package.json | ||
| README.md | ||
| tsconfig.json | ||
booru-api
Setup Instructions
Production Environment
-
Clone the repository:
git clone https://git.creations.works/creations/booru-api cd booru-api -
Copy the example environment file to
.env:cp .env.example .env -
Start the application in detached mode:
docker compose up -d
Development Environment
-
Clone the repository:
git clone https://git.creations.works/creations/booru-api cd booru-api -
Copy the example environment file to
.env:cp .env.example .env -
Install dependencies using Bun:
bun install -
Start the development server:
bun dev
Note
To use the e621 Booru route, include the following headers in your request:
e621UserAgent: YourApplication/1.0 (by username on e621) e621Username: your-username e621ApiKey: your-apikeyReplace
your-usernameandyour-apikeywith your e621 account credentials. Update thee621UserAgentstring to include your application name, version, and a contact method (e.g., your e621 username) to comply with e621's API guidelines.To use the Gelbooru Booru route, include these headers in your request:
gelbooruApiKey: your-apikey gelbooruUserId: your-user-idYou can find these credentials in your Gelbooru account settings. These are required for authenticated API requests and higher rate limits.