Flick
A browser extension that scans a paper document and auto-fills its fields into any web form. Extraction rules are configured live in a web admin, so supporting a new document never needs a code change.
Flick scans a paper document from a camera photo or an upload, reads its fields with OCR, and fills them into the matching form on the active tab. Instead of writing a parser for each document, an admin defines a document type once in the web interface — fields plus regex rules — and the extension reads from that config.

Flick is a monorepo of four independent packages. A browser extension holds the side panel and autofill logic, a Go API handles auth, payments, and document type CRUD, and a FastAPI microservice runs the OCR with PaddleOCR by default and a fallback to CnOCR.
I kept the scanning flow short: sign in, pick a document type, capture or upload the image, preview it, then run the scan. The result shows each extracted field with a confidence value so failures are visible instead of silent.
- A / Extension
Scan-to-Fill Side Panel
A Chrome, Edge, and Firefox extension that captures or uploads a document, sends it for OCR, and auto-fills the matched form on the active tab.
- B / Rules
Config-Driven Extraction
An admin defines document types, fields, and regex rules in the database. No per-document parsers in code, and rule edits apply without a rebuild.
- C / Backend
Go API with Auth and Paywall
A Go service handling JWT auth, rate-limited signup, mock payment plans, and document type CRUD as the single source the extension reads.
- D / OCR
Hybrid OCR Microservice
A FastAPI service running PaddleOCR with CnOCR fallback, applying regex field config with generic line-by-line parsing as a safety net.