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

https://github.com/defensestation/blocknote-mermaid

Blocknote plugin for mermaid
https://github.com/defensestation/blocknote-mermaid

blocknote mermaid mermaid-diagrams mermaidjs

Last synced: about 1 month ago
JSON representation

Blocknote plugin for mermaid

Awesome Lists containing this project

README

          

# Mermaid for Blocknote

![Stability Badge](https://img.shields.io/badge/stability-stable-green.svg)
![](https://badgen.net/badge/Version/v1.0.0/blue)

Mermaid feature for [Blocknote](https://www.blocknotejs.org/).

![](assets/demo.gif)

## Demo

[A demo is worth a thousand words](https://codesandbox.io/p/devbox/blocknote-mermaid-rvvddc?layout=%257B%2522sidebarPanel%2522%253A%2522EXPLORER%2522%252C%2522rootPanelGroup%2522%253A%257B%2522direction%2522%253A%2522horizontal%2522%252C%2522contentType%2522%253A%2522UNKNOWN%2522%252C%2522type%2522%253A%2522PANEL_GROUP%2522%252C%2522id%2522%253A%2522ROOT_LAYOUT%2522%252C%2522panels%2522%253A%255B%257B%2522type%2522%253A%2522PANEL_GROUP%2522%252C%2522contentType%2522%253A%2522UNKNOWN%2522%252C%2522direction%2522%253A%2522vertical%2522%252C%2522id%2522%253A%2522clv4g4hsv00062v6dygfbdqi6%2522%252C%2522sizes%2522%253A%255B70%252C30%255D%252C%2522panels%2522%253A%255B%257B%2522type%2522%253A%2522PANEL_GROUP%2522%252C%2522contentType%2522%253A%2522EDITOR%2522%252C%2522direction%2522%253A%2522horizontal%2522%252C%2522id%2522%253A%2522EDITOR%2522%252C%2522panels%2522%253A%255B%257B%2522type%2522%253A%2522PANEL%2522%252C%2522contentType%2522%253A%2522EDITOR%2522%252C%2522id%2522%253A%2522clv4g4hsu00022v6d19eg61e6%2522%257D%255D%257D%252C%257B%2522type%2522%253A%2522PANEL_GROUP%2522%252C%2522contentType%2522%253A%2522SHELLS%2522%252C%2522direction%2522%253A%2522horizontal%2522%252C%2522id%2522%253A%2522SHELLS%2522%252C%2522panels%2522%253A%255B%257B%2522type%2522%253A%2522PANEL%2522%252C%2522contentType%2522%253A%2522SHELLS%2522%252C%2522id%2522%253A%2522clv4g4hsu00042v6dx5wpc3dh%2522%257D%255D%252C%2522sizes%2522%253A%255B100%255D%257D%255D%257D%252C%257B%2522type%2522%253A%2522PANEL_GROUP%2522%252C%2522contentType%2522%253A%2522DEVTOOLS%2522%252C%2522direction%2522%253A%2522vertical%2522%252C%2522id%2522%253A%2522DEVTOOLS%2522%252C%2522panels%2522%253A%255B%257B%2522type%2522%253A%2522PANEL%2522%252C%2522contentType%2522%253A%2522DEVTOOLS%2522%252C%2522id%2522%253A%2522clv4g4hsu00052v6ddeo7l7gv%2522%257D%255D%252C%2522sizes%2522%253A%255B100%255D%257D%255D%252C%2522sizes%2522%253A%255B50%252C50%255D%257D%252C%2522tabbedPanels%2522%253A%257B%2522clv4g4hsu00022v6d19eg61e6%2522%253A%257B%2522tabs%2522%253A%255B%257B%2522id%2522%253A%2522clv4g4hsu00012v6dxpe35813%2522%252C%2522mode%2522%253A%2522permanent%2522%252C%2522type%2522%253A%2522FILE%2522%252C%2522filepath%2522%253A%2522%252Fpackage.json%2522%252C%2522state%2522%253A%2522IDLE%2522%257D%255D%252C%2522id%2522%253A%2522clv4g4hsu00022v6d19eg61e6%2522%252C%2522activeTabId%2522%253A%2522clv4g4hsu00012v6dxpe35813%2522%257D%252C%2522clv4g4hsu00052v6ddeo7l7gv%2522%253A%257B%2522id%2522%253A%2522clv4g4hsu00052v6ddeo7l7gv%2522%252C%2522activeTabId%2522%253A%2522clv4g4yfx006m2v6dys4liyhz%2522%252C%2522tabs%2522%253A%255B%257B%2522type%2522%253A%2522TASK_PORT%2522%252C%2522taskId%2522%253A%2522Development%2522%252C%2522port%2522%253A5173%252C%2522id%2522%253A%2522clv4g4yfx006m2v6dys4liyhz%2522%252C%2522mode%2522%253A%2522permanent%2522%252C%2522path%2522%253A%2522%252F%2522%257D%255D%257D%252C%2522clv4g4hsu00042v6dx5wpc3dh%2522%253A%257B%2522id%2522%253A%2522clv4g4hsu00042v6dx5wpc3dh%2522%252C%2522activeTabId%2522%253A%2522clv4g4vis005i2v6dlh9dpd8e%2522%252C%2522tabs%2522%253A%255B%257B%2522id%2522%253A%2522clv4g4hsu00032v6d8a3t4hne%2522%252C%2522mode%2522%253A%2522permanent%2522%252C%2522type%2522%253A%2522TERMINAL%2522%252C%2522shellId%2522%253A%2522clv4g4jeq000idaf86r024r97%2522%257D%252C%257B%2522type%2522%253A%2522TASK_LOG%2522%252C%2522taskId%2522%253A%2522Development%2522%252C%2522id%2522%253A%2522clv4g4vis005i2v6dlh9dpd8e%2522%252C%2522mode%2522%253A%2522permanent%2522%257D%255D%257D%257D%252C%2522showDevtools%2522%253Atrue%252C%2522showShells%2522%253Atrue%252C%2522showSidebar%2522%253Atrue%252C%2522sidebarPanelSize%2522%253A15%257D)

## Installation

### Install via YARN

Get the package

```shell
$ yarn add @defensestation/blocknote-mermaid
```

## Usage

Include module at your application

```javascript
import { MermaidBlock, insertMermaid } from "@defensestation/blocknote-mermaid";
```

Create schema with mermaid block.
```javascript
const schema = BlockNoteSchema.create({
blockSpecs: {
...defaultBlockSpecs,
mermaid: MermaidBlock,
},
});
```

Add slash menu item.
```javascript


filterSuggestionItems(
[...getDefaultReactSlashMenuItems(editor), insertMermaid()],
query
)
}
/>

```

## Roadmap

- [ ] Custom styles
- [ ] Chart viewer in read only mode.