Generates markdown reference documentation for jsii modules.
You can use this as a command line tool or as a library if you need more control.
$ jsii-docgenWill produce a file called API.md with the api reference for this module.
As a library:
import { Documentation, Language } from 'jsii-docgen';
const docs = await Documentation.forProject('.');
const markdown = await docs.toMarkdown({ language: Language.TYPESCRIPT }).render(); // returns a markdown string
const json = await docs.toJson({ language: Language.TYPESCRIPT }).render(); // returns a JSON objectCurreently jsii-docgen supports generating documentation in the following languages:
- TypeScript (
typescript) - Python (
python) - Java (
java) - C# (
csharp) - Go (
go) 
| Option | Required | Description | 
|---|---|---|
--output, -o | 
optional | Output filename (defaults to API.md if format is markdown, and API.json if format is JSON). jsii-docgen -o ./docs/API.md | 
--format, -f | 
optional | Output format. Can be markdown or json. jsii-docgen -f json | 
--language, -l | 
optional | Language to generate documentation for. Can be typescript, python, java, csharp or go. jsii-docgen -l typescript | 
--package, -p | 
optional | The name@version of an NPM package to document. jsii-docgen -p my-package | 
--readme, -r | 
optional | Generate docs for user specified README.md. jsii-docgen -r | 
--submodule, -s | 
optional | Generate docs for a specific submodule or "root". jsii-docgen -s my-submodule | 
--split-by-submodule | 
optional | Generate a separate file for each submodule. jsii-docgen --split-by-submodule | 
All contributions are welcome, just raise an issue or submit a PR. Add a test, update readme. Do the right thing.