System overview
This page explains ContentsVision in plain language. No code required. If you only read one architecture page, read this one.
The problem it solves
When a home or business suffers a loss (fire, flood, tornado, theft), an insurance claim needs a contents inventory: a line-by-line list of the damaged personal property, with each item's condition, age, brand, quantity, and a photo. Building that list by hand from a walkthrough is slow and tedious.
ContentsVision automates the first 80% of that work. A field specialist records the property once. The AI produces a draft inventory. A human reviews it and sends it to the claim.
The three ways to capture a property
ContentsVision accepts three kinds of input, and each has its own tuned pipeline:
Walkthrough video
A narrated walk through a room. The narration drives accuracy, the frames provide the visual record. Best for whole rooms.
Photo batches
Individual photos of items. The user groups photos of the same item before the AI runs, so duplicates are not guessed.
Voice memo
A spoken list of items (a voice memo or call recording). Transcribed, then read for items. No photos.
The big picture
ContentsVision is a classic two-tier web app (a Next.js frontend and a FastAPI backend) plus an AI processing pipeline that calls external AI services. It is deployed as a small set of Docker containers behind a reverse proxy and a Cloudflare Tunnel.
What each piece does:
| Piece | Role |
|---|---|
| Next.js frontend | The whole user interface: dashboard, claim and room pages, upload, review, settings, help. Talks to the backend over REST and Server-Sent Events. |
| FastAPI backend | The API, the AI pipeline orchestration, billing, auth, and the Adjust Square integration. |
| SQLite database | All structured data: claims, rooms, jobs, items, teams, users, activity. One file on disk. |
| Disk storage | Uploaded videos and photos, extracted frames, cropped item photos, and per-job logs. |
| Deepgram Nova-2 | Speech to text for video narration and audio uploads. |
| OpenRouter (Claude) | The vision and analysis model that actually identifies items. |
| Adjust Square API | Where finished claims and items are submitted. |
| AdjustSquare SSO | The single sign-on provider that issues the login tokens. |
| PostHog | Optional product analytics: page views, session replay, and server-side events. Off unless a key is configured. See analytics. |
How a piece of media becomes inventory
Every upload becomes a job, and every job runs the same shaped pipeline (the exact stages differ by media type, covered in detail in the AI pipeline):
The analyze stage is the expensive one. It runs many AI calls in parallel, and the user watches live progress stream into the UI while it works.
What makes it accurate
ContentsVision is not just "send frames to an AI." A few deliberate design choices drive the quality:
- Narration is the source of truth for naming. If the specialist says "Samsung French-door refrigerator," that wins over what the camera alone can infer.
- Time-chunking with overlap-aware dedup. Long videos are split into short time chunks analyzed in parallel, then near-boundary duplicates are merged so a couch seen by two chunks is not listed twice.
- Photo grouping before AI. For photos, the user groups shots of the same item first, so the AI is told "these are one item" instead of guessing.
- Human in the loop. Nothing is final until a person reviews and approves it. Low-confidence items are flagged automatically.
- Contents-only. The AI is instructed to exclude structural parts of the building (walls, floors, built-in plumbing) and include movable property, cabinets, and appliances.
Who uses it, and how teams are isolated
Users sign in through AdjustSquare SSO. Every user belongs to a team, and all data (claims, rooms, items, spend) is scoped to that team. A user from one team can never see another team's claims. See authentication for the full flow.
Where to go next
- Learn the vocabulary on the concepts page.
- Walk the product end to end in the user journey.
- Go deep on the build in the architecture overview.