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

标签 node.js npm starter-kits npx

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

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

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

最佳答案

是的,您可以使用 npm registery 上的 CLI 帮助程序包构建您自己的 npx starter
如何构建自己的 npx starter 的步骤......?

  • 您可以使用 argscommander获取 cli
    输入( Node argv 与进程对象 )并解析它
    进入对象,以便您可以跟踪用户想要的内容
  • 基于之前从 CLI 解析的对象,现在您可以
    使用 inquirer 收集更多信息在哪里
    您可以问是/否问题或选择众多选项之一。
  • 在用户回答所有问题后,您现在可以编写逻辑
    用于根据用户的输入创建所需的启动器
  • 您可以使用 execa执行进程命令,例如 git
    init 、 git clone 或您可能想到的任何命令
  • 您可以使用 listr用一个美化你自己的任务列表
    漂亮的纺纱机
  • 您可以使用 chalk在 CLI 中用颜色打印该行
    并使其更易于阅读 如果成功则消息为绿色,失败时为红色

  • 有关如何协同工作的更多说明,您可以查看此 video

    关于node.js - 如何创建自己的 npm starter-kit?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52042002/

    相关文章:

    javascript - 使用 AdWords API 获取关键字建议

    node.js - "npm install -g npm@latest"损坏了我的 npm 安装 - Windows 8.1

    javascript - 更新到 React 16.2.0 时找不到模块 "react/lib/ReactComponentTreeHook"错误

    Node.js 依赖安装给出 "self signed certificate in certificate chain"

    drupal - Drupal 7 的入门主题?斯塔克?禅?

    javascript - 如何使用 browserify 捆绑主干应用程序?

    node.js - 发送 header 后无法设置。如何避免呢?

    node.js - 未找到 FFmpeg/avconv