1st Place, MenaCraft Hackathon
Truth Engine, AI-Powered Media Verification

- Role
- Co-Architect, Distributed Systems & AI
- Timeline
- April 2026
- Duration
- Hackathon sprint
- Team
- Team: Sa7absisa
Overview
Truth Engine checks whether a piece of media can be trusted. It weighs three kinds of evidence, whether the file itself is authentic, whether it matches its claimed context, and whether the source is credible, then explains its verdict in plain language instead of just handing you a score. We built it at the MenaCraft Hackathon and won first place.
The problem
Deepfakes, out-of-context images, and sketchy sources flood the feed, and most tools check only one of those at a time. A journalist or fact-checker needs one place to drop in an image, a claim, and a link, and get back an explained, evidence-backed verdict, without shipping their material off to some opaque service.
What I built
- 01
Axis one, is the file real?
It reads the image's embedded metadata, runs deepfake detection, checks that metadata against the actual pixels, and looks for the fingerprints of AI-generated text.
- 02
Axis two, does it match its story?
A vision model describes the image, and that description is compared against the user's claim. When the two don't line up, it flags an image being passed off with a fabricated caption.
- 03
Axis three, is the source trustworthy?
It checks the domain's age, runs it through threat-intelligence and safe-browsing lookups, and rolls the signals into one credibility score.
- 04
One explained verdict, not a black box
A large language model reads all three axes and writes a plain-language report: the score, what it found, and why, so a non-expert can actually follow the reasoning.
- 05
A browser extension for everyday checks
Trust Shield puts a quick verdict on a page as you read it, calling the same engine directly for a fast answer.
- 06
Authorship and provenance, too
A separate service fingerprints writing style to catch a switched author, and another anchors a verified result to a blockchain record so it can be re-checked later.
Architecture
A web app and a Chrome extension send media to a NestJS gateway, which fans the work out to seven services: the three verification axes, the language model that writes the report, plus authorship and provenance. The extension can also call the fast verdict service directly for inline checks.
Tech stack
Next.js 15 + Spline 3D
App Router frontend, interactive Trust Sphere via @splinetool/react-spline, Recharts radar/axis charts, Zustand state, react-dropzone, Framer Motion
NestJS API Gateway (:8000)
Orchestrates parallel calls to all 7 downstream FastAPI services and aggregates the VerificationReport schema (trust score 0–100, risk level, per-axis scores)
Axis I, Content Authenticity (:8001)
C2PA/EXIF metadata extraction, HuggingFace Inference API deepfake detection, integrity clash auditor, ImBD stylometric AI-text analyzer
Axis II, Contextual Consistency (:8002)
Cloudflare Workers AI Llama 3.2 Vision 11B for VLM description + BGE embeddings for cosine similarity between description and user claim, detects fabricated captions
Axis III, Source Credibility (:8003)
WHOIS domain-age lookup, VirusTotal threat intelligence, Google Safe Browsing, composite credibility score with per-source breakdown
Llama 3.3 70B (Glass Box CoT)
Cloudflare Workers AI, generates plain-language chain-of-thought Glass Box report fusing all three axes into one explainable verdict
Trust Shield Chrome Extension
Injects real-time trust scores into any webpage via the TrustShield service (:8005), fast verdict without a full analysis round-trip
TruthStamp + AuthorDNA
TruthStamp (:8006) mints and verifies blockchain provenance stamps; AuthorDNA (:8006) builds stylometric author fingerprints to flag writing-sample inconsistencies
Results
1st Place
MenaCraft Hackathon, 1200 DT prize, hosted at Faculté des Sciences de Tunis
3 Verification Axes
Content Authenticity + Contextual Consistency + Source Credibility, evaluated independently then fused
8 Microservices
NestJS gateway + 7 FastAPI services: Authenticity, Context, OSINT, LLM, AuthorDNA, TrustShield, TruthStamp
100% Explainable
Llama 3.3 70B Glass Box CoT report surfaces every axis score and detected anomaly in plain language
< 30s Full Analysis
All three axes run in parallel, deepfake scan, VLM description, OSINT, and CoT report in one round-trip
Chrome Extension
Trust Shield extension delivers inline per-URL trust scores directly in the browser
Moments


What I took away
- 01
Running all three verification axes in parallel was the critical architectural decision, sequential analysis would have exceeded the 30-second demo time limit. NestJS's Promise.all orchestration kept the full pipeline under 30 seconds even with the Cloudflare Workers AI round-trips.
- 02
The Glass Box CoT report was the feature that won the hackathon. Judges could read *why* the verdict was CRITICAL, not just see a red score, that transparency is what separates a credible verification tool from a confidence meter.
- 03
Using Cloudflare Workers AI for all LLM/VLM calls (Llama 3.3 70B, Vision 11B, BGE embeddings) was the right call for a free-tier hackathon: zero cold starts, no GPU setup, and the free tier comfortably handled all demo traffic without a single rate-limit error.
- 04
The ImBD stylometric analyzer was an underrated Axis I feature, most deepfake detectors focus on images, but text-based AI detection (AI-generated articles, fake quotes) is equally important and almost no existing tool covers both in one pipeline.
- 05
Trust Shield as a Chrome Extension transformed the demo from 'upload a file' to 'browse any news site and get real-time trust scores', that live demo on actual misinformation pages was the moment the judges understood the product's value proposition.