Shopify App命令行工具:更快地构建应用程序

CLI工具

2019年11月,我们发布了Shopify App命令行这是一个命令行工具,旨在帮助开发人员通过搭建应用程序代码和自动化一些应用程序开发过程来构建应用程序。Shopify App CLI工具旨在通过加快应用程序开发速度,帮助您在我们的平台上提高生产效率。

自测试版发布以来,我们一直在努力改进CLI工具,以提高其健壮性,并使其更容易在各种平台上安装,现在包括Windows 10,原生安装。在本文中,我们将介绍它的1.1版本(撰写本文时是最新版本)的一些特性,以便您在构建新应用程序时可以在开发过程中利用它。

你错过了2019年Shopify Unite上发布的CLI工具吗?观看Shopify产品总监Vanessa Lee在下面的视频中介绍它。

什么是Shopify App CLI工具

简要回顾一下:命令行界面(CLI)工具是为特定目的而创建的脚本、程序和库。您可以使用CLI命令来使用CLI应用程序。

Shopify App CLI工具通过消除您在启动新应用程序时可能面临的许多障碍,简化了应用程序开发过程OB欧宝娱乐APPshopify创建进入终端后,它会提示你想创建哪种类型的应用程序。你可以选择创建一个应用node . js后端和React前端,或者Ruby on Rails。

“Shopify App CLI工具通过消除您在启动新应用时可能面临的许多障碍,简化了应用开发过程。”OB欧宝娱乐APP

Shopify App CLI工具可以通过四种主要方式帮助您加快开发过程。

1.创建项目

当你创建一个应用程序时,它会要求你选择一个组织,开发商店,以及你想要制作的应用程序类型。然后,它会在合作伙伴仪表板对你:

CLI工具:创建项目

然后CLI将为您运行一个隧道shopify服务,这样你的应用程序就可以通过https,这是Shopify认证的要求。这将通过ngrok隧道你的应用程序,并运行你的服务器进行本地开发:

CLI工具:创建项目shopify服务

你可能还喜欢:开发你的第一个Shopify应用程序:要避免的4个错误

2.添加测试信息

CLI还简化了添加产品、客户或草案订单的过程测试你的应用上。运行shopify填充填充这些:

CLI工具:添加测试

你可能还喜欢:如何在应用程序中使用相对分页

3.部署应用程序

将应用程序部署到外部平台,例如Heroku也可以通过CLI完成。这就是shopify部署会派上用场的:

CLI工具:部署你的应用

按照下面的链接在您的机器上安装CLI,并自己探索这些特性。现在有了更多可用的安装选项,以及本机Windows支持

安装命令行

一个灵活的工具

在构建Shopify App CLI时,我们希望确保我们创建的东西能够适应尽可能多的开发人员。我们研究了以开发人员为中心的工具的前景,并提出了一些工具需要遵循的戒律:

  1. 不要做假设.在内部,我们的工具对用户的开发环境做了很多假设。在Shopify,每个人都用mac电脑。但在Shopify之外,开发人员对不同的操作系统和安装语言的方式有不同的偏好。Shopify App CLI会推荐如何安装语言,但不会强制执行任何一种特定的方式。
  2. 不要要求升级的特权.通常,开源工具会避免使用升级的特权。如果有,则通常留给用户作为特定操作的一部分来执行(Sudo make install,例如)。给App CLI全局权限可能会给开发者的系统带来潜在的安全隐患。
  3. 不要删除东西.工具执行的任何操作都应是非破坏性的。如果您愿意,我们将由您来删除由该工具创建的项目和文件。
“在构建Shopify App CLI时,我们希望确保我们创造的东西能够适应尽可能多的开发人员。”

您可以查看我们原则的完整列表在CLI工具wiki中.这些规则旨在创建一个灵活的工具,因此您可以以最适合您偏好的任何方式使用Shopify App CLI。

安装命令行

我们如何构建Shopify App CLI

在过去,我们建立了命令行工具使用Node, Go和Ruby。我们想用一种语言来构建Shopify App CLI,在这种语言中,安装既快速又容易,也很容易做出贡献。以下是我们所经历的决策过程:

  • Node有一些非常棒的用于编写命令行工具的库,比如yargs墨水,但是管理基于node的工具的路径和安装可能很困难。我们不希望依赖这样的依赖项来执行。
  • 是构建跨平台命令行工具的最佳选择,因为它可以很容易地编译为适用于主要操作系统的二进制文件。但是,我们关心的是它有多平易近人,以及你为它做出贡献有多容易。
  • 鲁比(人名)是一种比Go更容易接近的语言,并且拥有比Node更广泛的标准库,允许我们在没有任何依赖的情况下实现更多,使工具保持闪电般的速度。Ruby在Mac OS和主要的Linux发行版上也预装或很容易安装,我们在Shopify非常熟悉它。我们已经在Ruby内部编写了命令行工具,并将这些知识提取到cli-kit构建命令行工具的框架,以及cli-ui命令行UI模式的集合。因此,我们选择了Ruby。

cli-uikit通过可重用的UI组件提供健壮的用户体验,而无需考虑终端转义序列、终端宽度或构建命令行工具所涉及的其他深奥细节。

它可以提示用户选择选项:

命令行工具:选择选项

区分进程的框架:

命令行工具:区分进程

和颜色格式选项:

CLI工具:颜色格式化

这些开源工具在内部用于支持我们自己的命令行工具,我们认为它们也会帮助您更有效地构建应用程序。

Shopify App CLI的未来

Shopify App CLI旨在使Shopify应用程序开发更快,突出显示可用的包和库,并为您提供愉快的用户体验。通过使构建应用程序更容易,更快,更直观,它将使您的开发过程更顺畅,因此您可以专注于为用户创建出色的产品。

CLI工具是开源的,所以您可以直接对代码库做出贡献.我们一直在寻找更多的应用来支撑,新的合作伙伴开发的功能,和反馈。作为Shopify和您(我们的开发者社区)之间的真正合作,我们希望Shopify App CLI将继续发展以满足您的需求。

借助Shopify合作伙伴计划发展您的业务

了解更多