A modular React Native library that wraps the native iOS and Android Firebase SDKs for services such as Auth, Firestore and Messaging.
aws-amplify/amplify-js
A declarative JavaScript library for building frontend and mobile apps that connect to AWS cloud services like auth, storage, and APIs.
- Stars
- 9,553
- Forks
- 2,174
- Open issues
- 515
- Last commit
- 13 hours ago
What is it?
AWS Amplify JavaScript is a library that gives frontend and mobile developers a consistent, declarative interface for cloud operations such as authentication, file storage, REST and GraphQL calls, analytics, and push notifications. It works with common JavaScript frontend workflows and React Native.
By default the categories map to AWS services: Cognito for authentication, S3 for storage, API Gateway and AppSync for APIs, Pinpoint for analytics and push, and Lex, IoT, and Location Service for bots, messaging, and maps. The library is also designed to be pluggable, so custom backends or other services can be used in place of the AWS defaults.
The package is published on npm as aws-amplify. Version 6 is the current major release, and versions 4 and below are in maintenance mode.
Key features
- 01Authentication APIs built on Amazon Cognito
- 02File storage with public, protected, and private buckets on Amazon S3
- 03REST and GraphQL API clients with SigV4 signing for AWS endpoints
- 04Offline-capable DataStore for shared data with online/offline sync
- 05Analytics and push notification support through Amazon Pinpoint
Use cases
- Adding sign-in and user management to a React or other JavaScript web app
- Uploading and managing user files in S3 from a frontend
- Building React Native apps that need offline-tolerant shared data
Quick start
- 1
Install the aws-amplify package from npm
- 2
Pick your platform on the official Getting Started page and follow its setup guide
Things to know
- Versions v4 and below are deprecated and in maintenance mode, so use v5 or v6.
- Amplify v6 and v5 include breaking changes that require migration from older APIs.
- The Geo category is in developer preview.
Topics
FAQ
- What is amplify-js?
- A declarative JavaScript library for building frontend and mobile apps that connect to AWS cloud services like auth, storage, and APIs. AWS Amplify JavaScript is a library that gives frontend and mobile developers a consistent, declarative interface for cloud operations such as authentication, file storage, REST and GraphQL calls, analytics, and push notifications. It works with common JavaScript frontend workflows and React Native.
- Is amplify-js free to use? What license does it have?
- amplify-js is open source under the Apache-2.0 license. Check the license terms before using it in commercial products.
- Is amplify-js still maintained?
- Actively maintained. The last commit to amplify-js was on Oct 21, 2026.
- What can I use amplify-js for?
- Adding sign-in and user management to a React or other JavaScript web app Uploading and managing user files in S3 from a frontend Building React Native apps that need offline-tolerant shared data
- How do I install amplify-js?
- Install the aws-amplify package from npm Pick your platform on the official Getting Started page and follow its setup guide
- Where can I get amplify-js?
- The source code and installation instructions are on GitHub: https://github.com/aws-amplify/amplify-js
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A JavaScript library for building interactive user interfaces from composable components, usable on the web, server and native platforms.
An open source UI toolkit built on Web Components for creating cross-platform iOS, Android, and PWA apps from one JavaScript/TypeScript codebase.
A framework for building native Android and iOS apps using React, with JavaScript UI rendered by native platform components.
A curated list of libraries, tools, news sources and learning resources for building React Native apps.
Routing and navigation library for React Native and Web apps, with stack, tab, and drawer navigators built on React components.