Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/awehook/blink-mind

Fully customizable mindmap framework for react.js. 支持插件的,可被完全定制的思维导图库,基于react.js和immutable.js。
https://github.com/awehook/blink-mind

framework immutablejs javascript js libray mindmap react slatejs typescript

Last synced: 21 days ago
JSON representation

Fully customizable mindmap framework for react.js. 支持插件的,可被完全定制的思维导图库,基于react.js和immutable.js。

Awesome Lists containing this project

README

        


MIT

Slack Widget



A fully customizable mind map framework based on plugin mechanism.
Customization of any desired effect can be achieved by writing a plugin based on this framework.

### [Full-featured electron app based on this library](https://github.com/awehook/blink-mind-desktop)

### [Full-featured web app based on this library](https://awehook.github.io/react-mindmap)

### [A mind map vscode extension based on this library](https://github.com/awehook/vscode-blink-mind)

### [Multiple online demo of specific features](https://awehook.github.io/blink-mind/)

### Design Ideas

1. Use plugin mechanism to minimize coupling between components

2. The framework pre-defines some plugins to provide default behavior. When you want to change the default behavior, you can write plugins that override the default behavior.

3. The plugin functions of the same name are combined by the compose mechanism. Each plugin function controls the order of calls through the next parameter, similar to Koa's middleware mechanism.

4. Runtime data is saved through the immutable.js data structure, optimizing performance based on immutable.js and component's shouldComponentUpdate.

### Run Demo Locally

```
yarn install
yarn storybook
```

then open http://localhost:6007/