Inspiration
The goal was simple: take raw structured inspection data and turn it into two professional documents automatically — one that mirrors the required TREC format, and another that feels more modern, clean, and readable for clients and real-estate agents.
What it does
The project processes a inspection.json file and produces:
A fully completed TREC-style inspection PDF (output_pdf.pdf)
A modern formatted report (bonus_pdf.pdf)
How we built it
Parse JSON into sections, items, and media entries
Map text and checkboxes to the correct TREC form fields
Remove form input boxes after filling to avoid overlap
Render page content directly into the PDF canvas
Build a second PDF from scratch for the redesigned version
Add a dynamic table of contents with anchor links
Handle embedded media tokens like [M#3] and place images inline
Challenges we ran into
PDF form field behavior can differ depending on the PDF reader and pypdf version, so getting exact rendering took careful testing
Dynamically fitting text into fixed fields without overlap required custom wrapping and overflow logic
Handling hundreds of images while maintaining placement order and fast runtime required pre-processing and caching
Accomplishments that we're proud of
Automated a normally manual, tedious PDF-completion workflow
Matched the official TREC formatting clearly and reliably
Built a second, modern inspection report from scratch
Implemented inline media rendering and neat handling of video references
What we learned
How PDF annotation objects, appearance streams, and form dictionaries work
ReportLab canvas techniques for text and media layout
How to pre-process and scale images efficiently
Building automated document generation pipelines
What's next for Binsr Inspect Challenge
Web interface to upload data and generate reports online
Real-time report preview during capture
Log in or sign up for Devpost to join the conversation.