AWS Amplify is a JavaScript library for frontend and mobile developers building cloud-enabled applications
AWS Amplify provides a declarative and easy-to-use interface across different categories of cloud operations. AWS Amplify goes well with any JavaScript based frontend workflow and React Native for mobile developers.
Our default implementation works with Amazon Web Services (AWS), but AWS Amplify is designed to be open and pluggable for any custom backend or service.
- If you are using React Native or Expo, you will need add
@react-native-async-storage/async-storage
as a dependency to your application, in addition to the other React Native dependencies:
// React Native
yarn add aws-amplify amazon-cognito-identity-js @react-native-community/netinfo @react-native-async-storage/async-storage
npx pod-install
// Expo
yarn add aws-amplify @react-native-community/netinfo @react-native-async-storage/async-storage
AWS.credentials
andAWS.config
don’t exist anymore anywhere in Amplify JavaScript.- Both options will not be available to use in version 3. You will not be able to use and set your own credentials.
- For more information on this change, please see the AWS SDK for JavaScript v3
aws-sdk@2.x
has been removed fromAmplify@3.x.x
in favor of version 3 of aws-sdk-js. We recommend to migrate to aws-sdk-js-v3 if you rely on AWS services that are not supported by Amplify, since aws-sdk-js-v3 is imported modularly.
If you can't migrate to aws-sdk-js-v3 or rely on aws-sdk@2.x, you will need to import it separately.
-
If you are using exported paths within your Amplify JS application, (e.g.
import from "@aws-amplify/analytics/lib/Analytics"
) this will now break and no longer will be supported. You will need to change to named imports:import { Analytics } from 'aws-amplify';
-
If you are using categories as
Amplify.<Category>
, this will no longer work and we recommend to import the category you are needing to use:import { Auth } from 'aws-amplify';
- Authentication: APIs and building blocks for developers who want to create user authentication experiences.
- Analytics: Easily collect analytics data for your app. Analytics data includes user sessions and other custom events that you want to track in your app.
- REST API: Provides a simple solution when making HTTP requests. It provides an automatic, lightweight signing process which complies with AWS Signature Version 4.
- Geo (Developer preview): Amplify Geo provides APIs and map UI components for maps and location search for JavaScript-based web apps.
- GraphQL API: Interact with your GraphQL server or AWS AppSync API with an easy-to-use & configured GraphQL client.
- DataStore: 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.
- Storage: Provides a simple mechanism for managing user content for your app in public, protected or private storage buckets.
- Push Notifications: Allows you to integrate push notifications in your app with Amazon Pinpoint targeting and campaign management support.
- Interactions: Create conversational bots powered by deep learning technologies.
- PubSub: Provides connectivity with cloud-based message-oriented middleware.
- Internationalization: A lightweight internationalization solution.
- Cache: Provides a generic LRU cache for JavaScript developers to store data with priority and expiration settings.
- Predictions: Provides a solution for using AI and ML cloud services to enhance your application.
Visit our Web Site to learn more about AWS Amplify.
AWS Amplify is available as aws-amplify
package on npm.
Web
If you are developing a JavaScript app, please visit our documentation site on JavaScript.
React
If you are developing a React app, please visit our documentation site on React.
Angular
If you are developing an Angular app, please visit our documentation site on Angular.
Vue
If you are developing a Vue app, please visit our documentation site on Vue.
React Native
For React Native development, install aws-amplify
:
$ npm install aws-amplify --save
If you are developing a React Native app, you can install an additional package aws-amplify-react-native
containing Higher Order Components:
$ npm install aws-amplify-react-native --save
Visit our Installation Guide for React Native to start building your web app.