A simple Booru API written in TypeScript with support for multiple Boorus and Docker compatibility.
  • TypeScript 97.9%
  • Dockerfile 2.1%
Find a file
2026-03-26 14:12:31 -04:00
config update and small changes 2026-03-26 14:12:31 -04:00
public/assets move booru configuration to external JSON file add favicon 2025-08-10 10:40:26 -04:00
src update and small changes 2026-03-26 14:12:31 -04:00
types update and small changes 2026-03-26 14:12:31 -04:00
.dockerignore fix docker image 2025-10-01 06:19:24 -04:00
.editorconfig first commit 2024-12-28 09:13:34 -05:00
.env.example fix env example, change license to bsd 3 2025-05-02 08:15:08 -04:00
.gitattributes first commit 2024-12-28 09:13:34 -05:00
.gitignore whoops 2025-10-01 06:20:33 -04:00
.gitlab-ci.yml docker 2025-10-01 06:12:03 -04:00
biome.json update and small changes 2026-03-26 14:12:31 -04:00
booru-config.json move booru configuration to external JSON file add favicon 2025-08-10 10:40:26 -04:00
bun.lock update and small changes 2026-03-26 14:12:31 -04:00
compose.yml docker 2025-10-01 06:12:03 -04:00
Dockerfile fix docker image 2025-10-01 06:19:24 -04:00
DOCS.md add auth support for rule34 2025-09-10 16:49:31 -04:00
LICENSE fix env example, change license to bsd 3 2025-05-02 08:15:08 -04:00
logger.json refactor: improve code structure and add better logging 2025-06-13 17:45:27 -04:00
package.json consolidate auth validation, update biome and fix some routing 2025-08-10 08:12:29 -04:00
README.md move to biomejs, add workflow move auth to header check readme 2025-04-15 17:33:24 -04:00
tsconfig.json update and small changes 2026-03-26 14:12:31 -04:00

booru-api

Setup Instructions

Production Environment

  1. Clone the repository:

    git clone https://git.creations.works/creations/booru-api
    cd booru-api
    
  2. Copy the example environment file to .env:

    cp .env.example .env
    
  3. Start the application in detached mode:

    docker compose up -d
    

Development Environment

  1. Clone the repository:

    git clone https://git.creations.works/creations/booru-api
    cd booru-api
    
  2. Copy the example environment file to .env:

    cp .env.example .env
    
  3. Install dependencies using Bun:

    bun install
    
  4. 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 and your-apikey with your e621 account credentials. Update the e621UserAgent 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.