[译][NodeJs系列]如何开始一个Node项目

今天分享一篇来自Phil Nash的文章,介绍了一些咱们在构件项目时的小技巧,文末可见原文地址

若是你对NodeJs系列感兴趣,欢迎关注微信公众号:前端神盾局或 github NodeJs系列文章前端

建立一个Node项目

通常状况下我会使用npm来初始化一个全新的Node项目node

npm init

npm会循例问我几个问题以后便会在本地生成一个package.json文件。接下来我开始着手构建项目。git

首先我会从Github仓库拷贝一份.gitignore模版文件。以后(若是我还没忘记的话)我一般会建立一个开源协议的文件。github

显然,这很没有效率。npm

这周我有幸看到Tierney Cyren的推文:json

image

这四个命令将我从繁琐的手动操做中解脱出来,让项目有了一个好的开始:bash

  • npx license mit 经过license包下载对应的协议
  • npx gitignore node使用gitignore包自动的从Github仓库中下载相关文件
  • npx covgen使用covgen包生成一份贡献者契约,这会让你的项目更受贡献者的欢迎。
若是你以前从未使用过 npx,请先尝试在本地运行它,若是运行失败,能够经过 npm下载安装。对于一个新项目来讲, npx是颇有用的,它能够避免安装一些只有在项目建立时才会用到的全局依赖。
  • npm init -y会接受npm init过程当中的默认选项。

为确保npm init -y的结果是符合预期,Tierney建议咱们先配置npm init的默认项。微信

自定义你的npm init

npm config list能够查看npm已有配置。grep管道能够过滤出与npm init有关的配置项。编辑器

npm config list | grep init

你能够使用命令行或者npm config edit调用编辑器来配置诸如做者的名称、邮箱、url、开源协议以及项目版本这些默认选项。函数

npm set init.author.name "Your name"
npm set init.author.email "your@email.com"
npm set init.author.url "https://your-url.com"
npm set init.license "MIT"
npm set init.version "1.0.0"

一旦有了自定义的配置,npm init -y就会按照你的预期初始化。

建立一个初始化脚本

我对Tierney的建议作了点改进,下面是一段bash脚本,灵感来源于Tierney的推文。

function node-project {
  git init
  npx license $(npm get init.license) -o "$(npm get init.author.name)" > LICENSE
  npx gitignore node
  npx covgen "$(npm get init.author.email)"
  npm init -y
  git add -A
  git commit -m "Initial commit"
}

相较于Tierney的版本,这里直接从npm init的默认值中获取做者名称、email以及协议类型。同时添加了git初始化的命令。

你能够把这个函数存放在~/.bash_profile文件中,经过source ~/.bash_profile或者新建命令行窗口运行node-project去启动它。你能够随意的新增删除脚本以适应你的项目需求。

原文地址: https://philna.sh/blog/2019/01/10/how-to-start-a-node-js-project/

image

相关文章
相关标签/搜索