# nightcode42/plux3 architecture

> Architecture diagram of the GitHub repository nightcode42/plux3, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-26). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/nightcode42/plux3
- Repository: https://github.com/nightcode42/plux3

## Overview

Plux is a server-driven Flutter UI and plugin platform. The documented workflow is: teams author screens in Studio (or use the CLI), the server validates and compiles them into signed FlatBuffers bundles and deltas, and the Flutter runtime syncs and renders updates as native widgets. The README describes additional security, governance, and function capabilities, but this tree is at Phase 0 and sampled source does not show those implementations. Those branches are therefore shown as documented capabilities, not verified internal call paths.

Main entry points: [`backend`](https://github.com/nightcode42/plux3/tree/main/backend) (Plux Server), [`packages/plux_flutter`](https://github.com/nightcode42/plux3/tree/main/packages/plux_flutter) (Flutter runtime), [`studio`](https://github.com/nightcode42/plux3/tree/main/studio) (Plux Studio), [`backend/cmd/plux`](https://github.com/nightcode42/plux3/tree/main/backend/cmd/plux) (Plux CLI)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_authoring["Authoring"]
  node_studio["Plux Studio"]
  node_cli["Plux CLI"]
end

subgraph group_delivery["Server delivery"]
  node_server["Plux Server"]
  node_validation["Validation"]
  node_compiler["Bundle compiler"]
  node_signing["Bundle signing"]
  node_deltas["Delta generation"]
  node_contracts["Shared contracts"]
  node_rpc["RPC contracts"]
  node_store[("Bundle storage")]
end

subgraph group_runtime["Flutter runtime"]
  node_runtime["Flutter runtime"]
end

subgraph group_capabilities["Platform capabilities"]
  node_device_security["Device security"]
  node_governance["Release governance"]
  node_functions["Plux Functions"]
end

node_team(("Product team"))
node_app["Host Flutter app"]
node_user(("App user"))
node_external_compute["WASM compute"]

node_team -->|"authors screens"| node_studio
node_studio -->|"sends documents"| node_server
node_cli -->|"submits changes"| node_server
node_server -->|"validates"| node_validation
node_server -->|"compiles bundles"| node_compiler
node_server -->|"signs bundles"| node_signing
node_server -->|"computes deltas"| node_deltas
node_server -->|"stores bundles"| node_store
node_server -->|"serves manifests and deltas"| node_runtime
node_runtime -->|"syncs with DPoP"| node_server
node_runtime -.->|"verifies updates"| node_device_security
node_runtime -->|"renders widgets"| node_app
node_app -->|"shows UI"| node_user
node_server -.->|"supports governed releases"| node_governance
node_server -.->|"runs functions"| node_functions
node_functions -.->|"executes as WASM"| node_external_compute

click node_studio "https://github.com/nightcode42/plux3/tree/main/studio"
click node_cli "https://github.com/nightcode42/plux3/tree/main/backend/cmd/plux"
click node_server "https://github.com/nightcode42/plux3/tree/main/backend"
click node_validation "https://github.com/nightcode42/plux3/tree/main/backend"
click node_compiler "https://github.com/nightcode42/plux3/tree/main/backend"
click node_signing "https://github.com/nightcode42/plux3/tree/main/backend"
click node_deltas "https://github.com/nightcode42/plux3/tree/main/backend"
click node_contracts "https://github.com/nightcode42/plux3/tree/main/schema"
click node_rpc "https://github.com/nightcode42/plux3/tree/main/proto"
click node_runtime "https://github.com/nightcode42/plux3/tree/main/packages/plux_flutter"
click node_device_security "https://github.com/nightcode42/plux3/tree/main/packages/plux_flutter"
click node_governance "https://github.com/nightcode42/plux3/tree/main/backend"
click node_functions "https://github.com/nightcode42/plux3/tree/main/backend"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_studio,node_cli,node_user toneBlue
class node_server,node_validation,node_compiler,node_signing,node_deltas,node_contracts,node_rpc,node_store toneAmber
class node_runtime toneMint
class node_device_security,node_governance,node_functions toneRose
class node_team,node_app,node_external_compute toneIndigo
```

## Components

### Authoring

- [Plux Studio](https://github.com/nightcode42/plux3/tree/main/studio): `studio`
- [Plux CLI](https://github.com/nightcode42/plux3/tree/main/backend/cmd/plux): `backend/cmd/plux`

### Server delivery

- [Plux Server](https://github.com/nightcode42/plux3/tree/main/backend): `backend`
- [Validation](https://github.com/nightcode42/plux3/tree/main/backend): `backend`
- [Bundle compiler](https://github.com/nightcode42/plux3/tree/main/backend): `backend`
- [Bundle signing](https://github.com/nightcode42/plux3/tree/main/backend): `backend`
- [Delta generation](https://github.com/nightcode42/plux3/tree/main/backend): `backend`
- [Shared contracts](https://github.com/nightcode42/plux3/tree/main/schema): `schema`
- [RPC contracts](https://github.com/nightcode42/plux3/tree/main/proto): `proto`
- **Bundle storage**

### Flutter runtime

- [Flutter runtime](https://github.com/nightcode42/plux3/tree/main/packages/plux_flutter): `packages/plux_flutter`

### Platform capabilities

- [Device security](https://github.com/nightcode42/plux3/tree/main/packages/plux_flutter): `packages/plux_flutter`
- [Release governance](https://github.com/nightcode42/plux3/tree/main/backend): `backend`
- [Plux Functions](https://github.com/nightcode42/plux3/tree/main/backend): `backend`

### Other components

- **Product team**
- **Host Flutter app**
- **App user**
- **WASM compute**

## Connections

- Product team → Plux Studio: authors screens
- Plux Studio → Plux Server: sends documents
- Plux CLI → Plux Server: submits changes
- Plux Server → Validation: validates
- Plux Server → Bundle compiler: compiles bundles
- Plux Server → Bundle signing: signs bundles
- Plux Server → Delta generation: computes deltas
- Plux Server → Bundle storage: stores bundles
- Plux Server → Flutter runtime: serves manifests and deltas
- Flutter runtime → Plux Server: syncs with DPoP
- Flutter runtime → Device security: verifies updates
- Flutter runtime → Host Flutter app: renders widgets
- Host Flutter app → App user: shows UI
- Plux Server → Release governance: supports governed releases
- Plux Server → Plux Functions: runs functions
- Plux Functions → WASM compute: executes as WASM
