drift Docs
Start
What is Drift?
The tour, if you are new here.
Why Drift?
The case for a smaller cloud.
Getting started
Nothing to deployed, in one command.
Architecture
How a slice is put together.
What it costs
The free grant, five unit prices, two rules.
Build
Canvas
Static sites, same origin as your API.
Tools
Operate
Auth
Accounts, tokens and scopes.
Security
Boundaries, sandboxing and hardening.

Driftfile

A Driftfile is the single source of truth for a Drift project. It declares the Atomic functions, Backbone data, and Canvas sites your app needs, plus the resource limits it runs within. You run drift project deploy from the project root, and the platform reads the Driftfile, provisions everything, and wires it together.

The file

The file is named Driftfile: capital D, no extension, just like a Makefile or Dockerfile. It lives at the project root, next to your atomic/, backbone/, and canvas/ folders. The format inside is YAML. The CLI looks for ./Driftfile where you run the deploy. There is no second config file and no lockfile; multiple environments live in this one file under environments:, not a forest of per-environment variants.

  • my-project/the project root
    • atomic/your functions
      • submit.go
      • validator.go
    • backbone/seeds and schemas
      • permit-types.jsonlupserted by _id
    • canvas/your sites
      • public/mounted at /
      • reviewer/mounted at /reviewer
    • Driftfilethe manifest, at the root

The shape of the file

Section by section

The smallest Driftfile

Every limit has a default, so the minimum that deploys something is a name and a site:

Driftfile
name: hello
canvas: ./canvas

drift file new writes a starter one for you, with the knobs a first deploy needs filled in and a comment on each explaining what omission means.