Skip to content

dora-rs/dora-studio

Repository files navigation

Dora Studio

A GPU-accelerated native desktop dashboard for the Dora dataflow framework

100% Rust implementation | AI-powered | No C/C++ dependencies

License Rust

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.

Vision

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"

Mini-Apps

Dora Studio is composed of four mini-apps, each focusing on a specific workflow:

1. Dataflow Manager

Lifecycle management for dataflows - start, stop, monitor status, view node metrics.

2. YAML Editor + Graph Visualizer

Edit dataflow YAML with live graph preview, validation feedback, and node inspection.

3. Log Viewer

Real-time log streaming with filtering by dataflow, node, level, and text search.

4. Telemetry Dashboard

Full observability with metrics charts, distributed traces, and topic statistics.

AI Agent (Claude Code Style)

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.

Architecture

┌─────────────────────────────────────────────────────────────────┐
│                        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 DoraApp trait (following mofa-studio patterns)
  • Dark mode first: GPU-accelerated theme with smooth transitions

Status

Planning - See PRD.md for detailed requirements.

Documentation

Technology Stack (100% Rust)

All dependencies are pure Rust with no C/C++ components:

UI & Runtime:

  • Makepad - GPU-accelerated UI framework
  • Tokio - Async runtime

Storage & Query:

AI Agent:

Telemetry:

  • Tonic - gRPC for OTLP receiver

Note: We deliberately avoid DuckDB (which has a C++ core) to maintain a 100% Rust codebase.

AI Coding Stack (100% Rust)

Related Projects

  • Dora - The dataflow framework this dashboard manages
  • MoFA Studio - Reference implementation for Makepad app architecture
  • SigNoz - Inspiration for observability features

License

This project is licensed under the Apache License 2.0 - see the LICENSE file for details.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 6

Languages