Inspiration

Scams in Pakistan (fake prize draws, fake JazzCash and Easypaisa messages, fake job offers) target parents and elders in the language they speak, and most detectors only work in English. Victims decide alone, under pressure. We wanted a tool that explains the scam in their language and lets them ask someone they trust.

What it does

ChaunkUp checks a pasted message or a screenshot and returns a verdict (Scam, Suspicious or Looks Safe) with a confidence score. It highlights the red flag phrases in the original text and explains why in English, Urdu and Roman Urdu. With one tap, "Alert my Circle" opens a WhatsApp or email link with the warning ready for a trusted family member. Nothing is ever sent automatically.

How we built it

We built it on DevMarketplace in six small modules: text analysis, languages and highlights, screenshot input, the Circle and alerts, history and polish, and hardening. We used Next.js, TypeScript and React, a PostgreSQL database, and the Gemini API for analysis. A SPEC.md, an AGENTS.md and a scam-analysis skill file guided the AI agent, so we could use few tokens.

Challenges we ran into

  • The hosting layer dropped our privacy cookie, so we switched to an anonymous per-browser ID sent with every request.
  • Gemini model names were retired while we built, which gave us 404 errors until we found the current model.
  • Making the AI return strict, validated structured output, with a safe fallback when it doesn't.

Accomplishments that we're proud of

  • Urdu script, Roman Urdu and English all work in one flow.
  • In a manual check, 10 of 10 test messages got the right verdict, from a 30-message test set included in the repo.
  • Contacts and history are private per browser, and the app handles bad input, unreadable images and AI failures without crashing.

What we learned

Small modules with clear plans, short prompts and tested steps keep AI-assisted development fast and cheap.

What's next for ChaunkUp

A WhatsApp bot so users can forward a message and get the verdict in chat, voice-note analysis, a shared scam-trends board, and more local languages (Sindhi, Pashto, Punjabi and Balochi).

Limitations

Data is private per browser with no accounts, so clearing browser data starts fresh. Gemini free-tier limits can slow repeated checks. Highlights depend on the AI returning matching phrases.

Built With

Share this project:

Updates

Submission history