Some checks failed
Security / Security check (push) Failing after 1s
Signed-off-by: flemming-it <stefan.a.flemming@googlemail.com>
67 lines
2.4 KiB
Markdown
67 lines
2.4 KiB
Markdown
# Ch∆In Studio
|
|
|
|
Desktop GUI client for the Ch∆In Platform hub. Tier-2 generic
|
|
platform client per `docs/architecture/client.md` in the
|
|
platform repo. Connects to a local or remote `chain serve` over
|
|
gRPC / gRPC-Web.
|
|
|
|
> **Status:** live product (v0.70+). Every page talks to the hub
|
|
> through [`chain_client_sdk`](../fai_chain_client_sdk_dart);
|
|
> there is no mock data. End users launch Studio via
|
|
> `chain studio`, which downloads and verifies a prebuilt bundle
|
|
> from the release mirror (sha256 + signature) or rebuilds from
|
|
> source when a dev workspace is configured.
|
|
|
|
## Pages
|
|
|
|
1. **Welcome** — onboarding checklist, guided setup wizard,
|
|
bundled documentation reader.
|
|
2. **Store** — browse/search/install modules across multiple
|
|
stores (pinned publisher keys, private sources, AI AskBar);
|
|
installed modules live here as a filter.
|
|
3. **Flows** — graph + text flow editor with a live Run tab
|
|
(streamed step events, inline approvals). Editor ships as the
|
|
[`chain_studio_flow_editor`](../fai_chain_studio_flow_editor)
|
|
package.
|
|
4. **Audit** — live event stream (`StreamEvents`) with filters,
|
|
hash-chain verification, gated log reset.
|
|
5. **Approvals** — pending `system.approval@^0` reviews with
|
|
approve / reject and payload disclosure.
|
|
6. **Doctor** — diagnostics, daemon lifecycle, binary recovery.
|
|
7. **Föderation** — satellite list, bootstrap-token enrolment,
|
|
revocation.
|
|
|
|
Plus: settings dialog (System-AI, integrations/MCP/n8n,
|
|
security, maintenance), Cmd+K palette, release-channel switcher.
|
|
|
|
## Stack
|
|
|
|
- Flutter 3.40+ (Desktop: macOS, Linux, Windows)
|
|
- gRPC client via [`chain_client_sdk`](../fai_chain_client_sdk_dart)
|
|
(sibling repo; pinned by relative path during development)
|
|
- No external runtime dependencies; bundles its own Dart VM
|
|
|
|
## Run locally
|
|
|
|
```bash
|
|
flutter run -d macos # or -d linux / -d windows
|
|
flutter test
|
|
```
|
|
|
|
`chain studio` prefers a configured dev workspace and will
|
|
`flutter run` from source when one resolves — see
|
|
`crates/chain_runtime_mgmt` in the platform repo.
|
|
|
|
## Repo placement
|
|
|
|
Published as `fai/chain-studio` on Forgejo (`git.flemming.ai`).
|
|
The local directory follows the established `fai_chain_*` 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.
|