A GPU-accelerated native desktop dashboard for the Dora dataflow framework
100% Rust implementation | AI-powered | No C/C++ dependencies
Dora Studio provides a unified visual interface for managing, monitoring, and debugging Dora dataflows. Built with Makepad for GPU-accelerated rendering and following the architectural patterns established by MoFA Studio.
Replace command-line workflows with an intuitive dashboard that supports the full dataflow lifecycle:
| Capability | CLI Equivalent | Dora Studio |
|---|---|---|
| Dataflow management | dora list/start/stop |
Visual status, one-click actions |
| Graph visualization | dora graph |
Live editing, interactive inspection |
| Log analysis | dora logs -f |
Filtering, search, aggregation |
| Performance monitoring | dora top |
Time-series charts, historical trends |
| Trace analysis | External Jaeger | Built-in, correlated with metrics |
| AI assistance | Manual commands | Natural language: "Start the camera pipeline" |
Dora Studio is composed of four mini-apps, each focusing on a specific workflow:
Lifecycle management for dataflows - start, stop, monitor status, view node metrics.
Edit dataflow YAML with live graph preview, validation feedback, and node inspection.
Real-time log streaming with filtering by dataflow, node, level, and text search.
Full observability with metrics charts, distributed traces, and topic statistics.
Each mini-app includes a bottom chat bar for natural language interaction:
┌─────────────────────────────────────────────────────────────┐
│ Dataflow Manager [Start] [Refresh] │
├─────────────────────────────────────────────────────────────┤
│ (main app content) │
├─────────────────────────────────────────────────────────────┤
│ 💬 Ask AI: [What's causing the high CPU usage?______] [↵] │
│ │
│ AI: The YOLO node is CPU-bound at 98%. Recommendations: │
│ 1. Enable GPU inference 2. Use lighter model │
└─────────────────────────────────────────────────────────────┘
Example interactions:
- "Start the camera pipeline" → Starts dataflow, reports status
- "Show me errors from the last hour" → Filters and displays logs
- "What's the bottleneck?" → Analyzes metrics, identifies slow nodes
- "Create a dataflow for pose detection" → Generates YAML
20+ AI tools across all mini-apps for dataflow management, YAML editing, log analysis, and performance debugging. See PRD.md for full details.
┌─────────────────────────────────────────────────────────────────┐
│ DORA STUDIO │
├─────────────────────────────────────────────────────────────────┤
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────────────┐ │
│ │ Dataflow │ │ YAML │ │ Log │ │ Telemetry │ │
│ │ Manager │ │ Editor │ │ Viewer │ │ Dashboard │ │
│ │ [💬 AI] │ │ [💬 AI] │ │ [💬 AI] │ │ [💬 AI] │ │
│ └──────────┘ └──────────┘ └──────────┘ └──────────────────┘ │
├─────────────────────────────────────────────────────────────────┤
│ SHELL + SHARED WIDGETS + AI AGENT │
├─────────────────────────────────────────────────────────────────┤
│ DORA CLIENT │ EMBEDDED DB │ LLM CLIENT (Claude) │
└───────────────────┴─────────────────┴───────────────────────────┘
│
▼
Dora Coordinator + Daemon
Key design decisions:
- 100% Rust: Pure Rust implementation with no C/C++ dependencies
- AI-powered: Natural language interaction via bottom chat bar (Claude Code style)
- Self-contained: Embedded DataFusion + Parquet storage, built-in OTLP receiver
- Plugin system: Apps implement
DoraApptrait (following mofa-studio patterns) - Dark mode first: GPU-accelerated theme with smooth transitions
Planning - See PRD.md for detailed requirements.
- PRD.md - Product Requirements Document (comprehensive)
- ../dora/CLAUDE.md - Dora framework architecture
- ../mofa-studio/ARCHITECTURE.md - UI patterns reference
All dependencies are pure Rust with no C/C++ components:
UI & Runtime:
Storage & Query:
- Apache Arrow DataFusion - SQL query engine
- Apache Arrow - Columnar memory format
- Parquet - Columnar file storage
AI Agent:
- Claude API - Primary LLM provider (tool use)
- OpenAI API - Fallback provider
- Ollama - Local LLM option (privacy mode)
Telemetry:
- Tonic - gRPC for OTLP receiver
Note: We deliberately avoid DuckDB (which has a C++ core) to maintain a 100% Rust codebase.
- makepad-skills for App UI
- Dora - The dataflow framework this dashboard manages
- MoFA Studio - Reference implementation for Makepad app architecture
- SigNoz - Inspiration for observability features
This project is licensed under the Apache License 2.0 - see the LICENSE file for details.