AWS Amplify
Deploy Nitro apps to AWS Amplify Hosting.
Preset: aws_amplify
Deploy to AWS Amplify Hosting
Integration with this provider is possible with zero configuration.
Login to the AWS Amplify Hosting Console
Click on "Get Started" > Amplify Hosting (Host your web app)
Select and authorize access to your Git repository provider and select the main branch
Choose a name for your app, make sure build settings are auto-detected and optionally set requirement environment variables under the advanced section
Optionally, select Enable SSR logging to enable server-side logging to your Amazon CloudWatch account
Confirm configuration and click on "Save and Deploy"
Advanced Configuration
You can configure advanced options of this preset using awsAmplify option.
export default defineNitroConfig({
  awsAmplify: {
      // catchAllStaticFallback: true,
      // imageOptimization: { path: "/_image", cacheControl: "public, max-age=3600, immutable" },
      // imageSettings: { ... },
      // runtime: "nodejs18.x", // default: "nodejs18.x" | "nodejs16.x" | "nodejs20.x"
  }
})
export default defineNuxtConfig({
  nitro: {
    awsAmplify: {
      // catchAllStaticFallback: true,
      // imageOptimization: { "/_image", cacheControl: "public, max-age=3600, immutable" },
      // imageSettings: { ... },
      // runtime: "nodejs18.x", // default: "nodejs18.x" | "nodejs16.x" | "nodejs20.x"
    }
  }
})
amplify.yml
You might need a custom amplify.yml file for advanced configuration. Here are two template examples:
version: 1
frontend:
  phases:
    preBuild:
      commands:
        - nvm use 18 && node --version
        - corepack enable && npx --yes nypm install
    build:
      commands:
        - pnpm build
  artifacts:
    baseDirectory: .amplify-hosting
    files:
      - "**/*"
version: 1
applications:
  - frontend:
      phases:
        preBuild:
          commands:
          - nvm use 18 && node --version
          - corepack enable && npx --yes nypm install
        build:
          commands:
            - pnpm --filter website1 build
      artifacts:
        baseDirectory: apps/website1/.amplify-hosting
        files:
          - '**/*'
      buildPath: /
    appRoot: apps/website1