Export Formats
Chinilla supports multiple export formats accessible from the header export button.
Backup JSON
Section titled “Backup JSON”Full canvas state saved as a .chinilla.json file. Includes:
- All components with positions, metrics, requirements, behaviors, and costs
- All connections with waypoints, directions, and labels
- All drawings, notes, tickets, and groups
- Validation scores (if available)
- Simulation results (if available)
Use this for backup and restore. Import via the header import button.
System Spec
Section titled “System Spec”A deterministic architecture document generated from your canvas (no AI required):
- Topology - Component count, connection count, density metrics
- Components by type - Grouped listing with descriptions, metrics, protocol, scaling details, and full behavior configuration (mode, expression, failure rate, drop rate, capacity, delay, etc.)
- Data flow - Entry points, exit points, critical paths
- Connections table - Source, target, label, direction, latency, and routing weight
- Quality scores - Six Instincts scores (if validated)
- Simulation results - Timeline and failure analysis (if simulated)
Copy to clipboard or download as markdown.
AI Spec (PRD)
Section titled “AI Spec (PRD)”A comprehensive Product Requirements Document generated by xAI:
- Overview and objectives
- Architecture summary
- Component specifications
- Data flow analysis
- Failure modes and mitigations
- Non-functional requirements
- Implementation notes
- Open questions
Requires a valid xAI API key. Copy to clipboard or download.
Image Export (PNG)
Section titled “Image Export (PNG)”Open the Export modal and select the Image tab (default). You get:
- Live preview of the canvas render
- Dark/Light toggle to switch the export theme
- Grid checkbox to include or hide the background grid
- Labels checkbox to show or hide connection labels
- Copy to clipboard using the browser ClipboardItem API
- Download PNG at high resolution (adaptive scaling, up to 8192px per side)
Icons, cubic Bezier connections, behavior colors, groups, notes, and tickets all render at full fidelity.
Animated GIF Export
Section titled “Animated GIF Export”The GIF tab in the Export modal generates an animated GIF of your simulation playback:
- Runs the full flow execution (topological steps with packet routing)
- Each frame shows active components (cyan highlight), active connections (dashed cyan), traversed connections (faded cyan), and queue depth dots
- HUD overlay renders on every frame: health % with color-coded indicator, cumulative In/Out/Lost/Queue stats, a delivery rate bar, formatted time, step counter, and bottleneck callout (if one exists)
- Status pills render in each frame: green “delivered” on exit nodes, blue “entered” on entry nodes, amber “processing” on soak/delay components with queued items, and accent “done”/“waiting”/“lost” on active components
- Speed selector: 1x, 2x (default), or 4x
- Dark/Light toggle for the GIF theme
- Loops infinitely by default
- Download the generated GIF for use in READMEs, docs, or presentations
The GIF encoder is built-in (no external dependencies). Frame delay is 2400ms / speed, so at 2x each step holds for 1.2 seconds.
Python Export
Section titled “Python Export”A deterministic Python scaffold generated from your canvas (no AI required). Produces a runnable .py file with:
- Protocol-aware imports - Appropriate client libraries based on each component’s protocol setting (httpx for HTTP/GraphQL, grpc for gRPC, websockets, pika for AMQP, kafka-python for Kafka, paho-mqtt for MQTT)
- Component classes - One class per component with behavior-accurate logic:
- Transform: Converts
transformExprto Python dict-access syntax (e.g.data['total'] = data['price'] * data['qty']) - Retry: Injects simulated failures using the configured
failureRatewith exponential backoff - Circuit Breaker: Simulates failures at the configured
failureRatewith threshold-based state transitions - Split: Supports both round-robin and weighted probabilistic routing based on connection weights
- Condition: Converts JavaScript expressions to Python-safe dict access
- Transform: Converts
- ThreadPoolExecutor - Components with
maxInstances > 1get a thread pool sized to their max instance count - Pipeline function - Wires components together following the canvas connection topology, including weighted targets for split nodes
The export reads directly from your canvas state. No API key required.
Mermaid Diagram
Section titled “Mermaid Diagram”A Mermaid flowchart generated from your canvas topology:
- Components mapped to Mermaid shapes by type (cylinder for storage, diamond for decision, etc.)
- Metrics included in node labels (throughput, capacity, processing time)
- Connection directions preserved (forward, backward, bidirectional, none)
- Connection labels and routing weights included on edges (e.g.
w:70) - Groups rendered as Mermaid subgraphs
- Line styles mapped (solid, dashed, dotted)
Copy to clipboard or download as .mmd for use in GitHub, Notion, or any Mermaid-compatible renderer.
Integrations
Section titled “Integrations”| Integration | Description |
|---|---|
| GitHub Gist | Publish your System Spec as a Gist |
| Slack | Send a design summary to a Slack channel via webhook |
| Notion | Export to a Notion page |
| Jira | Create a Jira issue from your design |