t3-code-android-nightly/.repos/alchemy-effect/examples/aws-website-astro
Julius Marminge e3c85ead63
chore(refs): sync Effect and Alchemy references to rc.115 and beta.78 (#12327)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-09-17 23:21:25 -07:00
..
public chore(refs): sync Alchemy reference to beta.76 (#10654) 2026-09-07 21:54:45 -07:00
src chore(refs): sync Alchemy reference to beta.76 (#10654) 2026-09-07 21:54:45 -07:00
test chore(refs): sync Effect and Alchemy references to rc.115 and beta.78 (#12327) 2026-09-17 23:21:25 -07:00
alchemy.run.ts chore(refs): sync Alchemy reference to beta.76 (#10654) 2026-09-07 21:54:45 -07:00
astro.config.ts chore(refs): sync Alchemy reference to beta.76 (#10654) 2026-09-07 21:54:45 -07:00
package.json chore(refs): sync Effect and Alchemy references to rc.115 and beta.78 (#12327) 2026-09-17 23:21:25 -07:00
README.md chore(refs): sync Alchemy reference to beta.76 (#10654) 2026-09-07 21:54:45 -07:00
tsconfig.json chore(refs): sync Alchemy reference to beta.76 (#10654) 2026-09-07 21:54:45 -07:00

AWS Website: Astro

Deploys an Astro site to AWS with AWS.Website.Astro — no astro.config.* adapter setup and no CloudFormation templates. The server bundle runs on a streaming Lambda Function URL; static assets deploy to S3 behind a CloudFront distribution.

  • src/pages/index.astro is server-rendered in the Lambda on every request and reads the GREETING environment value declared in alchemy.run.ts.
  • src/pages/about.astro opts into prerendering (export const prerender = true) and is served from S3.
  • Everything under public/ deploys as static assets.

The integration package must be installed in the project (it is loaded dynamically at deploy time):

bun add -d @alchemy.run/frontend-frameworks

Deploy

bun run deploy

Unchanged sources skip the Astro build entirely on subsequent deploys — the input files are content-hashed (scoped by memo.include).

Destroy

bun run destroy