这个项目能做什么
AWS Amplify CLI(Gen 1)是一个命令行工具链,用于简化无服务器 Web 和移动应用程序开发。它使用 AWS CloudFormation 和嵌套堆栈,使开发者能够在本地添加或修改配置,然后再推送这些配置以在其 AWS 账户中执行。README 指出,Amplify Gen 1 处于维护模式:自 2026 年 5 月 1 日起,Gen 1 后端仅接收关键错误修复和安全补丁,并将于 2027 年 5 月 1 日终止支持。新项目被引导使用 Amplify Gen 2,现有 Gen 1 用户被鼓励使用提供的指南和工具进行迁移。
安装需要 Node.js 22 或更高版本。CLI 通过 npm 以 @aws-amplify/cli 全局安装,随后运行 amplify configure 来设置 AWS 访问凭证、区域和新的 AWS 用户配置文件。
核心命令包括:amplify configure 用于凭证和配置文件设置;amplify init 用于初始化项目并准备部署资源;amplify configure project 用于更新 init 设置;amplify add 和 amplify update 用于按类别添加或更新云功能;amplify push 用于根据本地更改预置云资源,其中 no-gql-override 标志会跳过对带注释 GraphQL schema 的自动编译,并覆盖本地 AppSync 解析器和模板;amplify pull 用于获取上游后端环境更改;amplify publish 用于在启用托管时运行 push 并将静态资源发布到 Amazon S3 和 Amazon CloudFront;amplify status 包括 verbose 模式,可使用 cloudformation-diff 显示本地资源与已部署资源之间的详细差异;amplify serve 用于推送并运行项目启动命令;amplify delete 用于删除项目资源;amplify help 用于核心 CLI 帮助;amplify codegen add 或 generate 用于从 GraphQL schema 生成强类型对象;以及 amplify env add、list、remove、get、pull、import 和 checkout 用于多环境工作流。
按类别划分的命令涵盖 auth(Amazon Cognito)、storage(Amazon S3 和 Amazon DynamoDB)、function(AWS Lambda)、api(AWS AppSync 和 Amazon API Gateway)、analytics(Amazon Pinpoint)、hosting(Amazon S3 和 Amazon CloudFront 分配)、notifications(Amazon Pinpoint)、interactions(Amazon Lex)和 predictions(Amazon Rekognition、Amazon Textract、Amazon Translate、Amazon Polly、Amazon Transcribe、Amazon Comprehend 和 Amazon SageMaker)。
README 中链接的教程包括入门指南、GraphQL transform 教程,以及使用 Amplify CLI 和 AWS AppSync 进行原生开发。对于开发,贡献者可以设置本地环境,使用 amplify-dev init 和带类别子命令的 amplify-dev 测试某个类别,并在推送代码或打开拉取请求之前,在顶层运行 yarn lint;对于存在错误的包,使用 yarn lint-fix,并手动解决剩余的 lint 问题。仓库中提供了贡献指南。
评论
0 评分人数达到10人后显示
登录后参与讨论。