frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Open in hackernews

Show HN: Sairo – Self-hosted S3 browser with 2.4ms search across 134K objects

4•ashwathstephen•1h ago
I built Sairo because searching for a file in the AWS S3 console takes ~14 seconds on a large bucket, and MinIO removed their web console from the free edition last year.

Sairo is a single Docker container that indexes your bucket into SQLite FTS5 and gives you full-text search in 2.4ms (p50) across 134K objects / 38 TB. No external databases, no microservices, no message queues.

What it does: - Instant search across all your objects (SQLite FTS5, 1,300 objects/sec indexing) - File preview for 45+ formats — Parquet schemas, CSV tables, PDFs, images, code - Password-protected share links with expiration - Version management — browse, restore, purge versions and delete markers - Storage analytics with growth trend charts - RBAC, 2FA, OAuth, LDAP, audit logging - CLI with 24 commands (brew install ashwathstephen/sairo/sairo)

Works with AWS S3, MinIO, Cloudflare R2, Wasabi, Backblaze B2, Ceph, and any S3-compatible endpoint.

  docker run -d -p 8000:8000 \
    -e S3_ENDPOINT=https://your-endpoint.com \
    -e S3_ACCESS_KEY=xxx -e S3_SECRET_KEY=xxx \
    stephenjr002/sairo
Site: https://sairo.dev GitHub: https://github.com/AshwathStephen/sairo

I'd love honest feedback — what's missing, what would make you actually switch to this?

Comments

ashwathstephen•1h ago
Hi, I'm the author. Some context on why I built this:

I manage ~160 TB of Apache Iceberg table data across multiple S3-compatible backends (Leaseweb object storage, not AWS). The AWS console and mc CLI were the only options for browsing, and both are painfully slow for large buckets — 14 seconds to search in the console, 3 minutes to enumerate with mc.

The core idea is simple: a background crawler indexes every object key into SQLite FTS5 (about 1,300 objects/sec), and then search is just a local full-text query. No external database needed — each bucket gets its own SQLite file in WAL mode.

A few things I'm particularly happy with: - Parquet/ORC/Avro schema preview without downloading the file (reads just the footer bytes via range requests) - Version scanner that finds hidden delete markers and ghost objects that the S3 API doesn't surface in normal listings - Works the same across AWS, MinIO, R2, Wasabi, B2, Ceph — tested against all of them

What I'm still figuring out: how to handle buckets with 10M+ objects efficiently. The current crawler works well up to ~500K but I'd love ideas on scaling the indexing beyond that.

Happy to answer questions about the architecture or S3 provider quirks.

Forestry England to see 'increased number' of renewable schemes

https://www.forestryjournal.co.uk/news/25897833.forestry-england-see-increased-number-renewable-s...
1•mooreds•36s ago•0 comments

The Legibility Problem

https://www.asimov.press/p/legibility-problem
1•mailyk•1m ago•0 comments

Show HN: Predicate-Claw – Run Time Assurance (RTA) for OpenClaw via Rust Sidecar

https://github.com/PredicateSystems/predicate-claw
1•tonyww•1m ago•1 comments

Codex built my startup in a weekend

https://sudoapps.substack.com/p/codex-built-my-startup-in-a-weekend
2•sudoapps•2m ago•1 comments

Show HN: Vynix – Mobile app with 100 AI models for image/video/audio generation

https://www.vynix.app
2•appmuzzik•2m ago•0 comments

A 3D simulator, visualizer and replayer for Drones

https://ridrik.github.io/DroneLabShowcase/
2•Ridrik•3m ago•1 comments

Adding "Log in with Mastodon" to Auth0

https://shkspr.mobi/blog/2026/03/adding-log-in-with-mastodon-to-auth0/
2•blenderob•3m ago•0 comments

Ask HN: If you interview an LLM for SE position, what would be your placement?

2•wg0•4m ago•1 comments

Elevated Errors on Opus 4.6

https://status.claude.com/incidents/5zg05jnrqmzg
2•jbegley•4m ago•0 comments

Show HN: Grok Imagine 2 – A preview of the next-gen Grok AI video ecosystem

https://grokimagine2.net/
2•naxtsass•5m ago•0 comments

How does B-tree make your queries fast?

https://blog.allegro.tech/2023/11/how-does-btree-make-your-queries-fast.html
2•bear_with_me•5m ago•0 comments

Ask HN: Freelancer? Seeking freelancer? (March 2026)

2•jon_north•6m ago•0 comments

Word Map – A Game About Hill Climbing and Stepping Stones

https://probablydance.com/2026/03/01/word-map-a-game-about-hill-climbing-and-stepping-stones/
2•ibobev•6m ago•0 comments

Notes on Lagrange Interpolating Polynomials

https://eli.thegreenplace.net/2026/notes-on-lagrange-interpolating-polynomials/
3•ibobev•7m ago•0 comments

Vend-O-Vision: Trading Quarters for Watching TV in Public

https://hackaday.com/2026/02/28/vend-o-vision-trading-quarters-for-watching-tv-in-public/
2•HardwareLust•7m ago•0 comments

Ask HN: Who is hiring? (March 2026)

2•whoishiring•7m ago•10 comments

Ask HN: Who wants to be hired? (March 2026)

2•whoishiring•7m ago•11 comments

Show HN: Open-source Loom / Screen Studio with editing and auto-zoom

https://github.com/jkuri/Reframed
3•kundi•8m ago•1 comments

One-Bit Delay

https://onebitdelay.com/
2•surprisetalk•8m ago•0 comments

Members only: "Won't Fix" self help

https://www.joanwestenberg.com/members-only-wont-fix-self-help/
3•surprisetalk•8m ago•0 comments

A Geometric Interpretation of the 3D Cross Product (2024)

https://matejlou.blog/2024/02/26/a-geometric-interpretation-of-the-3d-cross-product/
2•surprisetalk•8m ago•0 comments

My OpenClaw agent built a website to explain AI to humans

https://www.explainme.ai/
2•yogini•8m ago•0 comments

When I lost my university email, my identity as scientist took an unexpected hit

https://www.science.org/content/article/when-i-lost-my-university-email-my-identity-scientist-too...
3•pseudolus•9m ago•1 comments

Digital forestry team combines AI with satellite data to monitor urban trees

https://phys.org/news/2026-02-digital-forestry-team-combines-ai.html
2•PaulHoule•9m ago•0 comments

A paper about Typst, written in Typst in the IJIMAI journal

https://forum.typst.app/t/a-paper-about-typst-written-in-typst-and-with-an-official-typst-based-t...
2•mstep•9m ago•0 comments

LLM Use in the Python Source Code

https://blog.miguelgrinberg.com/post/llm-use-in-the-python-source-code
2•ibobev•9m ago•0 comments

Show HN: Open Finder files in Google Docs with one click

https://glint.statictype.org/
2•statictype•9m ago•1 comments

Emergent Self-Assembly of Sustainable Plastics Based on Amino Acid Nanocrystals

https://pubs.acs.org/doi/10.1021/acsnano.3c02528
3•moritzwarhier•9m ago•0 comments

Training microgpt 19,000x faster on M5 Mac

https://github.com/Entrpi/eemicrogpt
2•easygenes•10m ago•1 comments

The Bucket Argument

https://github.com/DeepBlueDynamics/das-eimerargument
3•kordlessagain•10m ago•0 comments