Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/optimics/monorepodoc

JSDoc wrapper that generates documentation for each Lerna package
https://github.com/optimics/monorepodoc

documentation javascript jsdoc monorepository npm openapi

Last synced: about 2 months ago
JSON representation

JSDoc wrapper that generates documentation for each Lerna package

Awesome Lists containing this project

README

        

# monorepodoc

[![](https://badgen.net/github/checks/optimics/monorepodoc)](https://github.com/optimics/monorepodoc/actions)
[![](https://badgen.net/github/tag/optimics/monorepodoc)](https://github.com/optimics/monorepodoc/tags)
[![](https://badgen.net/npm/v/@optimics/monorepodoc)](https://www.npmjs.com/package/@optimics/monorepodoc)
[![](https://badgen.net/npm/dm/@optimics/monorepodoc)](https://www.npmjs.com/package/@optimics/monorepodoc)

Zeroconf [JSDoc](https://jsdoc.app/) wrapper with support for [redoc](https://github.com/Redocly/redoc) and mermaid that generates documentation for each of your monorepo projects and includes READMEs.

## Directories

```
monorepo/
├─ node_modules/ // Always ignored by default
├─ packages/ // Subpackages are expected here
│ ├─ docs/ // Markdown files from here are bundled into the docs package
│ ├─ ├─ anything.md
│ ├─ specs/
│ ├─ ├─ index.yaml // Compiled with redoc and bundled in
│ ├─ package.json // Meta information extracted, dependencies linked
│ ├─ README.md // Bundled in
├─ package.json // Meta information extracted
├─ README.md // Bundled in
```

## Installation

```shell
npm install --save-dev @optimics/monorepodoc
```

Supports only Node.js >= 16

## Running

Monorepodoc will automatically resolve all of your monorepo packages and put build outputs into `dist/docs`.

```shell
monorepodoc
```

## Redoc support

Simply installing [redoc-cli](https://www.npmjs.com/package/redoc-cli) should get your specs automagically bundled.

```
npm install --save-dev redoc-cli
```

## Mermaid support

Simply installing [@mermaid-js/mermaid-cli](https://www.npmjs.com/package/@mermaid-js/mermaid-cli) should get your mermaid charts automagically rendered into PNGs.

```
npm install --asve-dev @mermaid-js/mermaid-cli
```