npm包名称规范
包名称规范
最多为 214 个字符。
全部小写,多字母建议用中横线-分隔,不建议使用点.或下划线_分隔。
不允许使用某些特殊字符:“~\’!()*”)’,不允许有空格,不允许使用node_modules 或 favicon.ico等特殊名字。
不能以 . 或 _ 开头。
必须放在私有域下,私有域目前有@jdcfe,其他有需求请联系添加。
代码编写规范
代码必须使用ES6或者TypeScript语法编写,每个文件都必须严格满足JDCFE的Eslint规则。
必须使用ES Module规范,禁止使用AMD/CommonJS规范。
必须有单元测试,单元测试用例放在单独的test目录下,规范参见基础js lib单元测试规范。
对于复杂组件,应该有使用示例,可以放在demo目录下,在README中有链接到这些demo链接。
对于使用TypeScript编写的npm包,其导出文件必须有对应的类型定义文件。
有完整的NPM Scripts。
package.json规范
必须要有description属性,内容不能少于10字,包含功能/用途说明。
如果有依赖,必须要有dependencies属性,并声明正确的版本。
包的导出提供两种形式:ES Module导出和CommonJS导出,package.json的main字段指向CommonJS导出,module字段指向ES Module导出。命名推荐为:lib/、es/
必须有包含项目地址的repository字段。
必须有包含作者名的author字段,且建议用实名,避免找不到人。
必须遵循语义化版本规范,即maior.minor.patch形式,规范参见这里。每次变更请按照规范来修改package.json中的version字段。
npm script规范
文档规范
包根目录下必须有README.md文件,该文件是对包的简要说明,具体编写参见11.README文件编写建议(待补充. 。
对于复杂的组件,可以包含一个docs目录,该目录下可以放组件说明的md文件,用于对组件进行详细的说明
导出文件必须遵守jsdoc规范