How dafthunk-com/dafthunk works
Dafthunk is a browser-based visual workflow automation platform: users build workflows from connected nodes, configure triggers and integrations, then execute and monitor them. Its API coordinates execution and generation, while Cloudflare-backed runtime services provide workflow execution, AI, and persistent resources. The README establishes the main platform capabilities; sampled source confirms the execution manager’s validation and dispatch, the generator pipeline’s synthesis helpers, and the browser’s WebSocket protocol. Some subsystem links below reflect documented capabilities rather than inspected implementation wiring.
Main entry points: cloudflare-worker-runtime.ts Worker runtime · execution-manager.ts Execution manager · workflow-session-service.ts Live workflow session · pipeline.ts Workflow generator
Components 20
Workflow authoring
- Visual editor
apps/app/src/components/workflow/workflow-builder.tsx - Live workflow session
apps/app/src/services/workflow-session-service.ts - Workflow generator
apps/api/src/agents/workflow-generator/pipeline.ts
API orchestration
- API routes
apps/api/src/index.ts - Workflow routes
apps/api/src/routes/workflows.ts - Execution manager
apps/api/src/services/execution-manager.ts - Workflow executor
apps/api/src/services/workflow-executor.ts - Live execution updates
apps/api/src/routes/ws.ts
Workflow runtime
- Runtime entrypoint
apps/api/src/runtime/workflow-runtime-entrypoint.ts - Worker runtime
apps/api/src/runtime/cloudflare-worker-runtime.ts - AI model services
apps/api/src/runtime/cloudflare-model-catalog.ts
Platform resources
- Execution state
apps/api/src/runtime/cloudflare-execution-store.ts - Database service
apps/api/src/runtime/cloudflare-database-service.ts - Object storage
apps/api/src/runtime/cloudflare-object-store.ts - Application records
apps/api/src/db/index.ts
Triggers and integrations
- Workflow triggers
apps/api/src/routes/http-triggers.ts - Integration OAuth
apps/api/src/oauth/index.ts - Integration endpoints
apps/api/src/routes/integrations.ts
Other components
- Workflow user
- Cloudflare services
Connections 23
- Workflow user → Visual editor: designs workflow
- Visual editor → Live workflow session: updates and executes
- Live workflow session → Live execution updates: sends commands
- Live execution updates → Live workflow session: streams updates
- Workflow user → API routes: uses platform
- API routes → Workflow routes: dispatches requests
- Workflow routes → Execution manager: starts execution
- Execution manager → Application records: reads organization and billing
- Execution manager → Workflow executor: dispatches workflow
- Workflow executor → Runtime entrypoint: runs workflow
- Runtime entrypoint → Worker runtime: executes nodes
- Worker runtime → Execution state: persists execution data
- Worker runtime → Database service: accesses databases
- Worker runtime → Object storage: stores workflow objects
- Worker runtime → AI model services: invokes AI nodes
- Database service → Cloudflare services: uses D1
- Object storage → Cloudflare services: uses R2
- Execution state → Cloudflare services: uses Cloudflare storage
- Workflow triggers → Execution manager: initiates workflow
- Workflow user → Integration OAuth: connects accounts
- Integration endpoints → Integration OAuth: manages connections
- Workflow generator → Cloudflare services: requests model synthesis
- Workflow generator → Execution manager: previews generated workflow