AWS Amplify
amplify.yml installs with Bun, builds to out, and sets customHeaders for .well-known files.
Customize for your app
| File | Change? | What to put |
|---|---|---|
amplify.yml | Rarely | Keep baseDirectory: out and customHeaders; change only if you switch package managers |
config/site.json | Yes | Brand, copy, theme |
| Amplify console Environment variables | Yes | All association + NEXT_PUBLIC_* store / theme overrides |
Env vars to set in Amplify Hosting
ANDROID_PACKAGE_NAME=com.yourcompany.yourapp
ANDROID_SHA256_CERT_FINGERPRINTS=AA:BB:CC:...
IOS_TEAM_ID=ABCDE12345
IOS_BUNDLE_ID=com.yourcompany.yourapp
NEXT_PUBLIC_ANDROID_STORE_URL=https://play.google.com/store/apps/details?id=com.yourcompany.yourapp
NEXT_PUBLIC_IOS_STORE_URL=https://apps.apple.com/app/id1234567890
Amplify injects these into the build environment before bun run build, so generate:well-known and the static export pick them up.
Deploy
- Connect the GitHub repo in the Amplify console.
- Confirm it detects
amplify.yml. - Add the env vars above (per branch if you use Preview).
- Deploy and attach your custom domain (same domain as Firebase Auth continue URL / App Links).
Verify headers
Amplify customHeaders should serve association files as application/json with Content-Disposition: inline (see amplify.yml).