What It Does
In the realm of real estate, one of the biggest challenges for employees is verifying fragments of information scattered across different financial documents. Retrieving and cross-referencing accurate data can take weeks, leading to delays and strained relationships between companies and their customers.
Our team developed an AI assistant that automates document searching, verification, and report generation for property collateral risk underwriting. By handling surface-level validation and deeper cross-referencing across documents, the platform enables employees to focus on high-level decision-making and securing commercial deals with clients.
Inspiration
Underwriting property collateral risk presents one of the biggest operational challenges for real estate agencies.
Our original idea was to tackle underwriting in banking, but we pivoted to property collateral risk because we believed it was more novel and impactful. We were inspired by the opportunity to improve employee workflows and enhance customer satisfaction by reducing long verification timelines.
How We Built It
Before writing any code, our team conducted extensive research of problems that real estate underwriters typically face. By talking with First American representatives, consulting industry underwriters, and conducting general online research, we were able to specify the problem space and refine our approach.
Core Pipeline:
- Upload raw documents
- OCR + document classification
- Field extraction
- Document-level JSON
- Canonical loan JSON merge
- Readiness rules (5 gates)
- Findings + suggested conditions
- Underwriter handoff/export + audit trail
We realized the project ultimately boiled down to building a reliable document ingestion and cross-referencing pipeline capable of detecting nuanced discrepancies across fragmented sources.
Challenges We Ran Into
- None of us knew about the understanding process coming into this and understanding how it works required significant research. We even reached out to underwriters and FirstAmerican employees to get a better understanding
- Finding online datasets containing property information was difficult, so we had to create a bit of our own since PID was involved.
- Defining the technical pipeline required iteration and restructuring.
- Coordinating development with AI tools was challenging. We initially used Gemini for assisting with code generation but encountered faulty outputs and switched to Codex, which proved more reliable for debugging and reduced hallucinations.
Accomplishments That We’re Proud Of
- Successfully designing an end-to-end document ingestion and cross-referencing pipeline.
- Generating structured, detailed reports to support underwriting decisions.
- Validating our problem statement through conversations with industry professionals.
- Majority of our first hackathons and no one does frontend but we still managed to put out a great UI/UX.
What We Learned
- Defining a strong problem statement takes time and multiple iterations to find a niche worth pursuing.
- Starting with just an idea and being able to find as well as implement a solution.
- Real-world industries require domain research before building technical solutions.
- AI-assisted development is powerful but requires tool selection and adaptation when outputs are unreliable.
What’s Next
- Add feature to edit directly inside the file view for better workflow.
- Add AI agent to find discrepancies across files in case there are details that are off to save additional time and prevent potential red flags getting through.
- Further refine risk detection and anomaly identification models
Tech Stack
Backend
- FastAPI - API server
- Uvicorn - ASGI runner
- SQLAlchemy 2 - ORM
- Alembic - migrations
- Pydantic v2 - types/validation
- pydantic-settings - config/env
- sse-starlette - SSE events
- pytesseract - OCR
- Pillow - image handling
- pypdf - PDF parsing
- boto3 - object storage (S3)
- psycopg3 - Postgres driver
- SQLite - local dev DB
Frontend
- Next.js 15 - web app framework
- React 19 - UI
- TypeScript - typing
- Tailwind CSS - styling
- lucide-react - icons
- clsx - classnames
- react-pdf - PDF viewer
- pdfjs-dist - PDF rendering engine
Testing
- Playwright - e2e tests
Built With
- codex
- gemini
- javascript
- lacountydatabases
- python
- react
- sqlite
Log in or sign up for Devpost to join the conversation.