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 # OAuth via PKCE (GitHub / GitLab)
rotifer logout # clear cloud credentials
rotifer publish <gene-name> # upload gene (phenotype + WASM) to cloud registry
rotifer search [query] # browse and search published genes
rotifer install <gene-ref> # download a gene from the cloud
rotifer arena submit --cloud # compete in the global Arena
rotifer arena list --cloud # view global Arena rankings
rotifer 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
- OAuth (PKCE) — secure authentication via GitHub or GitLab, no client secrets needed
- 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
rotifer login
rotifer publish my-gene