System Architecture

OpenAutomate follows a distributed microservices architecture with clear separation between the orchestration layer and execution layer.

High-Level Architecture

Component Details

Frontend Layer

  • Next.js Application: Modern React-based web interface
  • Real-time Updates: SignalR integration for live status updates
  • Multi-tenant UI: Organization-specific dashboards and data
  • Responsive Design: Works on desktop, tablet, and mobile devices

Backend Services

  • ASP.NET Core API: RESTful services with OpenAPI documentation
  • Entity Framework Core: Database abstraction with multi-tenant filtering
  • SignalR Hub: Real-time communication with agents
  • Background Workers: Scheduled tasks and maintenance operations

Data Layer

  • SQL Server Database: Primary data storage with ACID compliance
  • S3-Compatible Storage: Package and asset storage
  • Redis Cache: Session management and performance optimization
  • Audit Logging: Comprehensive activity tracking

Agent Architecture

Windows Service

Communication Flow

Security Architecture

Authentication & Authorization

  • JWT Tokens: Stateless authentication with refresh tokens
  • Role-Based Access Control: Granular permissions per organization
  • Machine Key Authentication: Unique keys for agent registration
  • API Key Management: Secure programmatic access

Data Protection

  • Encryption at Rest: Database and storage encryption
  • Encryption in Transit: TLS 1.3 for all communications
  • Credential Vault: Secure asset storage with encryption
  • Audit Trail: Complete activity logging for compliance

Network Security

  • HTTPS Only: All web traffic encrypted
  • WebSocket Security: Secure real-time connections
  • IP Whitelisting: Optional network access controls
  • Rate Limiting: API protection against abuse

Scalability Design

Horizontal Scaling

  • Stateless Services: API servers can be load balanced
  • Database Sharding: Support for multiple database instances
  • CDN Integration: Global content delivery for packages
  • Auto-scaling: Cloud infrastructure scales with demand

Agent Scalability

  • Unlimited Agents: No licensing restrictions on agent count
  • Load Distribution: Intelligent package distribution
  • Resource Management: Configurable execution limits
  • Failover Support: Automatic agent health monitoring

Performance Optimizations

Caching Strategy

  • Redis Caching: Frequently accessed data
  • CDN Caching: Static assets and packages
  • Database Indexing: Optimized query performance
  • Connection Pooling: Efficient database connections

Monitoring & Observability

  • Application Metrics: Performance and usage tracking
  • Health Checks: Automated system monitoring
  • Log Aggregation: Centralized logging with search
  • Alerting: Proactive issue notification

Technology Stack

Backend

  • Runtime: .NET 8.0
  • Framework: ASP.NET Core
  • Database: Entity Framework Core
  • Real-time: SignalR
  • Authentication: JWT Bearer tokens

Frontend

  • Framework: Next.js 15
  • Language: TypeScript
  • Runtime: React 19
  • Styling: Tailwind CSS
  • State Management: React Query
  • Real-time: SignalR Client

Agent

  • Service: .NET 8.0 Windows Service
  • UI: WPF Application
  • Runtime: Python 3.11+
  • Communication: SignalR Client
  • Storage: Local file system

Infrastructure

  • Database: SQL Server 2019+
  • Storage: S3-compatible object storage
  • Cache: Redis 7+
  • Hosting: Docker containers
  • Orchestration: Kubernetes (optional)