Skip to content

The AWS Amplify CLI is a toolchain for simplifying serverless web and mobile development.

License

Notifications You must be signed in to change notification settings

aws-amplify/amplify-cli

Folders and files

NameName
Last commit message
Last commit date

Latest commit

e725d19 · May 11, 2024
Feb 22, 2024
Mar 15, 2024
Aug 3, 2023
Jun 28, 2023
Jun 1, 2023
Feb 16, 2023
Apr 26, 2024
Feb 16, 2023
May 11, 2024
Mar 31, 2022
Apr 29, 2024
Dec 14, 2022
Apr 24, 2024
Feb 24, 2023
Aug 24, 2023
Jun 1, 2023
Sep 25, 2023
Jul 22, 2018
Aug 30, 2023
Feb 16, 2023
Jun 1, 2023
Aug 8, 2023
Mar 2, 2020
May 6, 2024
Mar 31, 2022
May 6, 2020
Jun 7, 2023
Oct 10, 2019
Feb 16, 2023
Jun 7, 2023
Jun 1, 2023
May 6, 2020
Apr 21, 2023
May 7, 2024
Apr 29, 2024
May 7, 2022
Jul 28, 2023
May 7, 2024
AWS Amplify

Discord Chat

Reporting Bugs/Feature Requests

Open Bugs Feature Requests Closed Issues

Important

Amplify Gen 2 is now generally available

If you are starting a new project, we recommend starting with Amplify Gen 2.

If you are an existing Gen 1 customer, we recommend that you continue working with your Gen 1 Amplify project. We are actively developing migration tooling to aid in transitioning your project from Gen 1 to Gen 2. We remain committed to supporting both Gen 1 and Gen 2 for the foreseeable future.

Customers on Gen 1 will continue to receive support for high-priority bugs and essential security updates.

AWS Amplify CLI (Gen 1)

The AWS Amplify CLI is a toolchain which includes a robust feature set for simplifying mobile and web application development. The CLI uses AWS CloudFormation and nested stacks to allow you to add or modify configurations locally before you push them for execution in your account.

Install the CLI

  • Requires Node.js® version 18 or later

Install and configure the Amplify CLI as follows:

$ npm install -g @aws-amplify/cli
$ amplify configure

Commands Summary

The Amplify CLI supports the commands shown in the following table.

Command Description
amplify configure Configures the AWS access credentials, AWS Region and sets up a new AWS User Profile
amplify init Initializes a new project, sets up deployment resources in the cloud and prepares your project for Amplify.
amplify configure project Updates configuration settings used to setup the project during the init step.
amplify add <category> Adds cloud features to your app.
amplify update <category> Updates existing cloud features in your app.
amplify push [--no-gql-override] Provisions cloud resources with the latest local developments. The 'no-gql-override' flag does not automatically compile your annotated GraphQL schema and will override your local AppSync resolvers and templates.
amplify pull Fetch upstream backend environment definition changes from the cloud and updates the local environment to match that definition.
amplify publish Runs amplify push, publishes a static assets to Amazon S3 and Amazon CloudFront (*hosting category is required).
amplify status [ <category>...] Displays the state of local resources that haven't been pushed to the cloud (Create/Update/Delete).
amplify status -v [ <category>...] Verbose mode - Shows the detailed verbose diff between local and deployed resources, including cloudformation-diff
amplify serve Runs amplify push, and then executes the project's start command to test run the client-side application.
amplify delete Deletes resources tied to the project.
amplify help | amplify <category> help Displays help for the core CLI.
amplify codegen add | generate Performs generation of strongly typed objects using a GraphQL schema.
amplify env add | list | remove | get | pull | import | checkout See the multienv docs.

Category specific commands:

Tutorials

Developing

To set up your local development environment, go to Local Environment Setup.

To test your category, do the following:

cd <your-test-front-end-project>
amplify-dev init
amplify-dev <your-category> <subcommand>

Before pushing code or sending a pull request, do the following:

  • At the command line, run yarn lint at the top-level directory. This invokes eslint to check for lint errors in all of our packages.
  • You can use yarn lint to find some of the lint errors. To attempt fix them, go to the package that has errors and run yarn lint-fix
  • If there are any remaining lint errors, resolve them manually. Linting your code is a best practice that ensures good code quality so it's important that you don't skip this step.

Contributing

We are thankful for any contributions from the community. Look at our Contribution Guidelines.