Inspiration
The inspiration for BaitGuard came from watching the evolution of social engineering in Nigeria. As AI makes scams more convincing, traditional "don't click the link" advice is no longer enough. I realized that the problem isn't just malicious code—it is the psychological gap between the user and the attacker. I wanted to build a tool that doesn't just act as a shield, but as a teacher, turning every potential attack into a learning opportunity.
What it does
BaitGuard is a dual-purpose cybersecurity platform. It features an AI Threat Analyzer that uses Llama 3.3 to scan text and URLs for social engineering tactics, and a Visual OCR Scanner that "reads" screenshots of suspicious messages to find hidden threats. Beyond detection, it includes an Interactive Phishing Simulator where users hunt for red flags in realistic scenarios, and a Vulnerability Profiler that identifies which psychological tactics a user is most susceptible to. Finally, it demonstrates a future of shared safety via Decentralized Threat Logging.
How we built it
The project is built on the Next.js 14 App Router for a high-performance frontend. We integrated the Groq SDK to leverage Llama 3.3 70B, achieving sub-200ms inference times for real-time analysis. For the vision component, we used Tesseract.js to handle OCR directly in the browser, ensuring user privacy and speed. The "Cyber-Sleek" interface was crafted with Tailwind CSS and Framer Motion to provide a polished, gamified experience that feels like a modern security dashboard.
Challenges we ran into
One of the biggest challenges was engineering the AI to be a "paranoid expert." We had to fine-tune the system instructions to ensure Llama 3.3 could distinguish between a legitimate high-priority email and a malicious social engineering attempt. Another hurdle was handling OCR in-browser; optimizing Tesseract.js to provide a smooth progress bar while processing large images took significant refactoring of the state management logic.
Accomplishments that we're proud of
I am particularly proud of the Phishing Simulator. Creating an interactive environment where users can click on specific "hotspots" in a fake email required a careful balance of UI design and logic. Additionally, getting the entire analysis pipeline—from text extraction to AI scoring—to run almost instantaneously is a major technical win that makes the tool feel production-ready.
What we learned
Building BaitGuard taught me that security is as much about psychology as it is about code. I learned how attackers exploit human emotions like urgency and authority to bypass logical thinking. On the technical side, I deepened my understanding of multimodal AI applications, Next.js state persistence, and how to build a scalable "Cyber-Sleek" design system from scratch.
What's next for BaitGuard
The immediate goal is to transition BaitGuard from a web dashboard into a Cross-Platform Browser Extension. This would allow for active, real-time protection while users browse the web or check their mail. I also plan to replace the simulated Web3 logging with a live integration on a testnet like Base or Sepolia, creating a truly decentralized and immutable database of community-sourced threat intelligence.
Built With
- framer-motion
- groq
- llama
- lucide-react
- nextjs
- tailwind
- tesseract
- typescript
- web3
Log in or sign up for Devpost to join the conversation.