# Image MetaHub: a local-first library for ComfyUI and A1111 output folders

> Image MetaHub indexes AI-generated media in place, reads embedded generation metadata, and adds prompt, model and visual similarity search. The core is MPL-2.0, but several workflow features sit behind a paid Pro licence.

**LuqP2/Image-MetaHub** — Local-first AI image organizer and generative media library manager for ComfyUI, A1111, InvokeAI & more. Search huge output folders by prompt, model, LoRA, metadata or visual similarity.

- Repository: https://github.com/LuqP2/Image-MetaHub
- Website: https://imagemetahub.com
- Stars: 322 · Forks: 25
- Language: TypeScript
- License: MPL-2.0
- Published: 2026-09-17 · Updated: 2026-09-17 · Language: en
- Canonical page: https://hysenlabs.com/projects/luqp2-image-metahub

## The problem: generation history buried in output folders

Stable Diffusion front ends write a lot of information into each file and almost no tooling to read it back. A ComfyUI output folder after a few months holds tens of thousands of PNGs whose filenames are timestamps. The prompt, checkpoint, LoRA list, sampler, scheduler and seed all exist, but only inside the image. Finding the one seed that produced a good face means opening thumbnails one by one.

Image MetaHub targets exactly that gap. According to the README, it "indexes large folders of AI-generated media without moving or uploading your files" and lets you search by prompt, checkpoint, LoRA, sampler, seed, workflow metadata, tags, ratings or visual similarity. The audience is people who have outgrown a normal output folder or the basic ComfyUI gallery but do not want to reorganize their disk or push their library into a cloud account.

That last constraint matters more than it sounds. The README states there is no mandatory account, no cloud sync and no outbound telemetry. For anyone generating under an NDA, or simply working with a slow uplink and a multi-terabyte library, local indexing is the difference between a usable tool and an unusable one. The trade-off is that everything, including the first indexing pass and the similarity index, runs on your machine.

## How the indexing and metadata pipeline works

The architecture is a desktop shell around a local index. The repository is an Electron application: package.json declares "main": "electron-deeplink.mjs" and the electron script runs Vite on port 5173 before launching Electron. The renderer is React and TypeScript, built with Vite, and the source is split across components/, services/, store/, hooks/ and utils/, with a separate packages/ directory that holds the licence server code referenced by the test:licensing script.

The data flow the README describes is: point the app at folders, let it scan them in place, extract generation metadata from ComfyUI, Automatic1111, InvokeAI, Forge and other tools, then cache the results so later browsing is fast. Thumbnails are cached alongside the metadata. Auto-watch keeps watching those folders while ComfyUI generates new media, so the index grows without a manual rescan.

Two mechanisms are worth separating. Metadata search reads embedded fields, which is why it can filter on node types and schedulers that only exist in ComfyUI workflow JSON. Find Similar is different: it is a local visual search that the README says works "even when they have no prompt or generation metadata". That covers screenshots, upscales and files whose metadata was stripped in transit. The README does not document which embedding model backs the similarity index or how large the index grows per image, so storage planning for a very large library is guesswork.

There is also a lineage component. The README states Image MetaHub detects img2img, inpaint and outpaint relationships, including source-image recovery when possible. That is the piece most gallery tools skip, and it is the one that turns a flat grid into something closer to a production history.

## Installing Image MetaHub and indexing your first folder

The README gives a five-step path: download the latest desktop release from GitHub Releases, install and launch, add one or more folders, wait for the first indexing pass, then search. There is no package-manager install for the desktop app. The repository does ship a Dockerfile, but its entrypoint is the CLI, not the GUI:

```dockerfile
FROM node:22-slim
WORKDIR /app
COPY package.json package-lock.json ./
RUN npm ci
COPY . .
ENTRYPOINT ["npx", "tsx", "cli.ts"]
CMD ["--help"]
```

That image is useful for scripted metadata work, since cli.ts is exposed as the default command, but it will not give you the Electron window. For the desktop app, use the release builds.

On Windows, the releases provide a standard Setup executable and a separate Portable executable. The portable build keeps its settings, browser data, metadata cache and thumbnails in an ImageMetaHubData folder beside the executable rather than in the AppData profile. Updating means closing the app and replacing only the Portable executable, keeping the existing ImageMetaHubData folder beside it.

On macOS, the README is explicit that current GitHub release builds are not signed with an Apple Developer ID. If macOS blocks the app after you move it to Applications, the documented workaround is:

```bash
xattr -dr com.apple.quarantine "/Applications/Image MetaHub.app"
```

The README calls this a temporary workaround until signing and notarization are available. After launch, add your ComfyUI output directory and let the first pass finish before judging search speed; the README does not state an indexing rate, so how long that takes on your library is something you find out by running it.

## Where the free tier stops and Pro begins

This is the part that decides whether Image MetaHub fits you, and it is easy to miss. The repository is MPL-2.0 and the README says the core app remains open-source, but some features are unlocked only through the desktop app's offline Pro licence or a 7-day trial. The README prices the licence at $39.

The free tier is not a demo. It includes local indexing, metadata parsing, search, sort and filtering, tags, favourites, safe mode, shadow metadata editing, auto-watch, lineage display, the multi-window viewer, the built-in image editor, deduplication helpers and stack browsing. Explore with auto-tags and clustering is available "under free-tier limits", a phrase the README does not quantify.

Pro covers the workflow-heavy surface: Automatic1111 generation and parameter copy, ComfyUI generation with the embedded workspace and progress tracking, Compare View with 2-4 image layouts and metadata diff tools, Analytics Explorer, batch export, bulk tagging, in-app file management between indexed folders, unlimited clustering scale and unlimited Local Visual Search indexing.

The last item is the sharpest edge. Unlimited Local Visual Search indexing is Pro-only, which means a large library on the free tier hits a similarity-index ceiling that the README does not put a number on. If visual similarity is the reason you are evaluating this project, budget for the licence. If you only need prompt and checkpoint search over ComfyUI output, the free tier is the whole product.

## Formats, integrations and the metadata that survives

Metadata extraction is only as good as what is still embedded in the file. The README lists parsers for Automatic1111, ComfyUI, InvokeAI, SD.Next, Forge, SwarmUI, Fooocus, Draw Things, Midjourney/Niji, Firefly, DreamStudio and DALL-E. That is a wide net, and it is the strongest argument for the project over a hand-rolled script: each of those tools writes a different metadata block, and keeping twelve parsers current is real work.

The supported container list is PNG, JPG, JPEG, WEBP, AVIF, GIF, MP4, WEBM, MKV, MOV and AVI. Video and audio are included in the media library, which is unusual for a tool that started as an image browser.

Two caveats follow from this. First, anything that strips metadata, such as a chat app, a CDN or a screenshot, leaves you with a file that only Find Similar can reach. Second, the README does not describe how conflicts are resolved when a file matches more than one parser, or what happens to files whose metadata is malformed. Those are the cases that produce confusing search results, and the documentation is silent on them.

There is also an opt-in Civitai lookup for model and LoRA hashes, with results cached locally. Opt-in matters here: it is the one feature that necessarily leaves your machine, and the README frames it as a deliberate choice rather than a default.

## Limitations, failure modes and when to pick something else

The clearest limitation is the licence split. Generation inside ComfyUI, Compare View, batch export and bulk tagging are Pro. A team that adopts Image MetaHub as a free ComfyUI companion and later discovers the queueing features are paid has a migration problem, not a configuration problem.

The second is platform packaging. The README states macOS builds are unsigned, and the documented fix is a Terminal command that removes the quarantine flag. That is acceptable for a personal machine and awkward for a managed fleet where users cannot run xattr. There is also no documented rollback procedure for the portable Windows build beyond keeping the ImageMetaHubData folder, and the README does not describe how a metadata cache behaves after a downgrade.

The third is startup behaviour. The README mentions "startup verification modes for reopening saved libraries from cache or validating them against disk". That is a real trade-off exposed as a setting: cache is fast but can drift from disk, validation is correct but slower on a large library. Neither mode is documented in detail.

As an alternative, consider a ComfyUI gallery extension or a metadata viewer plugin inside the front end you already run. Those live where generation happens, cost nothing extra, and need no second index. The difference in approach is scope: an in-front-end gallery reads the current session's outputs and whatever the front end chose to expose, while Image MetaHub builds a durable index across multiple tools and multiple folders, including files generated before the tool existed. If you only ever look at recent outputs from one front end, the extension is the smaller answer. If you need to search five years of mixed-tool output by LoRA name, the index is the point.

## Maintenance, licence and upgrade cost

The repository is not archived, and the last push was on 2026-09-12, the same day v0.19.3 was released. The two prior releases, v0.19.2 and v0.19.1, landed on 2026-08-27 and 2026-08-26. That cadence suggests a project still moving, though the README does not publish a support policy or a compatibility guarantee between versions.

Upgrade cost is mostly a packaging question. The Windows portable build is the cheapest to maintain: replace the executable, keep the data folder. The installed build and macOS build follow the normal release flow, with the unsigned-build caveat above. Metadata caches and thumbnails live locally, so a reinstall does not mean re-indexing, but the README does not state whether cache formats are stable across minor versions.

On licensing: the code is MPL-2.0, which is a file-level copyleft licence, and the README says the core app remains open-source while Pro features are unlocked through an offline licence. The Dockerfile explicitly copies LICENSE into the image "for downstream compliance", which is a hint that the authors expect the CLI to be redistributed inside other systems. If you plan to ship the CLI in a product, read MPL-2.0 yourself rather than relying on this summary; the repository also contains a packages/license-server directory and licence-generation scripts, which is worth understanding before you assume the whole tree is covered by one licence.

## Conclusion

Adopt Image MetaHub if you already have thousands of ComfyUI, Automatic1111 or InvokeAI outputs sitting in folders and you want prompt, checkpoint and LoRA search without uploading anything. Do not adopt it if your workflow depends on ComfyUI queueing, Compare View, batch export or bulk tagging, because those are Pro features and the free tier will not cover them. Before installing, check the GitHub Releases page for your platform and confirm you are willing to run the xattr command on macOS, since the published builds are unsigned. Verify first that your metadata format is one the README lists, and that the folder you want indexed is large enough to justify the first indexing pass.

## FAQ

### Is Image MetaHub free to download?

The repository is MPL-2.0 and the README says the core app remains open-source, so the free tier covers indexing, metadata parsing, search, filtering, tags, lineage and the image editor. Several workflow features, including ComfyUI generation, batch export and unlimited Local Visual Search indexing, are unlocked only by the Pro licence or a 7-day trial.

### What kinds of images does Image MetaHub organize?

It indexes AI-generated media in place, including images and video, and reads generation metadata from ComfyUI, Automatic1111, InvokeAI, Forge and other tools. Supported containers listed in the README include PNG, JPG, WEBP, AVIF, GIF, MP4, WEBM, MKV, MOV and AVI.

### Where do I download Image MetaHub?

The README points to the GitHub Releases page for the latest desktop release. Windows builds come as a Setup executable and a separate Portable executable, and the README notes that current macOS builds are unsigned.

### Does Image MetaHub upload my images anywhere?

The README states the app is local-first with no mandatory account, no cloud sync and no outbound telemetry, and that it indexes files where they already live. The one network feature described is an opt-in Civitai lookup for model and LoRA hashes, with results cached locally.

### Can Image MetaHub find images that have no prompt metadata?

Yes, through Find Similar, which the README describes as local visual search that works even when images have no prompt or generation metadata. The README does not document which embedding model it uses or how large the index grows per image.

## Sources

- [License: MPL-2.0](https://github.com/LuqP2/Image-MetaHub/blob/main/LICENSE)
- [LuqP2/Image-MetaHub on GitHub](https://github.com/LuqP2/Image-MetaHub)
- [Project website](https://imagemetahub.com)
- [README](https://github.com/LuqP2/Image-MetaHub/blob/main/README.md)
- [Releases](https://github.com/LuqP2/Image-MetaHub/releases)

---

Hysen Labs editorial analysis, written from the project's own repository and release notes. Cite the canonical page: https://hysenlabs.com/projects/luqp2-image-metahub
