Show HN: Zs3 – S3 server in ~1K lines of Zig, 250KB binary, zero dependencies
3 months ago
- #Lightweight
- #Zig
- #S3-compatible
- S3-compatible storage implemented in ~1.4K lines of Zig with zero dependencies.
- Supports basic S3 operations: PUT, GET, DELETE, LIST with full AWS SigV4 authentication.
- Comparison with RustFS and MinIO shows significant advantages in lines of code, binary size, and RAM usage.
- Features include multipart uploads, range requests, versioning, lifecycle policies, and pre-signed URLs.
- Designed for local development, CI artifact storage, self-hosted backups, and learning S3 internals.
- Performance benchmarks show zs3 outperforming RustFS by up to 537x in operations like LIST.
- Easy to set up with simple commands for building and running the server.
- Supports integration with any S3 SDK, demonstrated with boto3 Python example.
- Security features include input validation, request size limits, and no external network calls.
- TLS not included; recommends using a reverse proxy like nginx or caddy for HTTPS.