Skip to content

Amplify

Overview

AWS Amplify is a comprehensive set of tools and services for building and deploying full-stack mobile and web applications, often described as the “Elastic Beanstalk for mobile and web applications”.

Core Components

Amplify Studio

  • Visually build full-stack applications
  • Integrated front-end UI and backend development
  • Provides graphical interface for app creation

Amplify Libraries

Connect applications to AWS services. Support for:

  • Amazon Cognito
  • Amazon S3
  • Other AWS services

Front-end libraries for multiple frameworks:

  • React.js
  • Vue
  • JavaScript
  • iOS
  • Android
  • Flutter

Amplify CLI

  • Configure backend infrastructure
  • Guided workflow for backend setup
  • Streamlines AWS service configuration

Amplify Hosting

  • Secure and reliable web app hosting
  • Leverages AWS Content Delivery Network (CDN)
  • Provides continuous deployment capabilities

Key Features

Authentication

Powered by Amazon Cognito. Features:

  • User registration
  • Authentication
  • Account recovery
  • Multi-factor authentication
  • Social sign-in
  • Pre-built UI components
  • Fine-grained authorization

DataStore

Utilizes Amazon AppSync and DynamoDB. Capabilities:

  • Local data management
  • Automatic cloud synchronization
  • GraphQL-powered
  • Offline and real-time data capabilities
  • Visual data modeling

Hosting Capabilities

  • Continuous Integration/Continuous Deployment (CI/CD)
  • Pull request previews
  • Custom domain support
  • Monitoring
  • Redirect and custom header configurations
  • Password protection

End-to-End (E2E) Testing

  • Integrated testing framework
  • Supports Cypress testing
  • Test phases:
  • During build
  • During deployment
  • Generates UI test reports

Benefits

  • Simplified full-stack development
  • Incorporates AWS best practices
  • Supports reliability, security, and scalability
  • Rapid application development
  • Seamless integration with AWS services

Supported Development Workflows

  • CLI-based development
  • Visual studio development
  • Hybrid approaches