← Projects
Research2026
DocPipeline
DocPipeline is a cloud-ready document extraction platform that lets users upload PDFs or images, run OCR and field extraction, and receive structured outputs such as JSON, CSV, or text. It is designed as a modern full-stack pipeline with a React/Next.js frontend, Python backend services, pluggable OCR, async job processing, storage, authentication, and usage-based billing.
Document AIOCRResearch Prototype
Try it live →How it works
Architecture
┌──────────────────────────────┐
│ Input Channels │
└──────────────┬───────────────┘
│
┌─────────────────────────────┬────────────┼───────────────┬─────────────────────────────┐
│ │ │ │ │
▼ ▼ ▼ ▼ ▼
┌──────────────────┐ ┌────────────────┐ ┌──────────────┐ ┌────────────────┐ ┌─────────────────┐
│ User Upload UI │ │ Webhook Input │ │ Google Drive │ │ OneDrive Watch │ │ Future Sources │
│ drag/drop PDF or │ │ external apps │ │ folder watch │ │ folder watch │ │ email/API/etc. │
│ image │ │ send docs in │ │ ingest docs │ │ ingest docs │ │ │
└────────┬─────────┘ └───────┬────────┘ └──────┬───────┘ └──────┬─────────┘ └────────┬────────┘
│ │ │ │ │
└───────────────────────────┴──────────────────┴──────────────────┴───────────────────────┘
│
▼
┌──────────────────────────────┐
│ Ingestion / API Layer │
│ Next.js + Python Functions │
└──────────────┬───────────────┘
│
▼
┌──────────────────────────────┐
│ Job Creation / Validation │
│ - auth / source validation │
│ - file type / size checks │
│ - credit checks │
│ - PDF password detection │
│ - document type selection or │
│ auto-detect │
└──────────────┬───────────────┘
│
▼
┌──────────────────────────────┐
│ Preprocessing Layer │
│ - split PDFs into pages │
│ - convert pages to images │
│ - store original + page imgs │
└──────────────┬───────────────┘
│
▼
┌──────────────────────────────┐
│ Queue / Orchestration Layer │
│ local queue or Service Bus │
└──────────────┬───────────────┘
│
▼
┌──────────────────────────────┐
│ OCR + Extraction Pipeline │
│ - OCR engine │
│ - field extraction │
│ - normalization / validation │
│ - schema shaping │
└──────────────┬───────────────┘
│
┌──────────────────────────┼──────────────────────────┐
│ │ │
▼ ▼ ▼
┌────────────────────┐ ┌────────────────────┐ ┌────────────────────┐
│ Blob / File Store │ │ Database │ │ Export / Delivery │
│ originals, pages, │ │ jobs, pages, │ │ UI download, │
│ outputs │ │ results, events, │ │ webhook push, │
│ │ │ credits │ │ downstream systems │
└────────────────────┘ └────────────────────┘ └────────────────────┘
│
▼
┌──────────────────────────────┐
│ Results & History UI │
│ review, export, audit trail │
└──────────────┬───────────────┘
│
▼
┌──────────────────────────────┐
│ Output Channels │
└──────────────┬───────────────┘
│
┌─────────────────────┬──────────────────────┬┴─────────────────────┬─────────────────────┐
│ │ │ │ │
▼ ▼ ▼ ▼ ▼
┌─────────────────┐ ┌───────────────┐ ┌────────────────────┐ ┌───────────────┐ ┌─────────────────┐
│ User UI Review │ │ Webhook Push │ │ Google Sheets / │ │ Slack / Teams │ │ Cloud Storage │
│ - field-level │ │ - automation │ │ Excel │ │ - alerts │ │ - Google Drive │
│ view │ │ │ │ - structured │ │ - notif- │ │ - OneDrive │
│ - page evidence │ │ │ │ export │ │ ications │ │ - Dropbox │
└─────────────────┘ └───────────────┘ └────────────────────┘ └───────────────┘ └─────────────────┘
┌─────────────────────────────────────┐ ┌──────────────────────────────────────┐
│ Email Delivery │ │ Manual Export / Future Integrations │
│ - send results as email body │ │ - JSON / CSV / TXT download │
│ - attachments │ │ - QuickBooks / ERP / APIs │
└─────────────────────────────────────┘ └──────────────────────────────────────┘