Skip to content

Search

Sairo indexes every object key in your S3 buckets into a SQLite FTS5 full-text search index. This lets you find any object by name in sub-second time, regardless of how many buckets or objects you have.

Press / anywhere in the UI to open the search bar. You can also click the search icon in the toolbar. Start typing to see results immediately.

The search query runs against the FTS5 virtual table in each bucket’s SQLite database. The index uses a trigram tokenizer, which supports substring matching anywhere in the key. Typing invoice will match invoices.csv, invoice-2026-01.pdf, and archive/invoices/q4.xlsx.

When you are inside a bucket or folder, search results are automatically scoped to that location. This is useful when you know the object is somewhere within a specific prefix but do not remember the exact path.

To search across all buckets, open search from the top-level bucket list.

Each search result displays:

FieldDescription
FilenameThe object’s base name
PathFull key path within the bucket
SizeHuman-readable file size
Last ModifiedTimestamp of the most recent modification

Click any search result to navigate directly to that object’s location in the browser. The browser will open the containing folder and highlight the matched object.

Sairo’s crawler runs on a continuous loop (default: every 2 minutes, configurable via RECRAWL_INTERVAL). Each crawl updates the SQLite database and its FTS5 index, so newly uploaded or deleted objects appear in search results shortly after the next crawl completes.