Skip to content

caimdeveloper/docfind-ocr

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

1 Commit
Β 
Β 

Repository files navigation

πŸ“„ DocFind β€” Global Lost-Document Finder

A service that helps reunite people with lost documents (passports, IDs, driver's licenses) using OCR + owner verification over WhatsApp.

πŸ”— Live: doc.caim.dev

πŸ”’ This is a showcase. Source code is in a private repository. This page documents the architecture and key engineering wins.


πŸ’‘ How it works

  1. Someone who found a document uploads photos + a short silent video (camera only, no gallery).
  2. The system runs OCR to extract the document's identifying fields.
  3. The owner claims it and proves ownership via a WhatsApp OTP.
  4. On a verified match, the two are connected.

Country-aware document types and field rules (RU passport / Π‘ΠΠ˜Π›Π‘ / ИНН, US SSN, India PAN / Aadhaar, Kyrgyz AC/AN/ID prefixes, …) and a full admin panel.


⚑ Key engineering win β€” OCR from ~180s to ~1s

PaddleOCR was installed but misconfigured and painfully slow. After profiling, a single fix (enable_mkldnn) plus pipeline tuning brought a document scan from ~180 seconds down to ~1 second β€” a ~180Γ— speedup β€” with Tesseract.js + Mindee as fallbacks.


πŸ—οΈ Architecture

Client (camera capture) ──► Fastify API ──► PostgreSQL (Prisma)
                                  β”‚
                                  └──► OCR sidecar (FastAPI + PaddleOCR 3.5)
                                  └──► WhatsApp OTP verification

πŸ› οΈ Tech stack

API Fastify Β· Prisma Β· PostgreSQL OCR FastAPI Β· PaddleOCR 3.5 Β· Tesseract.js Β· Mindee (fallback) Verification WhatsApp OTP Infra Linux Β· Nginx Β· PM2


Built by Muratbek Omurzakov.

About

πŸ“„ Lost-document finder with OCR + WhatsApp verification β€” OCR optimized 180sβ†’1s. Showcase.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors