Linter for smart contracts on Nebulas blockchain.
星云链智能合约代码检查工具。
安装 Node.js 10+ 和 npm 6+。
在任何地方运行以下命令,即可安装为全局命令:
$ npm i -g naslint
然后就可以在任何地方使用 naslint
全局命令:
$ naslint my-contract.js
此时会对指定的合约文件进行检查,并给出检查报告。
在项目的根目录运行以下命令,即可安装为当前项目的开发依赖:
$ npm i -D naslint
然后在 package.json
文件中添加以下脚本:
{
"scripts": {
"lint": "naslint ./my-contract.js"
}
}
此后运行以下命令,即可对指定的合约文件进行检查:
$ npm run lint
NasLint 目前内置了下规则对合约代码进行检查和报警。
规则名 | 功能 | 文档 |
---|---|---|
export-contract |
Ensure an export is a smart contract object. | [↗] |
export |
Ensure an export is present. | [↗] |
limited-libs |
Report unsupported third-party library. | [↗] |
no-esm |
Report ESM import calls and export. | [↗] |
no-undef |
Report undefined variables. | [↗] |
可以,NasLint 是针对合约的 lint 工具,不局限于 JavaScript。NasLint 同时支持 JavaScript 和 TypeScript 编写的合约。
不冲突。这两者完全独立,可以同时使用。
像往常一样使用 ESLint 即可。你可以按你喜欢的方式配置 ESLint,这此配置并不会干扰到 NasLint。
有任何关于 NasLint 的疑问,欢迎加群讨论!请加群主微信号 cssmagic
,群主会拉你入群。
姓名 | 贡献 [*] | 备注 |
---|---|---|
@newraina | 🤔 💻 🚇 🔌 |
Founder |
@cssmagic | 🤔 🌍 📖 |
[*] These legends follow the emoji-key of "all-contributors" specification. Contributions of any kind are welcome!
NasLint is based on these open source projects:
MIT