Inspiration

What it does

How we built it

Challenges we ran into

Accomplishments that we're proud of

What we learned

What's next for OfferProof

OfferProof — Don't Just Trust the Offer. Trace the Evidence.

Inspiration: The Problem We Wanted to Solve

Imagine receiving a job offer from a well-known company. The message looks professional, the position sounds promising, and the recruiter even provides a link to an official-looking careers page.

Everything seems legitimate.

But what if the job listing, the supporting website, and the original message all trace back to the same unverified sender?

That is the problem that inspired OfferProof.

Many job scam detection tools focus on suspicious keywords, payment requests, or unusual messages. While these warnings are useful, sophisticated impersonation attempts can look completely normal.

We wanted to investigate a deeper question:

What if the problem isn't just the message, but the evidence people use to trust it?

What We Built

OfferProof is an AI-assisted evidence investigation platform designed to help users examine suspicious job offers, understand the origins of supporting information, and make more informed decisions.

Instead of generating an unreliable scam probability, OfferProof focuses on transparency, source relationships, and evidence integrity.

The platform includes four connected experiences:

1. Overview — An Interactive Investigation Story

We designed the homepage as a cinematic, three-chapter experience:

  • The Approach: How a convincing job offer begins.
  • The Illusion: How apparently credible evidence creates trust.
  • The Reveal: How that evidence may lead back to the same unverified source.

Visitors can launch a fictional investigation directly from the story.

2. Inspect — AI-Assisted Claim Analysis

Users can paste a recruiting message or choose a sample scenario.

OfferProof identifies known warning patterns, including upfront payment requests and attempts to obtain sensitive information.

With explicit user consent, its AI integration can extract claims, identify possible concerns, and suggest questions for independent verification.

Importantly, the system never assumes that an offer is genuine simply because no warning signs were detected.

3. Evidence Lab — Our Core Innovation

This is where OfferProof goes beyond traditional message analysis.

Users record supporting observations and describe how each source was discovered.

Our Evidence Engine transforms those relationships into an interactive directed graph, tracing dependencies across multiple sources.

When seemingly independent evidence actually depends on the original untrusted message or another dependent source, the system identifies a condition we call:

Source Collapse.

For example, a careers page may appear to support a recruiter's claims. But if the user reached that page through the recruiter's own link, it does not provide independent confirmation of the recruiter's identity.

The Evidence Lab also supports AI-assisted comparisons between claims and observations, highlighting potential inconsistencies when AI is available.

Finally, users can export an investigation report containing their findings, source relationships, and unresolved verification questions.

4. Response Center — Turning Awareness into Action

Detecting suspicious activity is only part of the problem.

What if someone has already shared a password, transferred money, or submitted identity documents?

The Response Center provides practical recovery guidance based on the information the user selects.

How We Built It

We developed OfferProof using Python for the backend and HTML, CSS, and JavaScript for the frontend.

The AI integration supports Google Gemini and Groq through server-side API requests, with explicit user consent and a local-rules fallback.

Our Evidence Engine uses deterministic graph traversal to follow dependencies between observations, including evidence with multiple parent sources.

We built a custom SVG graph visualization to make those relationships understandable.

The application is deployed using Render, with source control and automated testing through GitHub and GitHub Actions.

We also used Playwright to test the user experience across desktop and mobile browsers.

Challenges We Faced

One of our biggest challenges was deciding what AI should and should not be allowed to conclude.

An AI-generated authenticity score might look impressive, but it could create dangerous false confidence.

We addressed this by restricting AI findings to source-grounded claims and tentative suggestions, while keeping the evidence-dependency analysis deterministic.

Another challenge was representing complex evidence relationships in a way that ordinary users could understand.

We solved this with an interactive graph that visually distinguishes dependent evidence from independently sourced observations reported by the user.

Finally, we transformed the application from a basic interface into a cinematic investigation experience while preserving functional workflows, responsive layouts, and accessibility considerations.

What We Learned

Building OfferProof taught us that trustworthy cybersecurity tools must communicate uncertainty, not hide it.

A source can look convincing without being independent. And even an independently discovered website does not automatically authenticate a recruiter.

We also learned how to combine AI-assisted text analysis, graph algorithms, secure API integration, responsive design, and automated testing into a working application.

What's Next?

Our next steps include improving source verification capabilities, conducting independent usability studies, expanding multilingual support, and evaluating the system against more challenging impersonation scenarios.

Our long-term vision is to make evidence-based verification more accessible to people facing suspicious digital interactions.

Our Mission

OfferProof does not claim to automatically determine whether a person or organization is trustworthy.

Instead, it helps users ask a better question:

Not just "Does this evidence look convincing?" but "Where did this evidence actually come from?"

Because convincing evidence isn't always independent evidence.

Built With

Share this project:

Updates

Submission history