System Architecture
Zarna is built as a monorepo with three main applications working together to deliver a comprehensive private equity workflow platform.High-Level Architecture
Data Flow
Request Lifecycle
Core Subsystems
1. Authentication System
- Supabase Auth for user management
- JWT tokens for API authentication
- Refresh token mechanism
- Row Level Security for data isolation
Authentication Details
See the complete authentication flow
2. CRM System
The CRM is the core of Zarna: Data Model:- Companies: Primary entities
- Contacts: People at companies
- Deals: Opportunities and transactions
- Interactions: Meetings, calls, emails
- Financials: Financial records
- Notes: Unstructured notes
- Relationship management
- Activity tracking
- Pipeline visualization
- AI-powered insights
CRM Architecture
Explore the CRM system design
3. Document Processing Pipeline
- Docling: Primary extraction engine
- EasyOCR: Scanned document processing
- PDFPlumber: Fallback PDF processing
- Claude AI: Post-processing and analysis
Processing Pipeline
See the document processing architecture
4. Agentic System
Multi-agent AI system with specialization: Agent Types:- Manager Agent: Coordinates other agents
- Data Retrieval Agent: Queries database
- Analysis Agent: Performs calculations
- Web Search Agent: External research
- Report Writing Agent: Generates reports
- Parallel agent execution
- Tool use capabilities
- Conversation memory
- Agent pool for performance
Agentic Architecture
Explore the multi-agent system
5. Integration Layer
Connects to external services: OAuth Integrations (via Composio):- Gmail/Google Workspace
- Outlook/Microsoft 365
- Google Drive
- Google Calendar
- SharePoint
- Egnyte
- Basecamp
- Anthropic Claude
- OpenAI
- AutoGen
- Exa (sourcing)
Deployment Architecture
Development
Production
Security Architecture
Multi-Layer Security
Performance Optimizations
Frontend
- Code Splitting: Lazy-loaded routes
- Tree Shaking: Remove unused code
- Image Optimization: WebP, lazy loading
- Bundle Analysis: Optimize bundle size
- Caching: Service worker (coming soon)
Backend
- Agent Pools: Eliminate cold starts (5-11s savings)
- Database Indexing: Fast queries
- Connection Pooling: Reuse connections
- Async I/O: Non-blocking operations
- Response Streaming: Incremental delivery
Database
- Indexes: Strategic column indexing
- Partitioning: Time-based (coming soon)
- Materialized Views: Pre-computed aggregations
- Read Replicas: Separate read/write (coming soon)
Scalability
Horizontal Scaling
Vertical Scaling
- Increase container resources
- Optimize database queries
- Add Redis caching
- Implement CDN
Monitoring & Observability
Application Metrics
- Request rate, latency, errors
- Agent pool health
- Database query performance
- AI service usage
Infrastructure Metrics
- CPU, memory, disk usage
- Network throughput
- Container health
- Database connections
Business Metrics
- Active users
- API calls per feature
- Document processing volume
- Report generation count
Disaster Recovery
Backup Strategy
- Database: Daily automated backups (Supabase)
- Files: S3-compatible storage with versioning
- Code: Git version control
- Configurations: Environment variable backups
Recovery Plan
- RTO (Recovery Time Objective): < 1 hour
- RPO (Recovery Point Objective): < 1 hour
- Backup Retention: 30 days
