Name:
interface
Value:
Extend your Amplify Gen 2 app with AWS Blocks — self-contained backend capabilities you compose into your existing backend.

Amplify Documentation

AWS Amplify is everything you need to build web and mobile apps. Easy to start, easy to scale.

You can build a fullstack app using Amplify backend building capabilities and deploy your web app with managed hosting or to your own AWS account.

How Amplify works >

Build fullstack apps with your framework of choice

You can use AWS Amplify with popular web and mobile frameworks like JavaScript, Flutter, Swift, and React. Build, connect, and host fullstack apps on AWS. Get started by selecting your preferred framework.

Features

Code-first DX

The fullstack TypeScript developer experience lets you focus on your app code instead of infrastructure.

Fullstack Git deployments

Deploy your frontend and backend together on every code commit. Your Git branch is the source of truth.

Faster local development

Per-developer cloud sandbox environments let you quickly iterate during development.

Develop

Deploy

Amplify Hosting

Connect your Git repository. Your app builds and deploys on every push with SSR, SSG, and ISR support.

Diagram showing sandbox environments connected to a Git repo, with Amplify Hosting deploying branch environments
Learn more about Amplify Hosting >

Self-managed hosting (Preview)

Deploy to your AWS account with full AWS CDK control over Amazon CloudFront, Amazon S3, and AWS Lambda.

Diagram showing sandbox environments connected to a Git repo, with self-managed deployment via ampx deploy or definePipeline to your AWS account
Learn more about self-managed hosting >

Customize

amplify/backend.ts
import * as sns from 'aws-cdk-lib/aws-sns';
import * as sqs from 'aws-cdk-lib/aws-sqs';
import { defineBackend } from '@aws-amplify/backend';
import { auth } from './auth/resource';
import { data } from './data/resource';
const backend = defineBackend({
auth,
data
});
const customResourceStack = backend.createStack('MyCustomResources');
new sqs.Queue(customResourceStack, 'CustomQueue');
new sns.Topic(customResourceStack, 'CustomTopic');