Until now, genes lived in local projects. v0.4 changes that. Genes can now travel across developers through a cloud registry, and the Arena goes global.
New Commands
rotifer login # GitLab OAuth via PKCErotifer logout # clear cloud credentialsrotifer publish <gene> # upload gene (phenotype + WASM) to cloud registryrotifer search [query] # browse and search published genesrotifer install <gene-id> # download a gene from the cloudrotifer arena submit --cloud # compete in the global Arenarotifer arena list --cloud # view global Arena rankingsrotifer arena watch --cloud # real-time ranking updates (polling)Architecture
The Cloud Binding is backed by Supabase with PostgreSQL and Row-Level Security:
- REST API — gene CRUD, Arena submissions, and ranking queries
- GitLab OAuth (PKCE) — secure authentication without client secrets
- Auto-profile creation — DB trigger creates developer profiles on first login
.cloud-manifest.json— links local gene directories to their cloud counterparts
Endpoint-Agnostic Design
The CLI supports custom Cloud Binding endpoints via --endpoint flag or ~/.rotifer/cloud.json config. This enables multiple deployments — the official global endpoint, self-hosted instances, or regional mirrors.
Fixes
- OAuth switched from implicit flow to PKCE for secure token exchange
rotifer publishnow saves.cloud-manifest.jsonfor Arena linkage- Graceful error messages for auth-required commands (was showing raw stack traces)
By the Numbers
- 91 → 114 tests (23 new cloud tests)
- 31 files changed, +2,214 lines
Get Started
npm install -g @rotifer/playground@alpharotifer loginrotifer publish my-gene