solhint-config-thesis
v0.1.0
Published
Solhint shareable config for Thesis wide projects
Readme
solhint-config-thesis
Standard configuration for linting Solidity code using
Solhint.Solhint is an alternative to Solium(ethlint)
which is no longer maintained.
Uses the solhint:recommended ruleset, which itself is taken from the
Solidity Style Guide.
Usage
Setting up a project
- Install the linter and config -
yarn add -D solhint https://github.com/thesis/solhint-config.git - Create your
.solhint.json(you can add additional rules or plugins):
{
"extends": "thesis",
"plugins": [],
"rules": {
}
}- Add commands for linting to your
package.json:
{
"scripts": {
"lint:sol": "solhint 'contracts/**/*.sol'",
"lint:fix:sol": "solhint 'contracts/**/*.sol' --fix"
}
}Disabling the linter
Directory
Edit the .solhint.json.
File
/* solhint-disable */
Code block
/* solhint-disable *//* solhint-enable */
Line
Prefer /* over //, as it looks different to a comment on the rationale of code./* solhint-disable-next-line <rules> */
Adding a pre-commit hook
- repo: local
hooks:
- id: solhint
name: Solidity linter
language: node
entry: solhint
files: '\.sol$'
args:
- ./contracts/**/*.sol
- --config=./.solhint.json
additional_dependencies:
- [email protected]