This is a submission for the Hacktoberfest Weekend Challenge: Build for a Friend
What I Built
My friend's grandfather retired a few years ago and now spends a lot of time on his phone and the family desktop. Recently, he received a terrifying SMS claiming his bank account would be blocked by evening unless he clicked a link to complete his KYC. He almost called the number. His family keeps telling him not to click suspicious links, but he is genuinely scared of ignoring a real bank message. He also rightly refuses to paste his messages into random internet chatbots because they contain real bank account numbers and OTPs.
To solve this, I built "Thik Achhe?" (which translates to "Is this okay?"). It is a simple web page that can be installed on his phone or desktop. He just pastes the message, taps one massive button, and gets a clear Red, Yellow, or Green answer in his native language (it supports English, Hindi, Bengali, and Nepali). It gives him one simple line on why it was flagged, and one line on what he should do next.
Demo
You can try it live here: https://thik-achhe.devloper.xyz/
Watch a quick demo of how it works: https://youtube.com/shorts/0lnH-yV-_rI
Code
You can find the full source code in my GitHub repository here: https://github.com/ShahbazCoder1/Thik-Achhe
How I Built It
I built the application using Next.js (App Router), Tailwind CSS, and TypeScript.
The core of the project relies on the open-weight gemma-4-E2B-it-web.litertlm model. Instead of hosting the model on a server, I integrated Google's @mediapipe/tasks-genai library to run the LLM inference entirely inside the client's browser.
The application uses a two-step verification process:
- A hardcoded TypeScript rules engine instantly checks the text for known scam patterns like URL shorteners, panic keywords ("blocked within 24 hours"), or explicit asks for an OTP.
- The message is then passed to the local Gemma model with a strict prompt demanding a structured JSON response in the user's selected language.
If the rules engine finds a hard red flag, it permanently locks the verdict to "Red" to ensure the AI can never accidentally hallucinate and mark a dangerous message as safe.
Why Does Open Innovation Matter?
Open innovation was absolutely critical for this project. If I had to rely on a closed API, I would be taking a retired senior citizen's most sensitive text messages (containing real one time passwords and bank digits) and beaming them to a third-party server.
By utilizing open-weight models like Gemma and client-side inference tools like MediaPipe, his messages never leave his physical device. It is incredibly fast, perfectly secure, and costs absolutely nothing to host or maintain. A closed system would have made this project either a massive privacy violation or financially unsustainable.
Prize Categories
- Best Use of Gemma
Top comments (0)