Open-source whiteboard tool (SaaS), an all-in-one collaborative canvas that includes mind mapping, flowcharts, freehand and more.
Whiteboard with mind mapping, flowcharts, freehand drawing and more
[*δΈζ*](https://github.com/plait-board/drawnix/blob/develop/README.md)
## 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](https://pingcode.com/product/wiki?utm_source=drawnix)).
*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](https://github.com/worktile/plait) - Open source drawing framework
- [slate](https://github.com/ianstormtaylor/slate) - Rich text editor framework
- [floating-ui](https://github.com/floating-ui/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.