finds.dev← search

// the find

jasonwhite/rudolfs

★ 514 · Rust · MIT · updated Apr 2026

A high-performance, caching Git LFS server with an AWS S3 and local storage back-end.

Rudolfs is a self-hosted Git LFS server written in Rust, designed for internal networks where you control the S3 bucket and don't want to pay GitHub/GitLab per-GB LFS fees. It sits between your Git clients and S3, caching popular objects on local disk so repeated downloads don't hit S3. Target audience is teams running self-hosted Git (Gitea, Forgejo, etc.) with large binary assets.

The storage layer is genuinely well-designed — it's a composable middleware stack (cache → encrypt → verify → retry → s3) that you can read in `src/storage/` and actually understand. Corruption detection is automatic: SHA256 verification happens on every read, and corrupted cache entries are purged transparently without the client knowing. At-rest encryption via xchacha20 is a first-class feature, not an afterthought, and it applies to both cache and permanent storage. The Docker image is under 10MB, which means it deploys fast and doesn't carry dead weight.

No authentication at all — the README explicitly calls this out as a non-feature, which is honest but means you cannot expose this to the internet without a reverse proxy doing auth (basic auth, mTLS, OAuth proxy, etc.). Encryption key management is manual and unforgiving: change the key once and every existing LFS object becomes garbage with no migration path. The project hasn't seen a release since 2023 even though commits trickle in, so you're essentially adopting it as-is. MinIO is listed as a deployment option but the S3 backend hardcodes AWS SDK assumptions that can cause friction with S3-compatible endpoints.

View on GitHub →

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →