如何创建自己的 npm starter-kit?

din*_*ker 5 starter-kits node.js npm npx

入门: 流行的 node.js 框架带有自己的 starter-kits 作为项目模板,例如 React 带有 starter-kit 。当用户想要创建一个新的 React 应用程序时,他们可以使用简写npx create-react-app my-app. ...来自动创建包含所有基线项目文件、目录和包依赖项的整个项目脚手架。使用 starter-kit 时,npx 解析 starter-kit 文件中的模板变量,即如果 package.json 包含一个 entry {{my-application-name}},npx 将根据用户输入将模板变量替换为例如“my-first-app”。React 只是此类入门套件的一个示例。

问题陈述: 我想为我自己的 node.js 框架构建我自己的入门套件。乍一看,似乎只是按照惯例将我的包命名为以“create-”开头,并在正确的位置使用模板-{{vars}}。我试了一下并开始复制&粘贴&替换,但是npm install没有用,因为未解析的模板变量会导致构建错误。

有人知道如何创建自己的 npx starter-kit 的教程吗?有人知道如何构建和发布新的入门套件吗?

小智 2

是的,您可以使用 npm 注册表上的 CLI 帮助程序包构建自己的 npx starter

如何构建您自己的 npx 启动器的步骤...?

  1. 您可以使用argsCommander获取 cli 输入(进程对象中的节点 argv)并将其解析为对象,以便您可以跟踪用户想要的内容

  2. 基于之前从 CLI 解析的对象,现在您可以使用查询器收集更多信息,您可以在其中询问是/否问题或选择多个选项之一。

  3. 用户回答所有问题后,您现在可以根据用户的输入编写创建所需启动器的逻辑

  4. 您可以使用execa执行进程命令,例如 git init 、 git clone 或任何您可能想到的命令

  5. 您可以使用listr用漂亮的旋转器来美化您自己的任务列表

  6. 您可以使用粉笔在 CLI 中用颜色打印该行,并使其更易于阅读,如果成功则将消息设置为绿色,如果失败则将消息设置为红色

有关其如何协同工作的更多说明,您可以观看此视频