Meme Search
A self-hosted meme search engine that runs locally in Docker, with semantic and keyword search plus optional OpenAI-compatible image descriptions.

Meme Search is a self-hosted web app for finding images in your own meme collection by their content and text. AI-generated descriptions make the collection searchable without relying on filenames.
- Semantic and keyword search: Search by meaning or text, then filter results by tags or directory across multiple folders.
- Editable descriptions: Generate descriptions for selected images or in bulk, and write or correct them manually when you need to capture context the model missed.
- Collection updates: Rescan directories to detect added images or add files through browser drag-and-drop uploads.
- Search integrations: A read-only, token-authenticated API and a Python CLI let local tools search your collection, inspect metadata and retrieve media.
The app is free and open source under Apache 2.0, with Docker as the recommended deployment. Image descriptions, embeddings and search run locally by default. Florence-2-base is the default description model; alternatives include Florence-2-large, SmolVLM-256, SmolVLM-500 and Moondream2. Moondream2-INT8 is a lower-memory option suited to CPU-only machines. Models download on first use and stay cached locally.
An optional OpenAI-compatible vision API can generate descriptions instead of the local models. This sends selected images to the configured endpoint; metadata, embeddings and search remain local.
The search API is officially supported only for access from the same machine. Its bearer tokens don't authenticate the web interface or settings, and the app shouldn't be exposed directly to a public network.