GCP InsightDocs: Automated Document Extraction Platform
Canadian accountancy and business firms handle high volumes of critical documents. I independently built GCP InsightDocs from scratch — a full-stack platform that combines Google Cloud Document AI and OCR with a side-by-side React UI, automating structured key-value extraction from CRA tax forms and legal contracts to eliminate manual transcription workflows.
Brittle rules and manual transcription bottlenecks
The client, a Canadian accounting and business advisory firm, regularly parses high volumes of Canada Revenue Agency (CRA) tax forms, legal contracts, and financial records. Because these documents come from varying sources and scanning layouts, standard regex patterns or template-based document matching fail constantly.
Staff spent hours copy-pasting numbers from scanned PDFs into their internal tax and ledger systems. They needed a unified web application that could ingest multiple input formats, extract key-value data reliably without custom model training costs, and present the output in a side-by-side layout for instant visual verification.
Sole Developer — Full-Stack Ownership
I owned this project entirely as the sole developer, architecting and implementing the entire solution from scoping through deployment:
Orchestrating cloud processors behind a decoupled API
Flask Backend & GCP Orchestration
The backend was built in Python using Flask to keep the service footprint lightweight. Its primary job is API routing and data transformation: it receives uploaded files (PDFs and images), checks mime types, routes them to the correct GCP Document AI endpoints, and deserializes the structured JSON response into a clean schema the frontend can consume.
Processor Strategy: Form Parser + OCR
Instead of investing in expensive custom model training, I architected the extraction workflow utilizing standard pretrained GCP processors:
- Form Parser: Used for CRA forms. Form Parser is designed to parse tables and key-value fields (e.g. associating labels like "Total Income" directly to their corresponding numerical values) even when layout spacing shifts.
- OCR Processor: Used as a fallback for scanning contracts and text-heavy legal files, extracting raw content for review panels.
ReactJS Side-by-Side Panel UX
The UI was built with ReactJS to deliver a seamless verify-and-confirm workflow. It displays the original PDF or image inside an interactive viewer panel on the left. On the right, a structured extraction sidebar lists all the parsed key-value pairs. This UI allows users to easily confirm the extracted data against the source without toggling external windows or tools.
Frictionless manual workflow automation
The platform successfully automated structured data extraction for the client's two target document classes (CRA forms and legal contracts). By providing a direct side-by-side comparison screen, the system cut down transcription steps entirely and eliminated manual input errors, significantly increasing workflow speed.
Connecting pre-trained cloud vision processors with intuitive, verification-focused user interfaces is the fastest way to deliver measurable business automation.
Stack details
- Flask (Python)
- ReactJS
- Google Cloud Document AI
- Google Cloud OCR
- RESTful API Design
- PDF/Image Processing
- JSON Data Parsing
- Full-stack Web Integration