Skip to content

AWS

An Alchemy app on AWS is one runtime — usually a Lambda Function — plus the resources it talks to: tables, buckets, queues, streams. You wire them together with typed bindings: call S3.PutObject(bucket) in your code and Alchemy attaches the matching least-privilege IAM statement to the function’s role. The code is the policy.

New here? Set up credentials first, then deploy your first Lambda.

  • Lambda — serverless, event-driven functions with public Function URLs. The primary documented path: every resource and event source in this section is shown running on Lambda.
  • ECS — long-running containers on Fargate. Alchemy bundles your Effect program into a Docker image and runs it as a Cluster + Service + Task.
  • EC2 — full-control virtual machines, with the complete VPC networking toolkit around them.

Not sure which? See Choosing a runtime.

  • DynamoDB — key/value tables with GetItem/PutItem bindings and change-data-capture Streams.
  • S3 — object storage with GetObject/PutObject bindings and bucket event notifications.
  • RDS & Aurora — managed Postgres/MySQL: the Aurora helper stands up the whole cluster in one call, with a Connect binding or the Data API at runtime.
  • SQS — queues with a SendMessage binding and a Stream-shaped Lambda consumer.
  • SNS — pub/sub topics with a Publish binding and fan-out to queues and functions.
  • EventBridge & Scheduler — event buses, rules, and cron/rate schedules that invoke your functions.
  • Kinesis — ordered, sharded data streams with a PutRecord binding and the same Stream consumer surface.
  • Secrets & env — .env values via Config, Secrets Manager when the secret is shared, generated, or rotated.
  • CloudWatch — dashboards and metric alarms, declared in the same Stack as the resources they watch.
  • Websites — the frontend block: static sites and built Vite apps on S3 + CloudFront as a single StaticSite resource.
  • VPC & networking — the Network helper and the VPC primitives, for when ECS or EC2 needs explicit networking.
You’re buildingReach for
An HTTP APILambda + Function URL + DynamoDB
A typed HTTP APIEffect HTTP API on Lambda
A typed API for external clientsEffect RPC on Lambda
Drive a MicroVM from a Lambda (internal RPC)MicroVMs + Schemaless RPC
A REST API with stages/custom domainsAPI Gateway
Your own domain on a site or APICustom domains with Route53 + ACM
A static siteDeploy a static site on S3 + CloudFront
An event pipelineKinesis → Lambda
Background jobsSQS + Lambda
Scheduled jobsEventBridge Scheduler → Lambda
A Postgres databaseRDS & Aurora
Object processingS3 events
Change data captureDynamoDB Streams
API keys or credentials for a functionSecrets & env