TulipBooru
A downloadable local booru for Windows and macOS
Why your gallery is not a dataset, yet!
A folder of images is a start. A LoRA-ready dataset is something else: every file paired with tags or captions the trainer can read, labels that stay consistent across characters and outfits, duplicates removed so the model doesn't overfit on the same face, object or bit of clothing is a fine art and a tremendously tedious process.
TulipBooru is a standalone offline desktop app that turns your computer into a booru site and tagging workstation built to bridge that gap. Point it at folders on your machine. It indexes images into a local database, keeps industry-standard paired .txt sidecar files next to every image, and walks you from messy gallery to exportable set — no monthly fees, no forced cloud, no Python installs or requirements. Download then double-click the app and its ready to go.
------------------------------------
What's Included:
The Main Tagger — your command centre:
------------------------------------
This is where most LoRA prep time is spent: browsing a folder, searching by tags, fixing captions, and fixing labels image by image without losing your place.
Load a Folder:
Point TulipBooru at any image folder on your PC or Mac. The app scans files, reads existing .txt tag sidecars, and builds a searchable thumbnail grid. Collections from mere-dozens to hundreds of thousands of images are supported. Helpful when your "gallery" is already huge and you refuse to re-organise everything by hand before you start tagging.
Power Search:
1. In Built Booru-style logic, enjoy any combination of sets of tags inclusive or exclusive.
2. Scroll a responsive icon grid with lazy-loaded thumbs. Click an image for a large preview on the right with current tags always visible. Arrow keys move selection; previews update live. Helpful for long tagging sessions where you need to see faces and outfits, not just filenames.
One-Click Tagging:
Tags appear as chips — click to remove. Type in the quick-add field and press Enter to append. Build personalised tag library folders to create one-click buttons so repetitive labels (character names, clothing items, art style tags) can be applied with one click away.
Consistency and accuracy is what LoRAs learn from; one-click library buttons reduce typos and "almost the same tag" drift.
Sticky Tag Feature:
Enable Sticky Tag, set a tag or a set of tags in the sticky function and every image you click receives the set, or simply have tags loaded on all loaded images at once. Perfect for stamping shared trigger words, project names, or quality tags across a batch without retyping.
Gender View:
Colour-code customisable masculine and feminine terms so you can audit character-heavy libraries at a glance. (Terms are customisable in Options). Helpful when a set mixes boys, girls, and custom types and you need easy visual proof the tags match your the pictures before training.
Tag Highlighting:
Type a tag fragment ("blue", "hair", "earrings") to emphasise matching tags on the current image. Causing tags to glow on screen. Ideal for auditing long comma lists and catching near-duplicates like "blue_hair" vs missing hair colour.
Smart Sort and Organise:
Sort alphabetically, numerically, by file size, by tag count, or show untagged only. Organise files with in-built mass renaming feature and every loaded image and its paired .txt will be conformed with zero image/txt file mismatches.
Helpful before export so training tools and your own folders stay aligned.
Bookmarks:
Mark images to revisit and cycle through bookmarks. On a multi-hour character pass, bookmarks keep hard cases from disappearing into the scroll or allow you to break up tagging into multiple sessions more easily.
Zoom In Preview:
Full-resolution preview with scrollbars for detail checks — jewellery, text on clothes, small accessories that must be tagged or cropped out for training.
Tag Library Manager:
Organise tags into folders, assign colours, pin folders, attach icon images, export/import the library, rescan icon folders. Tags you define here become one-click buttons across the app. For LoRA teams, a shared library export is how you keep "the same character name every time" as a rule, not a hope.
------------------------------------
The Local Booru — browse like a site, stay offline
-------------------------------------------------
When the library is too large to keep every path in memory, Local Booru gives you a personal booru experience with SQL-backed pagination.
Paged Booru Browser
Browse with adjustable thumbs per page (20–200) and thumb size (64–256 px).
Built to stay smooth past 300,000 images. Helpful when your gallery is years of saves and you still want to "surf" it while planning what belongs in a LoRA.
------------------------------------
The Image Viewer — review, slideshow, light paint
------------------------------------------------
In Built Slideshows:
Configurable interval (1–60 seconds), ordered or random. Use it for a hands-free quality pass over a candidate export set — the last chance to catch bad crops before training.
Paint Mode:
Draw on the file: left-drag paint, right-click pick colour, adjustable brush. Changes save to the original — a quick tool for marks, simple masks, or touch-ups during review. Helpful when one stain or logo would pollute a LoRA.
------------------------------------
The Interrogate Tagger — structured workflows for consistent labels:
Create Complex Tag Combinations with a few Clicks, Easily Repeatable
------------------------------------------------------------------
LoRAs punish inconsistent tagging. Interrogate walks stages in order so every subject gets the same structure.
Workflow Chain:
Tick Character Tagging, Character Incidentals, Outfit Tags, General Tagging, and/or Meta Tags, then Run Workflow Chain to walk each stage without reopening menus. Customise the chain to your dataset rules. This is the difference between "I tagged a bit" and "every image got character + outfit + quality the same way." And without the hassle.
------------------------------------
Duplicate Finder — clean before you train
--------------------------------------
Duplicate and near-duplicate images waste steps and bias the model. This tab is built for perceptual cleanup at scale.
Duplicate Scan:
Exact and near-duplicate groups via perceptual hashing. Adjustable Hamming threshold: tight for near-identical, looser for variants. Helpful for galleries pulled from multiple sources where the same art was saved twice at different compressions.
Side-by-Side Comparison:
Left/right images with filenames and aspect-safe layout so extreme sizes never break the UI. Decide which copy keeps the better crop or tags.
Spot the Difference:
Overlay with adjustable opacity — catch crop changes, compression artefacts, and watermarks thumbs hide. Watermarked copies are classic LoRA poison; this helps you see them.
Delete, Ignore, and Cycle:
Delete left, right, or the group (Recycle Bin when available). Ignore groups to hide without deleting. Cycle alternates when more than two matches exist.
Folder Block:
Full Block or Partial Block folder filters for users wanting to preserve master copies.
------------------------------------
Present Tag Library— understand the set before you export:
-------------------------------------
Compact Tag Frequency List:
Every tag in the loaded folder with counts. Sort by frequency or alphabet; search to narrow. Click a tag to drill in. This is your first bias report: if one background or pose dominates, you will see it.
Tag Co-Occurrence Analysis:
For any selected tag the app user can see the top 15 co-occurring tags with counts and percentages helping to prevent LoRA overtraining on co-occurring objects and creating more hygenic datasets. Spot redundant pairs, missing combinations, and dataset skew before training.
If "character_a" always appears with "hat" and never without, the LoRA may fuse them — better to know now.
------------------------------------
Descriptive Writing — captions alongside tags
------------------------------------------------
Some pipelines want comma tags. Others want full sentences. TulipBooru treats the paired .txt as the source of truth either way.
Split Editor Layout:
Image left, description right, Previous/Next navigation, optional zoom. Write natural-language captions for diffusion training, catalogues, or accessibility without a second program.
Real-Time Auto-Save:
Every keystroke saves to the .txt and syncs the database. No Save button ritual. Reload from disk if you edit files externally.
------------------------------------
Universal Editor — bulk find and replace across the folder
-------------------------------------
Universal Tag Replace:
The Replace pairs feature runs sequentially on every image in the folder. Place in 'Word Mode' to replace single whole words inside multi-word multiple tags at once without breaking unrelated text. A Classic LoRA fix: rename a character trigger, fix a site-wide typo, or drop a deprecated tag everywhere at once.
------------------------------------
Main Exporter — design the set you will actually train
-------------------------------------
This is where a gallery becomes of your images can become a dataset with minimal thought or effort on your end:
Dataset Analysis — Tag Pairs:
Find pairs that co-occur above a customisable threshold with visual pair cards with overlapping stats. Catch labels that always appear together that can skew training.
Rare Tag Flagger:
Flag tags below a count threshold. Copy or move those images to balance or isolate rare classes. Underrepresented outfits and expressions often need more images to prevent loss of detail or customisation. Learn in advance instead of waiting till after training.
Design Dataset Export:
Set Required tags, a soft min/max images per tag and maximum co-occurrence limits, and watch the app calculate the Best Datasets possible for you. No need to keep track yourself. No painstaking work.
------------------------------------
The Small Exporter — see tag balances in your dataset as a live bar graph
----------------------------------------------------
Live Bar Graph Builder:
Set bottom-axis tags (girl, boy, character names…) and art-style tags, then Refresh Graph. Compare category counts visually — no spreadsheet. If one bar towers over the rest, your LoRA will too. If a bar is dominated by a single colour maybe get a few new images in different art styles.
Import Tags and tag sets from your custom Library Folder:
Pull every tag from a library folder into the bottom axis in one click when your folder structure already mirrors dataset categories.
Quick Export:
Choose a destination and export the current Main Tagger snapshot with sidecars. Graph work runs in the background so other tabs stay usable.
------------------------------------
Native Resizer — conform your dataset to training dimensions without a side tool
------------------------------------------------
Options, Customisation and Colourblind Modes — make the app match your needs.
------------------------------------------------
Colour-Blind Modes:
Inclusive of Protanopia, Deuteranopia, Tritanopia, Monochrome — tag colours adapt app-wide so folder colours and gender highlights stay distinguishable.
Customisable Gendered Terms:
Edit male/masculine and female/feminine lists. Changes save and refresh colouring everywhere tags show. Match colour coding to the language your dataset actually uses.
Customisable Buttons for the Interrogate Tagger:
Edit Character Incidentals and Meta/Rating buttons in plain text. Save or reset to defaults. Stored in your local TulipBooru data folder and survives updates — so your studio vocabulary is not locked to someone else's defaults. Cross-cutting foundations (why LoRA tools trust this layout)
| Published | 2 days ago |
| Status | Released |
| Category | Tool |
| Platforms | Windows, macOS |
| Author | Carnationstulip |
| AI Disclosure | AI Assisted, Code |
Purchase
In order to download this local booru you must purchase it at or above the minimum price of $5 USD. You will get access to the following files:
