Skip to main content

Architecture & Data Flows

Overall Application Architecture


Data Flow Pattern

Every user interaction follows this pipeline:


Flow 1: User Login

State touched: Auth Context only (no Zustand)


Flow 2: Create a Synthetic Data Generator

API calls: GET /api/v1/schema-registry/schemas, POST /api/v1/generators State: React Hook Form (local), React Query cache invalidation


Flow 3: Design a Data Pipeline

API calls: GET /operator-templates, GET /schemas, PUT /pipelines/{id}, POST /compile, POST /deploy State: Zustand (nodes, edges, configs) + IndexedDB (persistence) + React Query (catalog, schemas)


Service Communication Map


State Persistence Strategy

StoreBackendKeyScope
Pipeline DesignerIndexedDBdtx-pipeline-autosaveSurvives refresh + crashes
Workflow DesignerlocalStorageworkflow-designer-storageSurvives refresh
Access ManagementsessionStoragedtx-access-managementCurrent tab only
React QueryIn-memoryLost on refresh
Auth tokensKeycloak instanceManaged by Keycloak JS