A Go daemon that backs up every repo you can see on GitHub, packs it into an AES-256 encrypted archive, and uploads it to S3 — or anything S3-compatible. One static binary; incremental on re-run; pure Go (no git required at runtime).
$ curl -fsSL https://dl.velaintelligence.com/elyndor/latest/install.sh | sh
Then: elyndor install · elyndor status · elyndor backup
User repos and any number of organizations. Public and private. Branches, tags, and full history. Glob include/exclude when you want a subset.
ZIP archives are always encrypted; the tool refuses to start without an archive_password. Or pick tar.gz for an unencrypted bundle.
AWS, Hetzner, MinIO, Wasabi, DigitalOcean Spaces, Cloudflare R2 — anything S3-compatible. Multipart upload, configurable storage class.
Worker pool clones in parallel. Exponential backoff with jitter on transient network errors. Atomic temp-then-rename — no half-cloned repos left behind.
Existing clones are fetched, not re-cloned. Re-running every night fetches only what changed. Empty repos are skipped, not failed.
One static binary. No external git required at runtime — uses go-git internally. Cross-compiled for macOS and Linux.
Custom endpoint + path-style addressing means anything that speaks S3 just works.