Anvil Cloud / Overview
Anvil Cloud
Anvil Cloud is the product in anvil-cloud: a local-first TypeScript platform for small app units called Anvil Cells.
A Cell declares app behavior, data shape, and required capabilities. Anvil runs it locally through the same request boundary used by deployment adapters, then emits manifests, generated client metadata, and deploy artifacts that can be inspected before anything reaches a provider.
The goal is not to make AWS easier to spray around. The goal is to give developers and coding agents a smaller app contract that is easier to understand, test, review, and deploy through controlled adapters.
Current package layout
| Package | Role |
|---|---|
@anvil-cloud/runtime |
Cell DSL, RuntimeRequest, RuntimeResponse, RuntimeHost, RuntimeContext, and handleRuntimeRequest. |
@anvil-cloud/builder |
Config loading, import policy, typecheck, server/client bundle, manifest extraction, build metadata, and generated client files. |
@anvil-cloud/local |
Local runtime server, JSON database adapter, local files, auth, logs, events, jobs, and inspection state. |
@anvil-cloud/client |
Browser client and framework hook helpers for generated query and mutation metadata. |
@anvil-cloud/cli |
anvil new, dev, check, build, inspect, logs, db, and deploy --preview. |
@anvil-cloud/aws |
AWS preview adapter, CloudFormation synthesis, Lambda runtime bridge, AWS-backed host adapters, artifact packaging, provisioning, remote inspect, and remote logs. |
Core terms
- Anvil Cloud: the toolchain and docs for building Anvil Cells.
- Anvil Cell: a deployable app unit with server functions, client UI, schema, endpoints, jobs, files, auth assumptions, environment needs, and declared capabilities.
- Anvil Runtime: shared execution layer for local, test, and adapter-backed execution.
- Anvil Builder: compiler and bundler that emits server bundle, client bundle, manifest, generated client output, and build metadata.
- Anvil Local: local runtime server and state adapters.
- Anvil Guard: import policy, capability checks, and safety validation.
- Anvil Lens: inspection surface for manifest, runtime status, local auth, logs, database state, and diagnostics.
What works now
The v0 implementation includes:
- object-based Cell DSL for
app,query,mutation,endpoint,job,table, and field builders - shared runtime request handling for query, mutation, endpoint, and job triggers
- in-memory and local runtime host adapters
- local HTTP runtime routes for queries, mutations, endpoints, health, manifest, and inspection
- local JSON database, files, auth, events, jobs, and NDJSON logs
- builder checks for config, forbidden imports, direct
process.env, undeclared fetch, scheduled jobs, and capability use - typecheck, bundle, manifest extraction, generated client output, and build metadata
- CLI commands with JSON output for automation
- AWS preview plan and CloudFormation synthesis
- AWS-backed runtime host adapters for DynamoDB, S3, SQS, EventBridge scheduled jobs, Lambda env, auth passthrough, and structured logs
- optional AWS provisioning when required environment variables are configured
- remote inspect and logs through deployment metadata and CloudWatch Logs
What is still v0
Do not read this as a production platform promise. Current limits include:
- AWS is the first adapter, not the application contract.
- Event publishing in the AWS preview adapter is still unsupported.
- Live AWS execution needs real account verification before production use.
- Auth provider integrations are still early.
- No hosted control plane, marketplace, multi-region deployment, Kubernetes, ECS, or arbitrary provider-resource authoring.
- Safety comes from capability scoping, import restrictions, runtime adapters, generated provider policy, and deployment isolation, not a perfect JavaScript sandbox.