Inspiration

Information overload and rising online scams make it hard for everyday readers to separate facts from fiction and spot phishing before it’s too late. We wanted a tool that lives where people browse and delivers instant, trustworthy feedback without disrupting their experience.


What it does

KnowIt is a Chrome extension backed by an AI service. On any article page, one click returns a reliability score, key warning signs, and links to more credible sources. In Gmail, the extension scans the open message and flags phishing risk with a color-coded badge and a concise explanation.


How we built it

  • Frontend: Manifest V3 extension written in vanilla JS/CSS. Content scripts data extraction article text or email HTML and display results in a popup UI.
  • Backend: Flask service on Python 3.12 with two endpoints (/evaluate, /phishing). Uses newspaper3k for data extraction, caches requests, then calls OpenAI Chat Completion to rate reliability or phishing risk.
  • Glue: Fetch API connects the extension to the backend; Flask-CORS keeps things simple during local development.

Challenges we ran into

  1. Cleaning diverse article HTML into something LLM-friendly without hammering token limits.
  2. Crafting prompts that yield consistent JSON so the frontend can trust the schema.
  3. Handling Gmail’s heavily nested DOM and avoiding Google’s CSP blocks.

Accomplishments that we’re proud of

  • End-to-end demo: click a button, get an AI score in under two seconds.
  • Prompt engineering that keeps accuracy high while staying within free-tier token budgets.
  • A reusable cache layer that slashes repeat LLM calls by ≈60%.

What we learned

  • Small prompt tweaks can swing LLM output format drastically; unit tests for prompts save sanity.
  • Chrome’s Manifest V3 messaging pipeline is stricter than V2 — background/service-worker patterns matter.
  • Real-world reliability scoring needs transparency; users trust clear explanations over raw numbers.

What’s next for KnowIt

  • Edge & Firefox ports via WebExtension API.
  • Persisting the cache in Redis and adding rate-limits for production.
  • Community-driven false-positive reporting to refine our prompts over time.

Built With

+ 64 more
Share this project:

Updates