Developer Guide¶
For engineers building against IOLake — as an S3 endpoint, as an Iceberg REST Catalog, as a Delta Sharing provider, or as a block storage target — and for contributors working on the source itself.
API & Wire Protocols¶
- API reference — overview of every HTTP surface
(S3, Iceberg REST, Delta Sharing,
/_admin/*,/_console/api/*,/metrics). - S3 protocol specifics: S3 operations.
- Iceberg specifics: Iceberg REST.
- Auth: Authentication, Identity and Access (IAM, OIDC, STS), Public Access.
Product¶
- Feature reference — how each feature works; every feature's status is in features.md. Everything is Apache-2.0; there are no tiers.
- Management SDKs — Go and Python clients for the admin API.
- Agent skills — teaching a coding agent (Claude Code, Codex, …) to deploy, run and build on IOLake.
- S3 compatibility — ceph s3-tests runs.
- Performance — IOLake next to RustFS and SeaweedFS, and what the numbers show.
- Chaos — faults on a multi-host cluster: what is checked, the latest run, and what the runs found.
Contributing¶
CONTRIBUTING.md in the repository: how to propose a change, set up, test at the right level, and open a pull request. Security problems are reported privately (SECURITY.md).
Building from source¶
Workflows live in the source tree:
make build/make test/make lint/make fmt— local workflows (see the repoMakefile).docker compose run --rm build— sandboxed builds without a local Rust toolchain.cargo test --package iolake-erasure— run a single crate's tests (erasure coding is ISA-L's on every build).
CONTRIBUTING.md covers the conventions (formatting, clippy, errors,
commits, which tests a change needs). For coding agents working in a
checkout, CLAUDE.md is the map of the code, and two skills in
.claude/skills/ walk the work: iolake-contribute (issue to merge)
and iolake-testing.