HalfSweet/HelixScope

★ 0Forks 0TypeScriptGitHub ↗Compare

README

HelixScope

HelixScope is a desktop data debugging workbench built with Tauri, React, and Rust. The UI is intentionally compact and tool-like: multiple workspaces, docked panels, transport status, protocol scripting, and fast raw-data inspection.

What It Is

The app is designed around three decoupled layers:

  • transport backends such as serial, SEGGER RTT, TCP, or USB bulk
  • normalized record processing and QuickJS scripting
  • presentation panels for text, hex, plots, and session metadata

Only serial transport is intended for the first milestone. The other adapters exist in the architecture so the frontend never has to care which backend is active.

Architecture Snapshot

  • Frontend: React, shadcn, Tailwind CSS, FlexLayout, Zustand
  • Backend: Tauri v2 + Rust
  • Workspace model: one independent data pipeline per top-level tab
  • Panel model: predefined views hosted inside FlexLayout
  • Script engine: QuickJS for filtering, decoding, and enrichment

The canonical data path is:

transport -> raw frame -> optional script transform -> normalized record -> panel view

Repository Notes

  • AGENTS.md is the authoritative architecture memory for the project.
  • docs/developer-workflow.md describes the intended worktree and linear-history flow.
  • Semantic commits are required.
  • Merge commits are not allowed.

Development

Install dependencies with pnpm install.

Bootstrap the frontend and backend shell from this repository root:

pnpm install

Run the desktop app during development with:

pnpm tauri dev

Use the Vite-only frontend server when you want the UI shell without the Rust side:

pnpm dev

For a production frontend build:

pnpm build

Rust checks live under src-tauri:

cd src-tauri
cargo check

Recommended Setup

  • VS Code
  • Tauri extension
  • rust-analyzer

Current Backend Contract

The current app shell expects these Tauri commands:

  • bootstrap_app_state
  • list_serial_ports
  • connect_workspace
  • disconnect_workspace
  • send_workspace_data
  • update_workspace_script

The current streaming event channel is:

  • helixscope://workspace-event

Contributors

HalfSweet

Issues