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

CLI工具

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

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

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

什么Shopify应用程序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支持

安装CLI

为您提供灵活的工具

在构建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。

安装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工具:区分进程

和颜色格式选项:

CLI工具:颜色格式化

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

Shopify App CLI的未来

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

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

通过Shopify合作伙伴计划发展您的业务

了解更多