Amplify: AWS's glue for full-stack apps
Say you have an app idea that needs users, data, and file uploads — the kind of thing almost every modern product requires. AWS Amplify is a set of tools that bundles AWS cloud services behind a simpler interface, so you don't have to wire everything up by hand.
Consider a typical scenario: a training app that sells personalized programs, hosts exercise videos, and manages consultation scheduling. Map those requirements to AWS services and you'd quickly be juggling multiple consoles and SDKs. Amplify pairs each need with a managed service and smooths over the configuration.
Hosting with CI/CD
For the front end, Amplify Console provides static web hosting globally via CDN. Connect a Git repository and every commit triggers a build pipeline that can run tests and deploy to a preview URL for each feature branch. You get deployment and CI/CD in one place.
Authentication and data
User sign-up, sign-in, and password recovery are handled by Amazon Cognito, built into Amplify. Social login providers are supported too. The point here isn't that Amplify reinvents auth — it abstracts the service so you write less boilerplate.
For data, Amplify includes AWS AppSync, which gives you GraphQL endpoints with real-time syncing and offline support on top of your choice of data store. That's a natural fit for modern front-end frameworks like React.
Setup via CLI
Provisioning these resources is command-line driven. After running amplify init in a project, you'd use amplify add api to get a guided setup for the data layer. Need S3 buckets for avatars or protected video files? amplify add storage walks you through that next.
Going beyond with Lambda
Not every service has an Amplify wrapper. Payment processing is the usual example — Stripe is a common choice thanks to its API and documentation. The pattern for integrating third-party services is to connect your AppSync GraphQL API to a serverless AWS Lambda function, which can call any external API. Detailed walkthroughs of this setup with Stripe Checkout are available from Ramon Postulart and from Beez Fedia.
The guide to add Payments to your React Native App with Stripe, Expo and AWS Amplify by @ramonpostulart https://t.co/CvKl72kzw4 pic.twitter.com/T1MxsK51WC
— AWS Amplify (@AWSAmplify) May 22, 2020
What to keep in mind
- Amplify is a helper layer. The underlying AWS services are the real product. Amplify ties together the ones you're likely to need and gets you started faster.
- Web hosting is its foundation. The standard setup follows the Jamstack model: globally distributed static assets backed by APIs. But you're not locked into any single front-end pattern; iOS development is also supported.
- Scaling is inherited from AWS. It's possible to run a personal project within the free tier, and the infrastructure behind the service can scale to production workloads without a migration.
- The toolset is wide. Beyond auth, data, and storage, Amplify covers features like push notifications and machine learning services.
https://www.youtube.com/watch?v=-Vm-4BbY58Y&feature=emb_title
Further reading
- The main resource page
- Nadar Dabit has written extensively on Amplify:
- Shawn Wang:



