← Return to Selected Works

Lleven V2: Scale & Security

Following the success and the hard lessons learned from the initial prototype, Lleven V2 was completely re-architected. Where V1 hit memory limits and HTTP timeouts with large PDFs, V2 adopts a robust, event-driven architecture designed for scale and security.

Project/projects/lleven-v1
Lleven V1: The Genesis

The Asynchronous Pipeline

To solve the "Timeout Wall" of V1, the entire parsing engine was decoupled from the HTTP request cycle.

  1. Upload: Files are securely uploaded and placed into an encrypted object store.
  2. Queueing: An event is fired to Redis Streams, queuing the document for processing.
  3. Background Workers: Dedicated consumer services written in Go pick up the job, run the intensive parsing, and update the database asynchronously.

This means a user uploading a 200-page statement gets an immediate response, while the system processes the file safely in the background.

Identity and Persistence

A core limitation of V1 was the lack of user identity. In V2, we introduced a robust identity management system. Users can securely authenticate, manage their accounts, and review their processing history.

Data is no longer strictly ephemeral in a volatile cache; insights are persisted securely, allowing users to track their financial trends over time without re-uploading the same documents.

Real-time Telemetry

With the new architecture, we implemented Server-Sent Events (SSE) to push real-time status updates back to the UI. The frontend (rebuilt in Nuxt and Vue) provides a live, reactive experience as the statement goes through validation, extraction, and analytics stages.

V2 sets a new standard for performance, reliability, and user experience.