Skip to content
This repository has been archived by the owner on Aug 16, 2024. It is now read-only.

Latest commit

 

History

History
110 lines (69 loc) · 3.78 KB

README.md

File metadata and controls

110 lines (69 loc) · 3.78 KB

English version

NasLint

npm Travis (.org)

Linter for smart contracts on Nebulas blockchain.

星云链智能合约代码检查工具。

screenshot

安装与使用

前提条件

安装 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 可以检查我用 TypeScript 编写的合约代码吗?

可以,NasLint 是针对合约的 lint 工具,不局限于 JavaScript。NasLint 同时支持 JavaScript 和 TypeScript 编写的合约。

NasLint 与 ESLint 冲突吗?我在项目中还想使用 ESLint 怎么办?

不冲突。这两者完全独立,可以同时使用。

像往常一样使用 ESLint 即可。你可以按你喜欢的方式配置 ESLint,这此配置并不会干扰到 NasLint。

社区

微信群

有任何关于 NasLint 的疑问,欢迎加群讨论!请加群主微信号 cssmagic,群主会拉你入群。

贡献者  

姓名 贡献 [*] 备注
@newraina 🤔 💻 🚇 🔌 ⚠️ 📖 Founder
@cssmagic 🤔 🌍 📖

[*] These legends follow the emoji-key of "all-contributors" specification. Contributions of any kind are welcome!


Thanks

NasLint is based on these open source projects:

License

MIT