Inspiration

Scams do not only exploit technology — they exploit uncertainty.

When someone receives a suspicious message, call, payment request or investment offer, the most important moment is often the few seconds before they respond. Yet scam guidance is frequently fragmented across websites, hotlines and specialist services. It can also be difficult to understand quickly, especially for older adults, caregivers, less tech-confident users and multilingual households.

We imagined a simpler first step: one friendly, accessible place where anyone can pause, check, discuss and decide before money or personal information is lost.

That is ScamNoMore.

Our ambition is to build a national anti-scam front door for Singapore: practical, multilingual and designed for real people rather than cybersecurity experts.

Who we designed for

Imagine Mr Tan, a 67-year-old retiree who receives a message claiming that his bank account is in danger. He is unsure whether the message is genuine, does not want to feel embarrassed asking for help, and prefers speaking rather than typing.

ScamNoMore is designed for people like Mr Tan, as well as:

  • Older adults and seniors
  • Busy caregivers and families
  • Users who prefer voice interaction
  • People who communicate in English, Simplified Chinese, Bahasa Melayu or Tamil
  • Anyone who wants a second opinion before replying, paying or clicking

The experience is deliberately calm, clear and non-judgmental: no technical jargon, no shame and no pressure to act immediately.

What we built

ScamNoMore combines four actions in one app:

  1. Check — Upload or describe a suspicious image, audio clip, video or message for an AI-assisted assessment.
  2. Understand — Ask Hans, the ScamNoMore assistant, questions about scam patterns and safer next steps.
  3. Discuss — Browse scam categories and anonymous community rooms to learn from shared experiences.
  4. Act — Submit an incident record and receive practical guidance on what to do next.

The app includes:

  • Image, audio, video and text analysis
  • Speech transcription for audio and voice descriptions
  • A privacy-before-upload consent step before media is sent for analysis
  • Voice-first navigation and hands-free commands
  • Browser microphone voice commands for the web demo
  • Optional native speech recognition in a custom development build
  • English, Simplified Chinese, Bahasa Melayu and Tamil support
  • Scam-category search and safety guidance
  • Anonymous community discussions
  • Scam incident submission
  • Chatbot guidance from Hans

Instead of presenting an unexplained score, ScamNoMore gives users a clear explanation, warning signs and recommended next steps. When the system cannot make a meaningful assessment, it says so rather than pretending that the content is safe.

How it works

A user can type or speak a description, or select an image, audio file or video. Before media or a transcript is uploaded, ScamNoMore displays a privacy consent screen reminding users not to share OTPs, passwords, NRIC numbers or full card details.

After consent, the app sends the request to the ScamNoMore backend over HTTPS. The backend handles the AI request and returns an assessment to the app. API keys remain on the backend rather than being bundled into the mobile client.

Users can then ask Hans follow-up questions, browse relevant scam guidance, discuss the situation in a community room or submit an unverified incident record.

How we built it

The mobile and web interface uses Expo, React Native, TypeScript and React Navigation. React Native Web allows the same product experience to run in a laptop browser.

The app uses Expo modules for image and video selection, document selection, audio recording, speech output and optional speech recognition. The web demo provides browser-based microphone voice commands. Native hands-free recognition is designed for a custom development build because Expo Go cannot load custom native speech-recognition modules.

The backend uses Node.js, TypeScript and Express. OpenAI vision, text and Whisper capabilities are accessed through the backend. SQLite, using better-sqlite3, stores submitted reports and anonymous community messages. The backend can run locally or as a Render web service with persistent storage.

Static scam guidance is bundled for English, Simplified Chinese, Bahasa Melayu and Tamil. This keeps core safety information available without making a translation API request every time a user changes language.

Challenges we faced

The hardest part was not simply connecting an AI model. It was making the experience reliable and safe around the model.

We had to:

  • Keep native voice features separate from the Expo Go demo
  • Prevent stale speech callbacks and timers from affecting a new voice session
  • Preserve voice interaction when users switch languages or open privacy dialogs
  • Make upload actions work from voice commands as well as buttons
  • Handle large audio and video files within practical limits
  • Ensure an inconclusive AI result is not presented as a safe result
  • Keep community and report data understandable without implying that it has been verified by an authority
  • Protect the backend API key and add public-demo usage limits

What we learned

We learned that accessibility is more than adding a microphone button. Users need predictable feedback, clear recovery when recognition fails and a way to complete important actions without navigating through multiple screens.

We also learned that trust depends on transparency. ScamNoMore clearly separates:

  • AI estimates from verified facts
  • Demo dataset records from official national statistics
  • User-submitted reports from authority-confirmed incidents
  • A refresh-based community board from a real-time moderated chat service

These limitations are intentional. ScamNoMore is an awareness and decision-support tool, not a fraud-reporting authority or a guarantee that content is safe.

Impact and future direction

ScamNoMore is designed to reduce hesitation at the exact moment when a person is most vulnerable to a scam.

Our next steps are:

  • Release signed iOS and Android development builds with native speech recognition
  • Improve multilingual speech accuracy and accessibility
  • Add stronger source attribution and verified public guidance
  • Introduce moderation and abuse-reporting controls for community content
  • Move from demo SQLite storage to a production-grade data architecture
  • Work toward a scalable national anti-scam platform that brings checking, education, community reporting and action guidance together

The goal is simple: help people pause before they pay, verify before they trust and act before the damage is done.

Evidence and context

ScamNoMore was informed by Singapore’s official scam and cybercrime reporting:

Important demo note

The bundled 5,000-case search dataset is mock data created for this project. User-submitted reports are unverified. AI outputs are estimates and should not replace advice from a bank, platform, the Singapore Police Force or ScamShield.

Built With

Share this project:

Updates

Submission history