A simple Booru API written in TypeScript with support for multiple Boorus and Docker compatibility.
|
||
---|---|---|
.forgejo/workflows | ||
.vscode | ||
config | ||
src | ||
types | ||
.editorconfig | ||
.env.example | ||
.gitattributes | ||
.gitignore | ||
biome.json | ||
compose.yml | ||
Dockerfile | ||
LICENSE | ||
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-apikey
Replace
your-username
andyour-apikey
with your e621 account credentials. Update thee621UserAgent
string 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-id
You can find these credentials in your Gelbooru account settings. These are required for authenticated API requests and higher rate limits.