100% client-side · zero API calls · zero data leaves your device

Verify any Indian ID.
Entirely in your browser.

VeriDoc Studio runs a full KYC document-intelligence pipeline on-device: OCR extraction, Verhoeff checksum validation, error-level forgery analysis and neural face detection — no upload, no server, no tracking.

0pipeline stages
0Indian ID types parsed
0servers your data touches
0on-device inference

A real verification engine, not a demo

Every stage produces auditable signals that roll up into a single trust score — the same shape as production KYC systems.

🔍

WASM OCR Engine

Tesseract LSTM compiled to WebAssembly reads names, dates and ID numbers straight from the document image — fully offline.

Checksum Validation

Aadhaar numbers are verified with the actual Verhoeff algorithm; PAN structure, dates and names get strict format checks. OCR alone is never trusted.

🕵️

Forgery Analysis

Error Level Analysis recompresses the image and maps compression inconsistencies into a tamper heatmap plus a suspicion score.

🧠

Neural Face Detection

An UltraFace ONNX model running on onnxruntime-web locates ID photos and webcam faces on-device.

📊

Trust Score & Report

Weighted scoring across validation, fields, forgery, quality and face signals — exportable as a JSON verification report.

🔌

Train-Ready Registry

Every model sits behind a pluggable registry. Train your own PyTorch models with the included ml/ pipeline and drop them in as ONNX.

How it works

Drop a document — or use the bundled specimen IDs — and watch the pipeline run stage by stage.

STEP 1

Load & assess

Image quality scoring: sharpness, contrast, resolution — low-quality captures are flagged before OCR.

STEP 2

Read & parse

WASM OCR extracts raw text; field parsers pull name, DOB, gender and ID numbers; keywords classify the document type.

STEP 3

Validate & inspect

Verhoeff checksums, PAN format rules, ELA forgery heatmaps and neural face detection produce independent trust signals.

STEP 4

Score & export

Signals combine into a weighted trust score with a VERIFIED / REVIEW / SUSPECT verdict and a downloadable JSON report.

Built to be trained

The heuristic engines shipping today are placeholders by design. A complete PyTorch pipeline lives in ml/: synthetic ID-card data generation, document-type classifier training, forgery-classifier scaffold and one-command ONNX export. Swap any stage by registering your model — the UI never changes.

View source on GitHub
// every stage resolves through the registry
ModelRegistry.register("doctype-classifier",
  () => ort.InferenceSession.create(
    "vendor/models/doctype.onnx"));

# train it yourself, then export
python ml/synth_data.py --n 2000
python ml/train_doctype.py --epochs 10
python ml/export_onnx.py