# samolubukun/conduit-ai-workflow-orchestration-platform architecture

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

- Interactive diagram: https://gitdiagram.com/samolubukun/conduit-ai-workflow-orchestration-platform
- Repository: https://github.com/samolubukun/conduit-ai-workflow-orchestration-platform

## Overview

Conduit is a visual, event-driven AI workflow platform: users configure node-based workflows, trigger runs manually or from external events, and inspect execution results. The tree and README establish the editor, integrations, durable Inngest execution, workflow and execution APIs, persistence, authentication, and billing areas. Sampled webhook routes explicitly dispatch workflow data to Inngest; other internal wiring is inferred only at subsystem level because those implementations were not sampled.

Main entry points: [`src/features/editor/components/editor.tsx`](https://github.com/samolubukun/conduit-ai-workflow-orchestration-platform/blob/main/src/features/editor/components/editor.tsx) (Workflow editor), [`src/server/db`](https://github.com/samolubukun/conduit-ai-workflow-orchestration-platform/tree/main/src/server/db) (PostgreSQL), [`src/inngest/utils.ts`](https://github.com/samolubukun/conduit-ai-workflow-orchestration-platform/blob/main/src/inngest/utils.ts) (Workflow dispatch), [`src/features/workflows/server/routers.ts`](https://github.com/samolubukun/conduit-ai-workflow-orchestration-platform/blob/main/src/features/workflows/server/routers.ts) (Workflow API)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_authoring["Workflow authoring"]
  node_editor["Workflow editor<br/>[editor.tsx]"]
  node_editor_state["Editor state<br/>[atoms.ts]"]
  node_workflow_ui["Workflow dashboard<br/>[workflows.tsx]"]
  node_trigger_nodes["Trigger nodes"]
  node_action_nodes["Action nodes"]
end

subgraph group_execution["Workflow execution"]
  node_webhooks["Webhook ingress"]
  node_manual_run["Manual trigger<br/>[executor.ts]"]
  node_dispatch["Workflow dispatch<br/>[utils.ts]"]
  node_inngest["Durable runner<br/>[functions.ts]"]
  node_registry["Executor registry"]
  node_node_executors["Node executors"]
  node_execution_views["Execution views<br/>[executions.tsx]"]
end

subgraph group_platform["Platform APIs"]
  node_workflow_api["Workflow API<br/>[routers.ts]"]
  node_execution_api["Execution API<br/>[routers.ts]"]
  node_trpc["tRPC gateway<br/>[route.ts]"]
end

subgraph group_identity["Identity and billing"]
  node_auth["Authentication<br/>[auth.ts]"]
  node_billing["Credits and billing<br/>[billing.ts]"]
end

subgraph group_state["Persistent state"]
  node_database[("PostgreSQL")]
end

node_user(("User"))
node_events(("External event sources"))
node_integrations{{"AI and service APIs"}}

node_user -->|"configures"| node_editor
node_editor -->|"updates"| node_editor_state
node_editor -->|"manages workflows"| node_workflow_api
node_workflow_ui -->|"queries workflows"| node_workflow_api
node_editor -->|"starts run"| node_manual_run
node_manual_run -->|"dispatches run"| node_dispatch
node_events -->|"sends events"| node_webhooks
node_webhooks -->|"dispatches run"| node_dispatch
node_dispatch -->|"sends event"| node_inngest
node_inngest -->|"selects executors"| node_registry
node_registry -->|"dispatches nodes"| node_node_executors
node_node_executors -.->|"calls services"| node_integrations
node_execution_views -->|"queries runs"| node_execution_api
node_workflow_api -->|"reads and writes"| node_database
node_execution_api -->|"reads and writes"| node_database
node_user -->|"authenticates"| node_auth
node_auth -->|"stores identity"| node_database
node_user -->|"manages credits"| node_billing
node_billing -->|"reads and writes"| node_database
node_editor -->|"sends API requests"| node_trpc
node_workflow_ui -->|"sends API requests"| node_trpc

click node_editor "https://github.com/samolubukun/conduit-ai-workflow-orchestration-platform/blob/main/src/features/editor/components/editor.tsx"
click node_editor_state "https://github.com/samolubukun/conduit-ai-workflow-orchestration-platform/blob/main/src/features/editor/store/atoms.ts"
click node_workflow_ui "https://github.com/samolubukun/conduit-ai-workflow-orchestration-platform/blob/main/src/features/workflows/components/workflows.tsx"
click node_trigger_nodes "https://github.com/samolubukun/conduit-ai-workflow-orchestration-platform/tree/main/src/features/triggers/components"
click node_action_nodes "https://github.com/samolubukun/conduit-ai-workflow-orchestration-platform/tree/main/src/features/executions/components"
click node_workflow_api "https://github.com/samolubukun/conduit-ai-workflow-orchestration-platform/blob/main/src/features/workflows/server/routers.ts"
click node_execution_api "https://github.com/samolubukun/conduit-ai-workflow-orchestration-platform/blob/main/src/features/executions/server/routers.ts"
click node_trpc "https://github.com/samolubukun/conduit-ai-workflow-orchestration-platform/blob/main/src/app/api/trpc/%5Btrpc%5D/route.ts"
click node_webhooks "https://github.com/samolubukun/conduit-ai-workflow-orchestration-platform/tree/main/src/app/api/webhooks"
click node_manual_run "https://github.com/samolubukun/conduit-ai-workflow-orchestration-platform/blob/main/src/features/triggers/components/manual-trigger/executor.ts"
click node_dispatch "https://github.com/samolubukun/conduit-ai-workflow-orchestration-platform/blob/main/src/inngest/utils.ts"
click node_inngest "https://github.com/samolubukun/conduit-ai-workflow-orchestration-platform/blob/main/src/inngest/functions.ts"
click node_registry "https://github.com/samolubukun/conduit-ai-workflow-orchestration-platform/blob/main/src/features/executions/lib/executor-registry.ts"
click node_node_executors "https://github.com/samolubukun/conduit-ai-workflow-orchestration-platform/tree/main/src/features/executions/components"
click node_execution_views "https://github.com/samolubukun/conduit-ai-workflow-orchestration-platform/blob/main/src/features/executions/components/executions.tsx"
click node_auth "https://github.com/samolubukun/conduit-ai-workflow-orchestration-platform/blob/main/src/lib/auth.ts"
click node_billing "https://github.com/samolubukun/conduit-ai-workflow-orchestration-platform/blob/main/src/server/api/routers/billing.ts"
click node_database "https://github.com/samolubukun/conduit-ai-workflow-orchestration-platform/tree/main/src/server/db"

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_editor,node_editor_state,node_workflow_ui,node_trigger_nodes,node_action_nodes,node_user toneBlue
class node_webhooks,node_manual_run,node_dispatch,node_inngest,node_registry,node_node_executors,node_execution_views toneAmber
class node_workflow_api,node_execution_api,node_trpc,node_integrations toneMint
class node_auth,node_billing toneRose
class node_database,node_events toneIndigo
```

## Components

### Workflow authoring

- [Workflow editor](https://github.com/samolubukun/conduit-ai-workflow-orchestration-platform/blob/main/src/features/editor/components/editor.tsx): `src/features/editor/components/editor.tsx`
- [Editor state](https://github.com/samolubukun/conduit-ai-workflow-orchestration-platform/blob/main/src/features/editor/store/atoms.ts): `src/features/editor/store/atoms.ts`
- [Workflow dashboard](https://github.com/samolubukun/conduit-ai-workflow-orchestration-platform/blob/main/src/features/workflows/components/workflows.tsx): `src/features/workflows/components/workflows.tsx`
- [Trigger nodes](https://github.com/samolubukun/conduit-ai-workflow-orchestration-platform/tree/main/src/features/triggers/components): `src/features/triggers/components`
- [Action nodes](https://github.com/samolubukun/conduit-ai-workflow-orchestration-platform/tree/main/src/features/executions/components): `src/features/executions/components`

### Workflow execution

- [Webhook ingress](https://github.com/samolubukun/conduit-ai-workflow-orchestration-platform/tree/main/src/app/api/webhooks): `src/app/api/webhooks`
- [Manual trigger](https://github.com/samolubukun/conduit-ai-workflow-orchestration-platform/blob/main/src/features/triggers/components/manual-trigger/executor.ts): `src/features/triggers/components/manual-trigger/executor.ts`
- [Workflow dispatch](https://github.com/samolubukun/conduit-ai-workflow-orchestration-platform/blob/main/src/inngest/utils.ts): `src/inngest/utils.ts`
- [Durable runner](https://github.com/samolubukun/conduit-ai-workflow-orchestration-platform/blob/main/src/inngest/functions.ts): `src/inngest/functions.ts`
- [Executor registry](https://github.com/samolubukun/conduit-ai-workflow-orchestration-platform/blob/main/src/features/executions/lib/executor-registry.ts): `src/features/executions/lib/executor-registry.ts`
- [Node executors](https://github.com/samolubukun/conduit-ai-workflow-orchestration-platform/tree/main/src/features/executions/components): `src/features/executions/components`
- [Execution views](https://github.com/samolubukun/conduit-ai-workflow-orchestration-platform/blob/main/src/features/executions/components/executions.tsx): `src/features/executions/components/executions.tsx`

### Platform APIs

- [Workflow API](https://github.com/samolubukun/conduit-ai-workflow-orchestration-platform/blob/main/src/features/workflows/server/routers.ts): `src/features/workflows/server/routers.ts`
- [Execution API](https://github.com/samolubukun/conduit-ai-workflow-orchestration-platform/blob/main/src/features/executions/server/routers.ts): `src/features/executions/server/routers.ts`
- [tRPC gateway](https://github.com/samolubukun/conduit-ai-workflow-orchestration-platform/blob/main/src/app/api/trpc/%5Btrpc%5D/route.ts): `src/app/api/trpc/[trpc]/route.ts`

### Identity and billing

- [Authentication](https://github.com/samolubukun/conduit-ai-workflow-orchestration-platform/blob/main/src/lib/auth.ts): `src/lib/auth.ts`
- [Credits and billing](https://github.com/samolubukun/conduit-ai-workflow-orchestration-platform/blob/main/src/server/api/routers/billing.ts): `src/server/api/routers/billing.ts`

### Persistent state

- [PostgreSQL](https://github.com/samolubukun/conduit-ai-workflow-orchestration-platform/tree/main/src/server/db): `src/server/db`

### Other components

- **User**
- **External event sources**
- **AI and service APIs**

## Connections

- User → Workflow editor: configures
- Workflow editor → Editor state: updates
- Workflow editor → Workflow API: manages workflows
- Workflow dashboard → Workflow API: queries workflows
- Workflow editor → Manual trigger: starts run
- Manual trigger → Workflow dispatch: dispatches run
- External event sources → Webhook ingress: sends events
- Webhook ingress → Workflow dispatch: dispatches run
- Workflow dispatch → Durable runner: sends event
- Durable runner → Executor registry: selects executors
- Executor registry → Node executors: dispatches nodes
- Node executors → AI and service APIs: calls services
- Execution views → Execution API: queries runs
- Workflow API → PostgreSQL: reads and writes
- Execution API → PostgreSQL: reads and writes
- User → Authentication: authenticates
- Authentication → PostgreSQL: stores identity
- User → Credits and billing: manages credits
- Credits and billing → PostgreSQL: reads and writes
- Workflow editor → tRPC gateway: sends API requests
- Workflow dashboard → tRPC gateway: sends API requests
