Project ideas from Hacker News discussions.

Alternatives to MinIO for single-node local S3

📝 Discussion Summary (Click to expand)

Theme 1 – Using the S3 API as a portable abstraction layer
Many commenters argue that the real value of a “local S3” is not the storage itself but the ability to keep the same S3‑compatible interface across environments (dev, CI, production) so code doesn’t have to change.

  • “Because you might be running something that only talks S3 and want to point it at something local.” – xienze
  • “Because you want to mock the tools you are going to use in production locally or in CI.” – Tostino
  • “Because this is about having a local standin for S3, which (in a production deploy) often solves a different problem than a (local) filesystem.” – wink
  • “My point is to push the storage abstraction up a level. Then plug S3 or file system into it.” – sdcfgy

Theme 2 – Evaluating specific S3‑compatible/object‑store alternatives
The thread is littered with recommendations and experiences with various projects that expose an S3 API while storing data on disk or in a lightweight backend.

  • “Garage added an automatic configuration feature in v2.3.0 that makes it easier to set up single nodes…” – pveierland (link to Garage docs)
  • “We use RustFS in a production system with no issues… We switched over after MinIO license changes.” – markab21
  • “+1 switched to versity for homelab, been simple and stable as a rock.” – nodoodles
  • “I run Sentry on prem, I had to swap out their default SeaweedFS setup for Garage because the former kept failing under concurrent writes.” – KronisLV
  • “Often just spinning up localstack works well, even if only for S3.” – brinepot

Theme 2 – (continued) – Concerns over MinIO’s licensing and the search for trustworthy forks
Several participants cite MinIO’s license change as the catalyst for looking elsewhere, and they mention community forks like pgsty/silo as potential replacements.

  • “We switched over after MinIO license changes and after evaluating a few different stacks.” – markab21
  • “I might have to try this. I’m currently pinned on the last non‑crippled version of minio.” – samgranieri
  • “Cadamsdotcom: > 2026-03-02: Ruohang Feng has forked MinIO to pgsty/minio… This is what I went with.” – cadamsdotcom
  • “According to … it's pgsty/silo now: Renamed from pgsty/minio to pgsty/silo…” – nacnud

These three themes capture the dominant currents of the discussion: the desire for an S3‑compatible abstraction, the practical comparison of specific local object‑store solutions, and the motivation behind seeking MinIO alternatives due to licensing concerns.


🚀 Project Ideas

Generating project ideas…

LocalS3 Gateway

Summary

  • A zero‑configuration S3‑compatible server that maps each bucket to a local directory, automatically creates access keys/buckets on startup, and includes built‑in snapshot/backup utilities.
  • Core value: developers get a realistic S3 endpoint for dev/CI without the overhead of MinIO or manual bucket setup, while still being able to inspect files directly on disk.
Key Value
Target Audience Backend engineers, DevOps, CI pipelines needing a lightweight local S3 mock
Core Feature S3 API (REST) over local FS with auto‑generated credentials, per‑bucket directory mapping, and optional WAL‑based snapshots
Tech Stack Rust (actix‑web + aws‑sdk‑rust for parsing), Tokio, LMDB for metadata, Docker
Difficulty Medium
Monetization Revenue-ready: SaaS hosted version with UI & usage metering (free tier)

Notes

  • HN users complained about the manual setup of Garage and MinIO ("The setup for Garage sucks…", "MinIO always felt like overkill") and wanted something that "just works" out of the box.
  • Provides a drop‑in replacement that can be pointed at by any S3 client, enabling easier local testing and inspection of stored objects (as highlighted by winkel and others who wanted to "see files on disk").

StoreAbstrakt

Summary

  • A lightweight abstraction library (SDK) that lets developers code against a unified storage interface swappable between local filesystem, in‑memory store, and any S3‑compatible backend without changing application code.
  • Core value: eliminates the need to rewrite storage logic when moving between dev (local FS) and production (S3), directly addressing the desire to "push the storage abstraction up a level."
Key Value
Target Audience Application developers building cloud‑native services who want environment‑agnostic storage
Core Feature Interface with put/get/list/delete, conditional operations, and pluggable adapters (FS, S3, InMemory, custom)
Tech Stack Go (interface‑driven) or Rust (trait‑based), with optional bindings for Python/Node.js via FFI
Difficulty Low
Monetization Hobby

Notes

  • Commenters such as sdcfgy and wink emphasized wanting to "plug S3 or file system into it" and avoid putting HTTP between everything; this library gives exactly that in‑process abstraction.
  • Enables discussion around storage contracts and can be used in tutorials or benchmarks comparing local vs remote performance, sparking practical utility in many projects.

EphemS3 CLI

Summary

  • A command‑line tool that spins up an ephemeral, strongly‑consistent S3 mock (embedded object store) for the duration of a test or CI job, prints environment variables (AWS_ACCESS_KEY_ID, etc.), and cleans up on exit.
  • Core value: gives developers a fast, disposable S3 service that behaves like real S3 (including ETags and conditional PUT/GET) without needing to manage persistent containers.
Key Value
Target Audience CI/CD engineers, test automation developers, local devs needing temporary S3
Core Feature Ephemeral S3 server (embedded SQLite+blob store), auto‑exits, outputs creds, supports multipart, conditional ops
Tech Stack Go (fast binary) or Rust, uses embedded SQLite for metadata, minimal HTTP server
Difficulty Medium
Monetization Revenue-ready: per‑seat CI integration service with dashboard & logs (free open‑source core)

Notes

  • Many noted the usefulness of a simple S3 mock for CI ("just use rclone serve s3", "spinning up localstack works well"); EphemS3 improves on that by providing stronger consistency and automatic teardown.
  • Enables practical utility in test suites, reduces flakiness from shared services, and can be a talking point in CI optimization discussions.

Read Later