F∆I Studio — desktop GUI for the F∆I hub
Find a file
flemming-it c389876a2f feat(studio): clickable install pills + open-in-editor on flow cards (v0.43.0)
When a saved flow is missing modules, each capability pill in the
"Needs:" row is now clickable: tap one and a per-item progress
dialog walks the bare capability name through installModule, then
the flows page refreshes. When more than one capability is missing,
an extra "Install all (N)" button runs the same dialog over the
whole list sequentially so a fresh operator can take an unrunnable
flow and one click later have its dependencies resolved.

Also adds a pencil icon next to Run that hands the YAML path to
the OS via SystemActions.openInOs — the operator's default editor
for .yaml decides what opens. Makes the path next to the flow name
actionable instead of decorative.

The install dialog renders one row per spec with a status icon
(pending circle / spinner / check / error), shows the installed
version on success, and surfaces the full error in a copyable
FaiErrorBox on failure so the operator can paste it back.

Signed-off-by: flemming-it <stefan.a.flemming@googlemail.com>
2026-05-09 11:58:24 +02:00
assets/docs feat(studio): Welcome page Phase B — embedded doc reader (v0.38.0) 2026-05-09 00:24:31 +02:00
docs feat(studio): carousel size lock, store-actionable today stories, HTTPS MCP suggestions in settings (v0.36.0) 2026-05-08 23:53:05 +02:00
lib feat(studio): clickable install pills + open-in-editor on flow cards (v0.43.0) 2026-05-09 11:58:24 +02:00
linux feat(studio): de-jargonize, reveal-in-OS, copyable errors, today carousel, AppBar alignment, F∆I window title (v0.34.0) 2026-05-08 14:48:33 +02:00
macos feat(studio): clickable install pills + open-in-editor on flow cards (v0.43.0) 2026-05-09 11:58:24 +02:00
test feat(studio): Welcome page — Phase A scaffolding (v0.37.0) 2026-05-09 00:17:54 +02:00
tools/today feat(studio): daily Today-Hero proposal pipeline (v0.31.0) 2026-05-08 12:59:33 +02:00
windows feat(studio): de-jargonize, reveal-in-OS, copyable errors, today carousel, AppBar alignment, F∆I window title (v0.34.0) 2026-05-08 14:48:33 +02:00
.gitignore feat: F∆I Studio MVP scaffold (Tier-2 desktop GUI) 2026-05-05 14:19:39 +02:00
.metadata feat: F∆I Studio MVP scaffold (Tier-2 desktop GUI) 2026-05-05 14:19:39 +02:00
analysis_options.yaml feat: F∆I Studio MVP scaffold (Tier-2 desktop GUI) 2026-05-05 14:19:39 +02:00
l10n.yaml feat(studio): app-wide i18n via flutter_localizations (v0.24.0) 2026-05-08 01:19:32 +02:00
pubspec.lock feat(studio): operator QoL — flow runnability, audit grouping, batch approvals, welcome celebration (v0.42.0) 2026-05-09 11:24:57 +02:00
pubspec.yaml feat(studio): clickable install pills + open-in-editor on flow cards (v0.43.0) 2026-05-09 11:58:24 +02:00
README.md feat: F∆I Studio MVP scaffold (Tier-2 desktop GUI) 2026-05-05 14:19:39 +02:00

F∆I Studio

Desktop GUI client for the F∆I Platform hub. Tier-2 generic platform client per docs/architecture/client.md. Connects to a local or remote fai serve over gRPC.

Status (2026-05-05): MVP scaffold. Three pages with mock data, no live gRPC connection yet. Validates the visual direction before the Dart SDK is wired in.

Pages (MVP scope)

  1. Modules — installed modules, capabilities, declared permissions. Click → manifest detail.
  2. Audit — live stream of hub events (when wired). Filter by event type and flow.
  3. Approvals — pending system.approval@^0 reviews with approve / reject buttons.

These three cover the platform's central properties: composition (modules), audit (events), human-in-the-loop (approvals).

Stack

  • Flutter 3.40+ (Desktop: macOS, Linux, Windows)
  • gRPC client via fai_dart_sdk (sibling repo; pinned by relative path during development)
  • No external runtime dependencies; bundles its own Dart VM

Run locally

flutter run -d macos

Repo placement

Will be published as fai/studio on Forgejo (git.flemming.ws). The local directory fai_studio/ follows the established fai_platform/ layout convention.

Why "Studio" and not "Stage"

"Stage" collided too easily with "staging environment" in developer English. "Studio" is the established industry pattern for creator-tools (Visual Studio, Android Studio, RStudio) and matches the GUI's audience of module developers, operators, and power users. The rename was applied across all docs/ in the platform repo on 2026-05-05.