- cocalc-api Client (Python) → HTTP POST requests
- Next.js API Routes (
/api/conat/{hub,project}) → Bridge to conat messaging - ConatClient (server-side) → NATS-like messaging protocol
- Hub API Implementation (
src/packages/conat/hub/api/) → Actual business logic
- Bridge:
src/packages/next/pages/api/conat/hub.ts→hubBridge()→ conat subjecthub.account.{account_id}.api - Implementation:
src/packages/conat/hub/api/projects.ts - Available Methods:
createProject,start,stop,setQuotas,addCollaborator,removeCollaborator, etc.
- Bridge:
src/packages/next/pages/api/conat/project.ts→projectBridge()→ conat project subjects - Implementation:
src/packages/conat/project/api/(system.ping, system.exec, system.jupyterExecute)