# Process Builder Technical Appendix This document provides technical implementation details for developers working with the Process Builder system. > For user documentation and usage guidelines, please refer to [Process Builder Documentation](USER_GUIDE.md) ## Architecture Overview ### Technology Stack - **Frontend Framework**: Nuxt 3 / Vue 3 - **State Management**: Pinia - **Flow Visualization**: Vue Flow - **UI Framework**: Tailwind CSS - **Icons**: Material Design Icons - **Validation**: Zod - **Form Components**: FormKit ### Key Dependencies ```json { "@vue-flow/core": "^1.42.5", "@vue-flow/background": "^1.3.2", "@vue-flow/controls": "^1.1.2", "@vue-flow/minimap": "^1.5.3", "@pinia/nuxt": "^0.4.11", "@formkit/nuxt": "^1.5.5", "uuid": "^10.0.0", "zod": "^3.22.2" } ``` ## Project Structure ``` pages/ ├── process-builder/ │ ├── index.vue # Main builder interface │ └── manage.vue # Process management components/ ├── process-flow/ │ ├── ProcessFlowCanvas.vue # Flow canvas │ ├── ProcessFlowNodes.js # Custom node types │ ├── FormSelector.vue # Form selection component │ ├── GatewayConditionManager.vue # Gateway conditions UI │ ├── ApiNodeConfiguration.vue # API node configuration │ ├── FormNodeConfiguration.vue # Form node configuration │ ├── BusinessRuleConfiguration.vue # Business rule configuration │ └── VariableManager.vue # Process variables manager stores/ ├── processBuilder.js # State management └── variableStore.js # Variable state management composables/ └── useProcessValidation.js # Process validation types/ └── process-builder.d.ts # TypeScript definitions ``` ## Component Architecture ### Core Components 1. **ProcessFlowCanvas.vue** ```vue ``` 2. **ProcessFlowNodes.js** ```javascript import { h, markRaw } from 'vue'; import { Handle, Position } from '@vue-flow/core'; // Enhanced custom node renderer with 4-point connection system const CustomNode = markRaw({ template: `
Define and manage global variables to store and pass data within your process
Define conditional logic to control process flow based on data values
Choose variables to use in your business rules
No variables available
Define the conditions that will trigger specific actions
Specify what happens when rules are triggered
Create multiple paths with conditions to direct process flow
This path will be followed when no other path conditions are met
Configure external API calls to integrate with other systems
{Description}
{Empty State Description}