Type what you mean. Get an editable mind map or flowchart. No internet, no account, no data leaves your machine.
- Text in, diagram out. Describe a process ("how a support ticket gets resolved") or a topic ("things to consider when buying a laptop"). flowChart picks mind map or flowchart, or you force one with a toggle.
- Fully offline. A 1.7B-parameter open model (Qwen3, Apache-2.0) runs on your own CPU or GPU through llama.cpp. Works on a plane.
- Streams onto the canvas. Nodes appear and lay themselves out while the model is still thinking.
- Editable. Rename with a double-click, change a node's shape (start, step, decision, end), drag to connect, delete, add nodes.
- Export to PNG, PDF, PowerPoint, or Word.
- Optional cloud boost. Bring your own API key (Anthropic, OpenAI, Gemini, OpenRouter, or any OpenAI-compatible endpoint) for richer diagrams. The key is stored encrypted on your machine and only ever sent to the provider you chose.
Package managers (after the manifests land):
winget install saransh121.flowChart # Windows
brew install --cask saransh121/tap/flowchart # macOS
Grab the latest build for your OS from the Releases page:
| OS | File |
|---|---|
| Windows | flowChart-<version>-win-x64.exe (installer) or .zip (portable) |
| macOS | flowChart-<version>-mac-arm64.dmg (Apple Silicon) or -mac-x64.dmg (Intel) |
| Linux | flowChart-<version>-linux-x86_64.AppImage or -linux-amd64.deb |
On first launch the app downloads the model once (1.1 GB) into its data folder. After that it never needs the network again.
Windows SmartScreen / macOS Gatekeeper: builds are not code-signed yet. On Windows click More info → Run anyway. On macOS right-click the app → Open, or run
xattr -dr com.apple.quarantine /Applications/flowChart.app.
Drop any llama.cpp .gguf file into the models folder and restart. The largest file wins.
- Windows:
%APPDATA%\flowChart\models - macOS:
~/Library/Application Support/flowChart/models - Linux:
~/.config/flowChart/models
Qwen3 0.6B (400 MB) is 2.5x faster and fine for simple diagrams. Anything that chats works, but models under 1B tend to misclassify processes as mind maps.
| Machine | Speed |
|---|---|
| Laptop with integrated GPU (Vulkan), 8 GB RAM | ~15 tok/s, a 12-node flowchart in ~20 s |
| Same laptop, 0.6B model | ~35 tok/s |
| NVIDIA / AMD dedicated GPU | much faster, auto-detected |
CPU-only with 8 GB RAM and the 1.7B model is slow. Use the 0.6B model there.
See docs/LAUNCH.md for the winget / Homebrew / store submission steps and ready-to-paste launch posts.
npm install
npm run dev # Vite + Electron with hot reload
npm run pack # unpacked build in release/
npm run dist # installers for the current OS
npm run spike # the model benchmark used to pick the default model
Put a .gguf in ./models/ for development, or let the app download one.
- The model is prompted with a system prompt plus two examples and forced, via a GBNF grammar, to emit compact JSON:
{type, title, nodes, edges}. It never emits coordinates. - The renderer parses the JSON prefix as it streams, runs elkjs layout on every new node, and draws with React Flow.
- Cloud providers get the same prompt and are parsed the same way, so the UI does not care which engine produced the diagram.
- Undo / redo, autosave, reopen recent diagrams
- "Edit with AI": describe a change and have the model patch the existing diagram
- Mermaid / JSON export and import
- Auto-update via GitHub Releases
- Hosted web version
MIT. The default model is Qwen3-1.7B by Alibaba, Apache-2.0, downloaded from Hugging Face on first run.

