Welcome to EdgeWeave
EdgeWeave is a desktop app for building data-science and AI workflows as graphs. You drag nodes onto a canvas, wire them together and press Run. Each node shows its result as it finishes, and the whole graph exports to a plain Python script or a web dashboard when you're done.
It ships with nodes for data loading and cleaning, Plotly charts and maps, scikit-learn, PyTorch, NetworkX graphs, SQLite, 3D viewers, simulation (SimWeave), language models and retrieval (RAG), and more. PostgreSQL and a statistics toolkit (tests, copulas) are free modules in the Marketplace. You can write your own nodes in a few lines of Python.
Start here
- Getting Started: install, run a demo, build and export your first workflow.
- Features overview: a map of everything the app does and where to find it.
- Projects and workflow files and Python packages and environments: where your work lives and how to add libraries.
Tutorials
- Build a graph with the Ctrl+K palette
- Version workflows with Git and see visual graph diffs
- Export a dashboard
- Chat with the assistant and run the RAG demo
- Export a workflow to Python
- Run workflows on a schedule
- Install modules from the Marketplace
- Write your own node with
@node
Reference
- Subsystems: call one
.weavefile from another. - Control flow: for-loops on the canvas.
- Troubleshooting: fixes for the most common problems.
- Node reference (online): every shipped node, with its ports, fields and Python-export status.
- Node families: AI / LLM and RAG, SimWeave continuous, SimWeave discrete.
Inside the app, right-click any node for its own documentation, including its ports and whether it supports Python export.
For contributors
| Layer | Tech | Role |
|---|---|---|
| Shell | Electron | Desktop window, file dialogs, installer |
| Frontend | Drawflow + CodeMirror + Vite | Graph canvas, code editor, sidebar, settings |
| Backend | FastAPI (Python 3.11) | Node registry, graph parsing, REST + WebSocket |
| Execution | Worker subprocess | Runs the parsed DAG, streams progress |
| SDK | sdk/node.py, sdk/decorators.py | How nodes are authored and registered |
The on-disk graph format is .weave: JSON produced by Drawflow's
export() plus a small EdgeWeave wrapper.
- Shipped nodes live in
backend/core/nodes/(@register_block) and must pass the metadata audit (backend/tests/test_codegen_audit.py); user and marketplace nodes use@node(sdk/node.py). - Path constants live in
backend/core/config.py; never hard-code paths elsewhere. - Workflow-state mutations must take
_workflow_lock(backend/utils/state.py). - Don't add node-type dispatch to
backend/utils/parse_drawflow.py; that parser is intentionally generic. - Design notes and investigation logs are under Contributor notes in the sidebar.