https://github.com/jellyvision/jsdoc-mermaid
A tool to automagically create flowcharts and diagrams in your jsdocs.
https://github.com/jellyvision/jsdoc-mermaid
apis diagram docs documentation flowchart javascript jsdoc jsdoc-mermaid mermaid
Last synced: about 1 month ago
JSON representation
A tool to automagically create flowcharts and diagrams in your jsdocs.
- Host: GitHub
- URL: https://github.com/jellyvision/jsdoc-mermaid
- Owner: Jellyvision
- License: mit
- Created: 2017-09-29T15:48:45.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2020-04-23T13:31:39.000Z (about 5 years ago)
- Last Synced: 2025-03-26T19:40:12.514Z (3 months ago)
- Topics: apis, diagram, docs, documentation, flowchart, javascript, jsdoc, jsdoc-mermaid, mermaid
- Language: JavaScript
- Size: 7.81 KB
- Stars: 59
- Watchers: 17
- Forks: 12
- Open Issues: 4
-
Metadata Files:
- Readme: readme.md
- License: LICENSE-MIT
Awesome Lists containing this project
README
# jsdoc-mermaid
A plugin that parses your JSDocs for [Mermaid](https://mermaidjs.github.io/) syntax and renders the diagrams and flowcharts described.
## Getting Started
```bash
# install as a local dependency
yarn add -D jsdoc-mermaid # OR npm install -D jsdoc-mermaid
```And then add `jsdoc-mermaid` to your jsdoc configuration file. That's it!
```javascript
{
"plugins": ["jsdoc-mermaid"]
}
```## Usage
Document a method with an `@mermaid` tag using JSDoc Syntax, like so:
```javascript
/**
* Represents a book.
* @constructor
* @param {string} title - The title of the book.
* @param {string} author - The author of the book.
*
* @mermaid
* graph TD;
* A-->B;
* A-->C;
* B-->D;
* C-->D;
*/
function Book(title, author) {
/* ... */
}
```Generate your JSDocs using the [configuration](http://usejsdoc.org/about-configuring-jsdoc.html) you've specified - for instance:
```bash
jsdoc book.js -c conf.json
```When you open that page in JSDoc, you should have a shiny new graph!

## Built With
* [Mermaid](https://github.com/knsv/mermaid) - Generation of diagram and flowchart from text in a similar manner as markdown
* [Doctrine](https://github.com/eslint/doctrine) - JSDoc parser## Versioning
We use [SemVer](http://semver.org/) for versioning.