Switches from LineChart to AreaChart for main metrics graph, adds animated gradients and glow effects, and updates legend styling. Tooltip UI is improved with clearer layout, colored dots, and value formatting. Chart colors now use explicit hex values for better SVG compatibility, and LESS styles are updated for improved appearance and interactivity.
- GET /workflows - List all workflows for user
- GET /workflows/<id> - Get single workflow
- POST /workflows - Create new workflow
- PUT /workflows/<id> - Update workflow
- DELETE /workflows/<id> - Delete workflow
- JWT authentication and access control
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- SQLAlchemy model with name, description, nodes, edges, viewport
- JSON string storage for React Flow state
- to_dict() method with node/edge counts
- User relationship and timestamps
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Register ConnectionEdge as custom edge type
- Track selectedEdge state
- onEdgeClick handler
- Delete key/Backspace handler for edge deletion
- Pass onDelete to edge data for delete button
- Store connection metadata (sourceType, targetType)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Extends smoothstep edge with labels
- Shows connection type label (Routes to, Uses DB, etc.)
- Color-coded by connection type
- Selected state with glow effect
- Delete button on selection
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Import connection validation utility
- Add isValidConnection callback using rules
- Add onConnectStart/onConnectEnd for error tracking
- Show connection error toast when invalid
- Auto-clear error after 3 seconds
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Phase 18 completed with 7 commits:
- ConfigPanel base component
- DockerApp, Database, Domain, Service config panels
- Panel wiring with real-time node updates
- Panel styles with slide animation
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Sliding panel from right with open/close animation
- Panel header with type-specific border color
- Panel body with form styling
- Port list styles for Docker config
- btn-icon and btn-danger-ghost for remove buttons
- Fixed @shadow-2xl -> @shadow-lg
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Import all config panel components
- Track selectedNode state
- onNodeClick opens appropriate panel
- onPaneClick closes panel
- handleNodeDataChange updates node data in real-time
- renderConfigPanel switches by node type
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Name input
- Service type selector (Redis, Memcached, RabbitMQ, Queue)
- Auto-update port when type changes
- Status selector
- Description textarea
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Domain name input with hint
- SSL status selector (none/valid/expired)
- Conditional SSL expiry date picker
- DNS status selector (pending/propagated)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Name input
- Type selector (MySQL, PostgreSQL, MongoDB, Redis)
- Auto-update port when type changes
- Host and port inputs in row layout
- Read-only size display
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Name and image inputs
- Status selector (running/stopped/error)
- Dynamic port mappings list with add/remove
- Memory limit input
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Sliding panel with header, body, and optional footer
- Header with icon, title, and close button
- Escape key handler to close panel
- CSS class-based open/closed state for animations
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Generic service node for future extensibility
- Service type configs for Redis, Memcached, RabbitMQ, Queue
- Configurable icon and color per service type
- Input and output handles for flexible connections
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Domain node with prominent domain name display
- SSL status badge (valid/expired/none) with icons
- DNS status indicator
- SSL expiry date display
- Output handle only (domains connect TO apps)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Database node with name and type badge
- Type colors for MySQL, PostgreSQL, MongoDB, Redis
- Connection info (host:port) display
- Size/storage preview
- Input handle only (databases receive connections)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
7 tasks planned:
- DockerAppNode with status, ports, memory display
- DatabaseNode with type badges and connection info
- DomainNode with SSL/DNS status
- ServiceNode for future extensibility
- Register nodes in WorkflowBuilder
- Enhanced palette with categories
- Node-specific styles
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Add floating toolbar with buttons to add:
- Docker App nodes
- Database nodes
- Domain nodes
Implement addNode function that:
- Creates node with unique ID
- Positions node in center of viewport
- Sets appropriate type and label
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>