This command-line utility creates markdown-based documentation for your Solidity project(s) for the following platforms:
- Ethereum
- Ethereum Classic
- Tron
- Qtum
- Wanchain
- Aeternity
- Counterparty
- Rootstock
- Ubiq
- Monax
- RSK
Able to also generate docs for events and state variables with tags like @notice
, @dev
and @param
.
Global instalation
sudo npm install solidoc -g
Project instalation
npm install solidoc
CLI Arguments
- Path to Truffle project (or similar) root.
- Path to generate documentation to.
- Do not recompile. Optional, default: false.
- Compiler. Truffle compiler (use
npx truffle compiler
to use the same compiler as the project, instead of global install of Truffle). - Language. Optional, default: en.
- Version. Optional, refers to contracts version (depends on the project).
- Ignore files. Optional, array with filenames to ignore.
Using a configuration file is recommended (mostly if you want to ignore files).
How to Use Solidoc?
On your project root, run the following command:
solidoc ./ ./docs true
This will generate documentation to the docs
directory.
Or edit package.json
"scripts": {
"docgen": "solidoc ./ ./docs"
}
and run:
npm run docgen
Note
Do not use recompilation (third argument) if you are using this on a non Truffle project.
Alternatively, you can create solidoc.json
configuration file in your project root:
{
"pathToRoot": "./",
"outputPath": "./docs",
"noCompilation": true,
"compiler": "truffle compile",
"language": "en",
"version": "0.1.10",
"ignoreFiles": []
}
and then call solidoc
instead of passing any command line argument.
If you wish to change bits and pieces of the documentation generated, place solidoc templates
on the following directory:
./.solidoc/templates/
You can also override language literals by copying and editing i18n
files on the following path:
./.solidoc/i18n/