Three-Tier Architecture
AI Builder follows a classic three-tier architecture pattern, modernized for cloud-native, event-driven applications:- Presentation Tier
- Application Tier
- Data Tier
The UI layer that users interact with, built using:
- Next.js: For server-side rendering and optimal performance
- React: For component-based UI development
- BlockProtocol.org Components: For standardized UI building blocks
- Tailwind CSS: For styling and responsive design
Event-Driven Architecture (EDA)
AI Builder’s core interaction model is built around events, enabling loose coupling and asynchronous communication between components:Key Components of the EDA
Event Types
Event Types
System Events
Description: Platform-generated events for key operations
Examples: page load, block mount, automation start/end, error occurrence
Examples: page load, block mount, automation start/end, error occurrence
Custom Events
Description: User-defined events for application-specific logic
Examples: form submission, data request, process completion
Examples: form submission, data request, process completion
UI Events
Description: User interaction events from blocks and pages
Examples: button click, selection change, data input
Examples: button click, selection change, data input
External Events
Description: Webhooks and API calls from outside systems
Examples: third-party notifications, scheduled triggers, external system callbacks
Examples: third-party notifications, scheduled triggers, external system callbacks
Event Communication Channels
Event Communication Channels
WebSocket
Description: Real-time communication between frontend and backend
Used for: UI updates, event streaming, long-running processes
Used for: UI updates, event streaming, long-running processes
HTTP
Description: Request-response communication for APIs
Used for: External system integration, data fetching, authentication
Used for: External system integration, data fetching, authentication
Event Broker
Description: Internal communication between automations
Default implementation: Redis Streams for reliable, ordered event delivery
Default implementation: Redis Streams for reliable, ordered event delivery
Event Processing
Event Processing
Synchronous Processing
Description: Immediate handling with response
Used for: Direct API calls, user-facing operations requiring immediate feedback
Used for: Direct API calls, user-facing operations requiring immediate feedback
Asynchronous Processing
Description: Queued handling without waiting
Used for: Background tasks, long-running operations, scheduled processes
Used for: Background tasks, long-running operations, scheduled processes
Event Correlation
Description: Tracking related events across the system
Implementation: Correlation IDs to trace event chains through the system
Implementation: Correlation IDs to trace event chains through the system
Event Flow in AI Builder
Event Emission
Events can originate from multiple sources:
- UI components (blocks) emitting user interaction events
- Pages emitting lifecycle and navigation events
- Automations emitting custom process events
- External systems emitting webhook events
Event Routing
The event router determines where events should be delivered:
- UI events are routed to relevant automations
- Automation events may be routed to other automations
- System events are routed to appropriate handlers
- Events can be filtered and transformed during routing
Event Handling
Recipients process events according to their type:
- Blocks may update their display based on received events
- Pages may navigate or modify their structure
- Automations execute logic sequences in response to events
- System components update state or perform operations
Microservices Architecture
AI Builder is built on a microservices foundation, providing scalability and resilience:Service Isolation
Description: Each functional area operates as an independent service
- UI rendering service
- Automation execution service
- Event processing service
- Storage and persistence services
- Integration services
API-First Design
Description: All services communicate through well-defined APIs
- RESTful HTTP interfaces
- Event-based messaging
- Versioned API contracts
- Standardized error handling
Containerization
Description: Services are packaged as containers for consistent deployment
- Docker containers for all services
- Kubernetes orchestration
- Horizontal scaling capabilities
- Resource isolation
- Deployment consistency
Service Discovery
Description: Dynamic service location and communication
- Automatic service registration
- Load balancing between instances
- Health monitoring
- Circuit breaking for fault tolerance
- Failover mechanisms
Cloud-Native Architecture
AI Builder is designed as a cloud-native application with key characteristics:- Infrastructure as Code
- Multi-Cloud Support
- Scalability
All infrastructure components are defined as code:
- Terraform: For provisioning cloud resources
- Helm Charts: For Kubernetes deployments
- GitOps: For configuration management
- Declarative Specifications: For resource definitions
Security Architecture
Security is built into every layer of the AI Builder framework:Authentication & Authorization
Authentication & Authorization
Data Protection
Data Protection
Encryption
Description:
Data protection at rest and in transit
Methods:
TLS 1.3, AES-256, envelope encryption for secrets
Secrets Management
Description:Secure storage of sensitive information
Implementation:Vault integration, key rotation, least privilege access
Data Residency
Description:
Control over data location
Features:
Region selection, data sovereignty compliance
Privacy by Design
Description:
Built-in privacy controls
Implementation:
Data minimization, purpose limitation, consent management
Security Monitoring
Security Monitoring
Audit Logging
Description:
Comprehensive activity tracking
Captures:
User actions, system changes, authentication events
Threat Detection
Description:Identifying potential security issues
Methods:Anomaly detection, pattern recognition, behavior analysis
Compliance Reporting
Description:
Documentation for regulatory requirements
Features:
Pre-built reports, evidence collection, control mapping
Vulnerability Management
Description:
Identifying and addressing weaknesses
Approach:
Regular scanning, dependency analysis, patch management
Memory Architecture
AI Builder implements a multi-tiered memory system for state management:Variable Scopes
Description: Different persistence levels for different needs
- Global Scope: Workspace-wide variables available to all users and sessions
- User Scope: User-specific variables persisted across sessions
- Session Scope: Variables tied to the current user session
- Run Scope: Temporary variables for the current automation execution
Storage Implementations
Description: Appropriate data storage based on scope
- In-memory Cache: For temporary, high-speed access
- Redis: For distributed, persistent session data
- Database: For long-term user and global variables
- Specialized Storage: Vector databases, document stores via apps
Access Patterns
Description: How variables are referenced and used
- Variable Syntax:
{{scope.variable}}notation - Expression Evaluation: Dynamic evaluation in automations and blocks
- CRUD Operations: Set, get, update, delete operations
- Reactive Updates: Real-time UI updates on variable changes
Integration Architecture
AI Builder’s integration capabilities connect with external systems through multiple approaches:- HTTP/REST
- Webhooks
- Marketplace Apps
Direct HTTP communication with external APIs:
- HTTP Methods: GET, POST, PUT, DELETE, PATCH
- Authentication: Basic, Bearer Token, OAuth, API Key
- Content Types: JSON, XML, Form-data, Binary
- Response Handling: Status codes, body parsing, error management
Development Approach
AI Builder supports a range of development approaches to accommodate different skill levels and requirements:Visual Builder
Description: Graphical interface for configuration-based developmentKey Features:
- Drag-and-drop interfaces
- Visual workflow design
- Property editors
- WYSIWYG previews
YAML Definition
Description: Declarative definition of components using YAMLKey Features:
- Text-based configuration
- Version control friendly
- Templating and inheritance
- Bulk editing capabilities
Code Customization
Description: Direct code implementation for advanced scenariosKey Features:
- JavaScript/TypeScript for UI
- Node.js for backend logic
- CSS for styling
- Python for data processing
Next Steps
Blocks
Learn about UI components in AI Builder
Pages
Discover page creation and management
Automations
Explore backend process development
Integrations
Learn about connecting to external systems