Abhinav◗
← All work

2026

FieldProof

Field photos in, verified and report-ready evidence out, for NGOs. Top 25 of ~400 teams at Code Cubicle 6.0

Built with
Next.jsTypeScriptCloudinaryPostgrespgvectorGemini
Live
Visit site →
Code
Repository →
FieldProof

An NGO restoring a riverbank takes thousands of photos over six months. They end up in phone galleries and chat groups: no site, no date anyone trusts, duplicates everywhere. Then a donor asks a simple question: what changed?

FieldProof answers it. Code Cubicle 2026, Problem Statement 02.

What it does

  • Organises. Site from GPS distance, phase (before, during, after) from the EXIF capture date. Nobody tags anything.
  • Verifies. Near-duplicates by perceptual hash, GPS and date sanity checks, phase-order conflicts. Doubtful photos are flagged and kept out of reports.
  • Compares. A before and after pair becomes a plain-language assessment. A vision model rates five fixed metrics and says honestly whether the two photos show the same spot.
  • Searches. "plastic waste along the river bank" finds the photos. Semantic and keyword search fused, with keyword fallback if the AI provider is down.
  • Reports. One click produces a donor-ready impact report. The narrative is written only from recorded facts, and every image traces back to its original.
Choosing a before and an after photo for a field location
Choosing a before and an after photo for a field location
From a field photo to a report, with every image traceable to its Cloudinary original
From a field photo to a report, with every image traceable to its Cloudinary original

The honest part

The hardest requirement was not the AI. It was making the AI refuse. A vision model will happily describe "improvement" between two photos of different places. The same-location verdict runs first, and a report never cites a pair that failed it.

Narrative, key numbers and evidence in one page
Narrative, key numbers and evidence in one page

Stack

Next.js 16, TypeScript strict, Cloudinary for the media pipeline and transformations, Postgres with pgvector for search, Gemini for captions and assessments. Deployed on Vercel.

Next: The Silent Co-Driver → Building something like it? Get in touch →