/blink-mind

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

Primary LanguageTypeScriptMIT LicenseMIT

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.

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/

Release packages

git checkout release
git reset --hard master
yarn release-pack
git add .
git commit -m "Release"
git push -f

Use packages

Update package.json in your project

(xxxxxxxxxx is the release commit hash)

"@blink-mind/core": "https://cdn.jsdelivr.net/gh/ruilisi/blink-mind@xxxxxxxxxx/packages/core.tgz",
"@blink-mind/renderer-react": "https://cdn.jsdelivr.net/gh/ruilisi/blink-mind@xxxxxxxxxx/packages/renderer-react.tgz",