Skip to content

Latest commit

 

History

History
54 lines (45 loc) · 2.37 KB

File metadata and controls

54 lines (45 loc) · 2.37 KB

Release Plan: MainFrameWork

Release 1: The Rust Foundation (MVP)

Goal: A "Hello World" Tauri app that can detect the Matrix and draw on it. Delivery: Single Executable (MainFrameWork.exe, ~8MB).

  • [Setup] Scaffold Tauri Project
    • Initialize Tauri v2 (Rust) + React (TypeScript) + Vite.
    • Configure tauri.conf.json for "Single Instance" and "Hardware Permissions".
  • [Core] Rust Persistence
    • Implemented as AppState + save_settings()/load_settings() in persistence.rs (named differently than originally planned, same result).
    • Add aes-gcm crate. Implement save_encrypted() and load_encrypted() functions.
  • [Feature] Matrix Canvas
    • Rust: Implement serialport communication with RP2040.
    • React: Build 34x9 Grid UI.
    • Bridge: Create Tauri Command draw_matrix(bytes) to flush buffer.

Release 2: System Intelligence & Hardware Scan

Goal: Dynamic "God Mode" Dashboard (Fans, Battery, Hot-swap).

  • [Core] Device Manager
    • Rust: Build DeviceScanner struct using rusb crate.
    • Poll Loop: Check for VID 0x32AC (Framework) every 2s or on USB Event.
    • React: Update Dashboard tabs based on Scanner state.
  • [Core] EC Access — via framework_lib::chromium_ec, not a custom ioctl/extern-C implementation as originally planned here.
    • Linux: Implemented in ec_control.rs (battery, charge limit, temps, fan RPM/duty/auto) — written and type-checked, but not yet run against real Linux hardware (this project's dev/test machine is Windows-only). Needs that verification pass before calling it done.
    • Windows: Deliberately not implemented — the only available EC driver requires disabling Secure Boot, which this app won't automate. See SECURITY.md.
  • [UI] Dashboard Widgets
    • Bind "Refresh" button to scanner.refresh().
    • Build Fan Curve Graph (SVG).

Release 3: Input Commander (VIA)

Goal: Full Keyboard/Macropad configuration via Raw HID.

  • [Core] VIA/HID Service
    • Rust: Implement hidapi to send/receive Raw HID packets.
    • Logic: Port QMK/VIA protocol definitions to Rust structs.
    • Status: RGB Lighting Control Implemented (MVP).
  • [UI] Keymap Editor
    • Build Layer visualizer.
    • Build Macro recorder.