View Markdown

The product model

A small resource vocabulary makes the system easier to understand. Give every resource a clear owner, lifetime and purpose.

Ownership comes first

An organization owns workspaces. A workspace groups resources and controls who can use them. A project can group resources for one application. These boundaries should be explicit in requests and visible in the interface.

Resource ownership

Separate resources by lifetime

ResourceMain jobLifetime
SandboxBuild, test and execute codeOften disposable
ComputerOperate desktop applicationsTask or session based
DeploymentServe a published applicationManaged release
Database or volumeKeep application statePersistent

Connect with bindings

A binding records how an application uses another resource. It might supply a database URL, a storage location or a scoped capability. Keeping these connections explicit makes deployment and recovery easier to inspect.

Keep identities stable

A name is useful to a person, but a returned identifier names the actual resource. Keep the identifier in operation records. Reusing a familiar display name does not mean you are operating on the same instance.

Learn by doing

Practice the resource model, or explore the glossary.