MCPcopy
hub / github.com/plait-board/drawnix

github.com/plait-board/drawnix @v0.4.1 sqlite

repository ↗ · DeepWiki ↗ · release v0.4.1 ↗
342 symbols 946 edges 139 files 0 documented · 0%
README
<img src="https://github.com/plait-board/drawnix/blob/develop/apps/web/public/logo/logo_drawnix_h.svg?raw=true" width="360" alt="Drawnix logo and name" />

Open-source whiteboard tool (SaaS), an all-in-one collaborative canvas that includes mind mapping, flowcharts, freehand and more.

Product showcase
Whiteboard with mind mapping, flowcharts, freehand drawing and more

  <img src="https://abroad.hellogithub.com/v1/widgets/recommend.svg?rid=4dcea807fab7468a962c153b07ae4e4e&claim_uid=zmFSY5k8EuZri43&theme=neutral" alt="Featured|HelloGitHub" style="width: 250px; height: 54px;" width="250" height="54"/>

plait-board%2Fdrawnix | Trendshift

中文

Features

  • 💯 Free and Open Source
  • ⚒️ Mind Maps and Flowcharts
  • 🖌 Freehand
  • 😀 Image Support
  • 🚀 Plugin-based Architecture - Extensible
  • 🖼️ 📃 Export to PNG, JPG, JSON(.drawnix)
  • 💾 Auto-save (Browser Storage)
  • ⚡ Edit Features: Undo, Redo, Copy, Paste, etc.
  • 🌌 Infinite Canvas: Zoom, Pan
  • 🎨 Theme Support
  • 📱 Mobile-friendly
  • 📈 Support mermaid syntax conversion to flowchart
  • ✨ Support markdown text conversion to mind map(New 🔥🔥🔥)

About the Name

Drawnix is born from the interweaving of Draw and Phoenix, a fusion of artistic inspiration.

The Phoenix symbolizes endless creativity, while Draw represents humanity's most fundamental form of expression. Here, each creation is an artistic rebirth, every stroke a renaissance of inspiration.

Like a Phoenix, creativity must rise from the flames to be reborn, and Drawnix stands as the guardian of both technical and creative fire.

Draw Beyond, Rise Above.

About Plait Drawing Framework

Drawnix is positioned as an out-of-the-box, open-source, and free tool product. It is built on top of the Plait framework, which is our company's open-source drawing framework representing significant technical accumulation in knowledge base products(PingCode Wiki).

Drawnix uses a plugin architecture, which is technically more complex than the previously mentioned open-source tools. However, this plugin architecture has its advantages: it supports multiple UI frameworks (Angular, React), integrates with different rich text frameworks (currently only supporting Slate framework), enables better business layer separation in development, allows development of various fine-grained reusable plugins, and can expand to more whiteboard application scenarios.

Repository Structure

drawnix/
├── apps/
│   ├── web                   # drawnix.com
│   │    └── index.html       # HTML
├── dist/                     # Build artifacts
├── packages/
│   └── drawnix/              # Whiteboard application core
│   └── react-board/          # Whiteboard react view layer
│   └── react-text/           # Text rendering module
├── package.json
├── ...
└── README.md
└── README_en.md

Try It Out

https://drawnix.com is the minimal application of drawnix.

I will be iterating frequently on drawnix.com until the release of the Dawn version.

Development

npm install

npm run start

Docker

docker pull pubuzhixing/drawnix:latest

Dependencies

  • plait - Open source drawing framework
  • slate - Rich text editor framework
  • floating-ui - An awesome library for creating floating UI elements

Contributing

Any form of contribution is welcome:

  • Report bugs

  • Contribute code

Thank you for supporting

Special thanks to the company for its strong support for open source projects, and also to the friends who contributed code and provided suggestions to this project.

PingCode

License

MIT License

Extension points exported contracts — how you extend this code

Properties (Interface)
(no doc)
packages/drawnix/src/css.d.ts
CustomTypes (Interface)
(no doc)
packages/react-text/src/custom-types.ts
PointerRecord (Interface)
(no doc)
packages/react-board/src/plugins/with-pinch-zoom-plugin.ts
SliderProps (Interface)
(no doc)
packages/drawnix/src/components/size-slider.tsx
ReactBoard (Interface)
(no doc)
packages/react-board/src/plugins/board.ts
ArrowProps (Interface)
(no doc)
packages/drawnix/src/components/arrow-picker.tsx
BoardChangeData (Interface)
(no doc)
packages/react-board/src/plugins/board.ts
ShapeProps (Interface)
(no doc)
packages/drawnix/src/components/shape-picker.tsx

Core symbols most depended-on inside this repo

t
called by 149
packages/drawnix/src/i18n/index.tsx
createIcon
called by 50
packages/drawnix/src/components/icons.tsx
useI18n
called by 28
packages/drawnix/src/i18n/index.tsx
useBoard
called by 21
packages/react-board/src/hooks/use-board.tsx
useDrawnix
called by 12
packages/drawnix/src/hooks/use-drawnix.tsx
updateAppState
called by 11
packages/drawnix/src/drawnix.tsx
getShortcutKey
called by 7
packages/drawnix/src/utils/common.ts
removeHexAlpha
called by 7
packages/drawnix/src/utils/color.ts

Shape

Function 247
Method 44
Interface 34
Class 12
Enum 5

Languages

TypeScript100%

Modules by API surface

packages/drawnix/src/libs/image-viewer.ts21 symbols
packages/drawnix/src/plugins/freehand/smoother.ts18 symbols
packages/drawnix/src/plugins/freehand/utils.ts14 symbols
packages/drawnix/src/utils/color.ts13 symbols
packages/drawnix/src/utils/image.ts11 symbols
packages/drawnix/src/components/toolbar/popup-toolbar/popup-toolbar.tsx11 symbols
packages/drawnix/src/components/toolbar/creation-toolbar.tsx10 symbols
packages/drawnix/src/utils/laser-pointer.ts8 symbols
packages/drawnix/src/data/blob.ts8 symbols
packages/drawnix/src/components/select/select.tsx8 symbols
packages/drawnix/src/utils/common.ts7 symbols
packages/drawnix/src/transforms/property.ts7 symbols

Dependencies from manifests, versioned

@babel/core7.14.5 · 1×
@babel/preset-react7.14.5 · 1×
@floating-ui/react0.26.24 · 1×
@nx/cypress19.3.0 · 1×
@nx/devkit19.3.0 · 1×
@nx/eslint19.3.0 · 1×
@nx/eslint-plugin19.3.0 · 1×
@nx/jest19.3.0 · 1×
@nx/js19.3.0 · 1×
@nx/playwright19.3.0 · 1×
@nx/react19.3.0 · 1×
@nx/vite20.6.0 · 1×

For agents

$ claude mcp add drawnix \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact