Skip to content

Repository files navigation

KnowItAll

Local-first semantic image explorer for screenshots and photos.

What changed

This snapshot keeps the workflow intentionally small:

  • visual embeddings with OpenCLIP
  • a local Qdrant images collection
  • a tiny shared search core in search_core.py
  • a polished local FastAPI frontend in web_app.py
  • the original CLI entrypoints in search.py and index_images.py

Current layout

  • search_core.py - shared CLIP + Qdrant search helpers
  • search.py - interactive and one-shot CLI search
  • index_images.py - image indexing script
  • web_app.py - minimal local frontend and API
  • images/ - indexed image source folder

Usage

Index the default image folder:

uv run python index_images.py

Index arbitrary folders recursively:

uv run python index_images.py ~/Pictures ~/Documents

Run interactive semantic search:

uv run python search.py

Search from the command line:

uv run python search.py "mongodb docker error"

Frontend

Launch the local web UI with:

uv run python web_app.py

or:

uv run uvicorn web_app:app --reload

The UI provides:

  • a minimal search panel with pink-accented glass surfaces
  • result cards with thumbnails, scores, and filenames
  • a large preview pane for the selected image
  • safe local image serving from the images/ folder

Next step

The next iteration should harden the desktop packaging workflow and add richer browsing interactions such as image-to-image drag search and document-specific previews.

About

Local-first semantic image explorer powered by OpenCLIP embeddings and Qdrant vector search, enabling natural-language retrieval across screenshots and photos.

Topics

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages