Skip to content

Documentation generator for Solidity projects

License

Notifications You must be signed in to change notification settings

OpenZeppelin/solidity-docgen

Folders and files

NameName
Last commit message
Last commit date
Sep 14, 2023
Aug 25, 2023
Dec 2, 2022
Jan 5, 2022
May 2, 2022
Jan 5, 2022
Jan 18, 2022
Apr 20, 2022
Dec 19, 2021
Jul 19, 2022
Jun 24, 2022
Jan 5, 2022
Sep 1, 2023
Aug 25, 2023
Jan 2, 2023
Jan 5, 2022

Repository files navigation

solidity-docgen

solidity-docgen is a program that extracts documentation for a Solidity project.

The output is fully configurable through Handlebars templates, but the default templates should do a good job of displaying all of the information in the source code in Markdown format. The generated Markdown files can be used with a static site generator such as Vuepress, MkDocs, Jekyll (GitHub Pages), etc., in order to publish a documentation website.

This is a newer version of the tool that has been rewritten and redesigned. Some more work is pending to ease the transition from the previous version and to help with usage and configuration.

Usage

Install solidity-docgen from npm.

Hardhat

Include the plugin in your Hardhat configuration.

 // hardhat.config.ts
+import 'solidity-docgen';

 export default {
+  docgen: { ... }, // if necessary to customize config
 };

Then run with hardhat docgen.

As a library

import { docgen } from 'solidity-docgen';

await docgen([{ output: solcOutput }], config);

solcOutput must be the standard JSON output of the compiler, with at least the ast output. There can be more than one.

config is an optional object with the values as specified below.

Config

See config.ts for the list of options and their documentation.