Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
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: 3 months ago
JSON representation
Fully customizable mindmap framework for react.js. 支持插件的,可被完全定制的思维导图库,基于react.js和immutable.js。
- Host: GitHub
- URL: https://github.com/awehook/blink-mind
- Owner: awehook
- License: mit
- Created: 2019-10-18T07:45:16.000Z (about 5 years ago)
- Default Branch: master
- Last Pushed: 2022-02-10T21:55:35.000Z (over 2 years ago)
- Last Synced: 2024-06-07T00:33:23.198Z (5 months ago)
- Topics: framework, immutablejs, javascript, js, libray, mindmap, react, slatejs, typescript
- Language: TypeScript
- Homepage:
- Size: 3.49 MB
- Stars: 337
- Watchers: 12
- Forks: 78
- Open Issues: 8
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-hacking-lists - awehook/blink-mind - Fully customizable mindmap framework for react.js. 支持插件的,可被完全定制的思维导图库,基于react.js和immutable.js。 (TypeScript)
README
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/