Create seamless on-boarding flows with a fully-managed user directory and pre-built sign-up, sign-in, forgot password, and multi-factor auth workflows. Amplify also supports login with a social provider such as Facebook, Google Sign-In, or Login With Amazon and provides fine grained access control to mobile and web applications. Powered by Amazon Cognito.
Use a multi-platform (iOS/Android/React Native/Web) on-device persistent storage engine that automatically synchronizes data between mobile/web apps and the cloud, powered by GraphQL. DataStore provides a programming model for leveraging shared and distributed data without writing additional code for offline and online scenarios, which makes working with distributed, cross-user data just as simple as working with local-only data. Powered by AWS AppSync.
Understand the behavior of your web, iOS or Android users. Use auto tracking to track user sessions and web page metrics or create custom user attributes and in-app metrics. Get access to real time data stream and analyze the data for customer insights and build data driven marketing strategies to drive customer adoption, engagement, and retention. Powered by Amazon Pinpoint and Amazon Kinesis.
Make secure HTTP requests to GraphQL and REST endpoints to access, manipulate, and combine data from one or more data sources such Amazon DynamoDB, Amazon Aurora Serverless, and your custom data sources with AWS Lambda. Amplify enables you to easily build scalable applications that require real-time updates, local data access for offline scenarios, and data synchronization with customizable conflict resolution when devices are back online. Powered by AWS AppSync and Amazon API Gateway.
Add a Lambda function to your project which you can use alongside a REST API or as a datasource in your GraphQL API using the @function directive in the Amplify CLI. You can update the Lambda execution role policies for your function to access other resources generated and maintained by the CLI, using the CLI. Amplify CLI enables you to create, test and deploy Lambda functions across various runtimes and once a runtime is selected, you can select a function template for the runtime to help bootstrap your Lambda function.
Build interactive and engaging conversational bots with the same deep learning technologies that power Amazon Alexa with just a single line of code. Create great user experiences through chat bots when it comes to tasks such as automated customer chat support, product information/recommendations or streamlining common work activities etc. Powered by Amazon Lex.
Enhance your app by adding AI/ML capabilities. You can easily achieve use cases like text translation, speech generation from text, entities recognition in image, interpretation of text, and transcribing text. Amplify enables simplified orchestration of advanced use cases like uploading images for automatic training and using GraphQL directives for chaining multiple AI/ML actions. Powered by Amazon Machine Learning services, such as Amazon Sagemaker.
Pass messages between your app instances and your app's backend creating real-time interactive experiences. Amplify provides connectivity with cloud-based message-oriented middleware. Powered by AWS IoT services and Generic MQTT Over WebSocket Providers.
Improve customer engagement by using marketing and analytics capabilities. Leverage customer insights to segment and target your customers more effectively. You can tailor your content and communicate through multiple channels including email, texts as well as push notifications. Powered by Amazon Pinpoint.
Store and manage user generated content such as photos, videos securely on device or in the cloud. The AWS Amplify Storage module provides a simple mechanism for managing user content for your app in public, protected or private storage buckets. Leverage cloud scale storage so that you can easily take your application from prototype to production. Powered by Amazon S3.
AWS Amplify offers a fully managed service for deploying and hosting fullstack web applications, with built-in CI/CD workflows that accelerate your application release cycle. A fullstack serverless app consists of a backend built with cloud resources such as GraphQL or REST APIs, file and data storage, and a frontend built with single page application frameworks such as React, Angular, Vue, or Gatsby. Simply connect your application's code repository in the Amplify console, and changes to your frontend and backend are deployed in a single workflow on every code commit.
Scale and manage
Use the Amplify admin UI to manage app users and content.
The admin UI offers a way to manage authenticated users. Create/edit users and groups, update user properties, auto-verify signups, and more, without going through verification flows.
Developers can give content editors and testers access to update the app data via the admin UI. Admins can save content as markdown to render rich text.
Modify fine-grained backend resource settings and override via CDK. Amplify does the heavy lifting fo your. For example, use Amplify to add new Cognito resources with default settings to your backend. Override just the settings you want with amplify override auth.
The Amplify CLI provides escape hatches to add custom AWS resources with CDK or CloudFormation. Running the “amplify add custom” command in your Amplify project provides CDK or CloudFormation placeholders along with mechanisms to reference other Amplify-generated resources.
Amplify is built on top of Infrastructure-as-Code that deploys resources within your account. Add business logic to your backend using Amplify's Function and Container support. Grant functions access to an SNS topic to send an SMS or allow your container to access an existing database.
Integrate your existing resources, such as your Amazon Cognito user pool and federated identities (identity pool), or Storage resources like DynamoDB + S3, into an Amplify project via the Amplify Admin UI. This will enable your API (GraphQL), Storage (S3), and other resources to leverage your existing authentication mechanism.
Use Command Hooks to run custom scripts before, during, and after Amplify CLI commands (“amplify push”, “amplify api gql-compile”, and more). Customers can trigger validation checks, run credential scans, or clean-up build artifacts during deployment. This allows you to extend Amplify’s best-practice defaults to meet your organization’s security guidelines and operational requirements.
You can use Amplify with your existing DevOps guidelines and tools to enforce deployment policies or to integrate into your in-house deployment systems. Amplify’s export feature lets you export your Amplify project to your preferred tooling, using CDK. “amplify export” exports the Amplify CLI build artifacts (including CloudFormation templates, API resolver code, and client-side code generation).
AWS Amplify offers use case-centric open source libraries in the Amplify Framework to build cloud powered mobile and web apps. Amplify libraries are powered by AWS services and can be used with new backends created with the Amplify CLI and admin UI, or your existing AWS backend.
Amplify UI Components is an open-source UI toolkit that encapsulates cloud-connected workflows inside of cross-framework UI components. AWS Amplify provides drop-in UI components for authentication, storage and interactions, with a style guide for your apps that automatically integrate with your configured cloud services.
The Amplify admin UI offers an easy way to develop app backends and manage app content. Every Amplify app is automatically set up with an admin UI that provides a visual interface for modeling data, adding authentication, authorization and managing users and groups. As you create backend resources, the admin UI generates automation templates that enable seamless integration with the Amplify CLI, giving you the ability to extend your app backend with additional capabilities and create multiple environments for testing and team collaboration. With the Amplify admin UI, you can provide access to team members without an AWS account so developers and non-developers can access the data they need to develop and manage apps more efficiently.
The Amplify Command Line Interface (CLI) is a toolchain to configure and maintain your app backend from your local desktop. Configure cloud functionality using the CLI's interactive workflow and intuitive use cases such as auth, storage, API. Test features locally and deploy multiple environments. All configured resources are available to customers as infrastructure-as-code templates enabling better team collaboration and easy integration with Amplify's CI/CD workflow.
The AWS Amplify console is the control center for your full-stack app. Host your front-end web app, create/delete backend environments, setup CI/CD on the front end and backend, and access the Admin UI to configure your backend and manage app content and users.