mirror of
https://github.com/johndoe6345789/metabuilder.git
synced 2026-05-02 01:34:56 +00:00
New WorkflowUI project: Production-grade visual workflow editor built with modern tech stack for MetaBuilder's DAG executor system. ### Frontend Stack - Next.js 14 (server-side rendering, API routes) - React 18 with TypeScript strict mode - Redux + Redux Toolkit (centralized state management) - React Flow (DAG visualization and manipulation) - FakeMUI (Material UI compatible components) - SCSS (scoped component styling) - IndexedDB with Dexie (offline-first storage) ### Backend Stack - Flask (lightweight Python backend) - SQLAlchemy (ORM for persistence) - CORS support for cross-origin requests - RESTful API for workflow CRUD ### Architecture - Offline-first with IndexedDB storage - Sync queue for changes when offline - Redux store for centralized state - React Flow for visual DAG editing - Multi-tenant support throughout ### Components - Dashboard: List and manage workflows - Editor: Visual DAG editor with canvas controls - Node Library: Browse and add node types - Properties Panel: Edit node parameters - Execution History: View past executions - Node Types: Playwright testing, Storybook documentation ### Database - IndexedDB with 5 tables: workflows, executions, nodeTypes, drafts, syncQueue - Indexes for fast queries: tenantId, name, category - Sync queue for offline changes ### API Endpoints - Workflows CRUD - Node registry - Workflow execution - Execution history - Workflow validation - Health checks ### Features - Drag-and-drop node creation - Visual connection drawing - Zoom, pan, minimap controls - Undo/redo support - Auto-layout algorithms - Workflow validation (DAG constraints) - Export/import workflows - Version control integration ### Structure ``` workflowui/ ├── src/ │ ├── app/ # Next.js pages │ ├── components/ # React components │ ├── store/ # Redux slices │ ├── services/ # API services │ ├── db/ # IndexedDB operations │ ├── types/ # TypeScript definitions │ ├── utils/ # Utilities │ └── styles/ # Global styles ├── backend/ # Flask server ├── stories/ # Storybook components ├── workflows/ # Example workflows └── scripts/ # Build/setup scripts ``` ### Development - Hot reload with Next.js dev server - Redux DevTools integration - Storybook for component development - TypeScript strict mode - Jest testing framework ### Production Ready - Optimized builds - Code splitting - Performance monitoring - Error tracking - Multi-tenant isolation Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>