What is AWS Amplify?
AWS Amplify is a set of tools and services that enables front-end web and mobile developers to build, ship, and scale secure full-stack applications on AWS. It simplifies the process of configuring backend resources (auth, data, storage) and connecting them to your frontend code.
Key Concepts
1. Amplify Hosting
- Fully managed CI/CD and hosting service for fast, secure, and reliable static and serverless websites.
- Supports modern frameworks: Next.js, React, Vue, Angular, Hugo, etc.
2. Amplify CLI & Studio
- CLI: Configure and deploy AWS services (Cognito, DynamoDB, AppSync) from your terminal.
- Studio: Visual interface to model data, set up auth, and manage content.
3. Amplify Libraries
- Open-source client libraries to easily connect your app to AWS cloud services.
Exam Tips
[!TIP] "Build and deploy full-stack apps": The answer is almost always AWS Amplify.
[!IMPORTANT] Amplify vs. Regular S3 Hosting:
- Use S3 Static Hosting for simple, static HTML/CSS/JS sites.
- Use Amplify Hosting if you need CI/CD (Git integration), feature branch previews, or server-side rendering (SSR) support.
[!NOTE] Amplify abstracts away the complexity of CloudFormation. Under the hood, it uses CloudFormation to provision resources.
Common Use Cases
- Static Web Hosting: Hosting a portfolio or marketing site with Git-based deployment.
- Full-Stack Apps: Building a React Native app with Authentication and Database quickly.
- Prototyping: Rapidly spinning up a backend for a hackathon project.