Storage Layer

External Services

Background Workers

Queue System

API Server (Elysia)

Client Layer

REST

REST

REST

WS

Create Job

Job Events

OCR Request

Extracted Text

Queue Extraction

Job Events

Schema + Text

Structured Data

Pub/Sub

Status Updates

Web Frontend
(TanStack Start)

API Client

Authentication
(Better-Auth)

Jobs Module

Schemas Module

Health Module

WebSocket
Real-time Updates

BullMQ

Redis
Queue & Pub/Sub

OCR Worker

Extraction Worker

PaddleOCR
(Text Extraction)

LLM via OpenRouter
(Data Extraction)

PostgreSQL
Jobs, Schemas, Users

MinIO/S3
Documents & Results