Logo by Briefreelancing.
Search your homelab like you search the web.
OneSearch indexes your local directories, NAS shares, and external drives and gives you instant full-text search from a browser. No cloud, no telemetry, runs in Docker.
mkdir onesearch && cd onesearch
curl -O https://raw.githubusercontent.com/demigodmode/OneSearch/main/docker-compose.yml
curl -O https://raw.githubusercontent.com/demigodmode/OneSearch/main/.env.example
cp .env.example .envEdit .env and set MEILI_MASTER_KEY to a random string (openssl rand -base64 32 works).
docker-compose up -dOpen http://localhost:8000, run through the setup wizard, add a directory as a source, and start searching.
Heads up: OneSearch is moving toward an easier single-container setup. The default install still runs Meilisearch as a separate container, but v0.13 adds an opt-in managed Meilisearch mode where OneSearch starts Meilisearch inside the app container. If you want to try it, use
docker-compose.managed-meili.yml; existing installs should read the migration guide first. Existing installs do not need to change.
Full setup guide: onesearch.readthedocs.io
| Type | Formats |
|---|---|
| Documents | PDF, Word (.docx), Excel (.xlsx), PowerPoint (.pptx), RTF |
| Ebooks & comics | EPUB, CBZ comic archives |
| Images & RAW photos | JPG, PNG, WebP, GIF, TIFF, CR2, CR3, NEF, ARW, RAF, ORF, RW2, DNG |
| Media metadata | MP4, MKV, MOV, AVI, MP3, FLAC, M4A, OGG, WAV |
| Subtitles | SRT, WebVTT, ASS/SSA |
| Markdown | .md, .markdown |
| Code | .py, .js, .ts, .go, .rs, .java, .c, .cpp, .sh, .sql, and more |
| Config | .yaml, .toml, .json, .xml, .ini, .env, and more |
| Text | .txt, .log |
Incremental indexing so only changed files get reindexed. Per-source cron schedules so your NAS gets scanned daily without thinking about it.
Document preview with metadata and syntax highlighting:
Admin panel - indexing status across all sources:
Accent color theming - pick what feels like yours:
- Installation Guide
- User Guide
- CLI Reference - standalone
onesearch-clipackage that connects to your running OneSearch server and ships from the same tagged release as the Docker image - API Reference
git clone https://github.com/demigodmode/OneSearch.git
cd OneSearchSee the Development Guide for setup instructions.
AGPL-3.0. Free to use, modify, and distribute. If you deploy a modified version as a network service, source must be made available.
- GitHub Issues - bugs and feature requests
- GitHub Discussions - questions and ideas
- Documentation - guides and reference



