monbooru

module
v1.8.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 20, 2026 License: AGPL-3.0

README

Monbooru

Your own self-hosted, lightweight and fast booru.
Designed for organizing your local media collection, including AI-generated images (Stable Diffusion, ComfyUI, A1111/Forge). Works fully offline. Supports ONNX models for local auto-tagging of your collection (WD14, JoyTag...).


Features

  • Tag-based gallery with folder tree, favorites, saved searches, related-image suggestions
  • Videos and animated GIFs alongside images, with animated hover previews on the grid
  • Manga / comic / archive support: browse CBZ / ZIP archives as a single object with a built-in reader
  • Stable Diffusion metadata extraction from A1111/Forge and ComfyUI (prompts, models, seeds, full workflow)
  • Tag management: merge duplicates, create aliases, implications and custom categories
  • Batch operations on a selection or on a whole search: delete, move, add/remove tags, auto-tag
  • Optional auto-tagging with local ONNX models (WD14 SwinV2, JoyTag, Camie v2, or any compatible model), CPU or GPU (CUDA)
  • Watcher that picks up new, moved, and deleted files within a few seconds; multi-file browser upload; SHA-256 dedup so the same file under two paths is recognised as one image
  • Inbox system: new ingests land in the inbox; flip to archived once curated.
  • Search with wildcards, OR, exclusions, plus filters on folder, date, size, dimensions, category, generation recipe...
  • Image relations: declared duplicates, alternates, version chains, and derivative edges. Near-duplicates are computed using perceptual hashes.
  • Collections with an optional within-collection order
  • Built-in rating tags (general / sensitive / questionable / explicit) with a SFW ceiling toggle in the footer that hides anything above the chosen level
  • Multiple galleries, each with its own filesystem and database; switch between them at runtime
  • Per-gallery export and import for backup or migration. The importer also reads Hydrus network and Blombooru exports - see docs/MIGRATING.md
  • REST API for third-party integrations (e.g. adding images to the gallery from an external app)
  • Optional password login
  • Fully offline, no inbound or outbound internet connection

Quick start (Docker)

Edit the volume paths in docker/docker-compose.yml, then docker compose up -d. The app is available at http://localhost:8080.

See docs/README.md for installing, configuration, auto-tagger setup, environment variables, REST API, building from source, and other operational notes. Check the in-app help to see how to use the application (search syntax, tag input, keyboard shortcuts, ...).


Warning

Intended for local network use. This project is not designed for direct exposure to the public internet.

Directories

Path Synopsis
cmd
monbooru command
internal
api
Package api implements the /api/v1/ REST handlers for monbooru.
Package api implements the /api/v1/ REST handlers for monbooru.
db
gallery
Monbooru is a Linux-only deployment; path handling assumes forward slashes.
Monbooru is a Linux-only deployment; path handling assumes forward slashes.
logx
Package logx is a thin level gate over the stdlib log package.
Package logx is a thin level gate over the stdlib log package.
relations
Package relations manages the operator-declared graph between images: duplicate groups, alternate groups, directed version chains, directed derivative trees, and the "not related" rejection set.
Package relations manages the operator-declared graph between images: duplicate groups, alternate groups, directed version chains, directed derivative trees, and the "not related" rejection set.
search
Package search implements the Monbooru query language parser and SQL executor.
Package search implements the Monbooru query language parser and SQL executor.
searchkw
Package searchkw declares the search query language's filter-keyword vocabulary as a leaf data package.
Package searchkw declares the search query language's filter-keyword vocabulary as a leaf data package.
web
web/compatibility
Package compatibility translates foreign gallery exports (zipped Hydrus exports, ...) into the same in-memory shape the monbooru-native light import consumes.
Package compatibility translates foreign gallery exports (zipped Hydrus exports, ...) into the same in-memory shape the monbooru-native light import consumes.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL