Meerkat Privacy is a collaborative project aimed at making website privacy policies understandable for everyday users. As Web Developer, I focused on three areas: integrating the OpenAI (ChatGPT) API with our crawling pipeline, building the marketing/onboarding website, and designing the end-to-end UX flow (including a preference panel and risk-scoring UI). The result is a practical browser extension that surfaces plain-language takeaways right inside the browsing experience.
Key Feature
Analysis
Dashboard
Options
Problem / Challenge
Privacy policies are long, legalistic, and time-consuming to read.
Users lack quick, trustworthy summaries about data collection, sharing, and risks.
Insights should appear in context (in the browser), not on a separate, hard-to-find page.
Goals & Approach
Goals
Deliver concise, readable summaries of policies.
Provide risk visibility (e.g., data sharing, tracking, retention).
Offer a simple onboarding so users know how/when summaries appear.
Approach
Use web crawlers to fetch relevant policy sections (collection, usage, third-party sharing).
Send content to OpenAI’s API with structured prompts to produce sectioned, scannable summaries.
Present results in a browser extension popup with a preference panel and risk scoring.
Support the experience with a website for feature overview and onboarding.
Team & My Role
Collaboration: Worked in a cross-functional team (engineers + design).
My Role: Full-Stack Developer / UX Contributor
API Integration: Implemented the ChatGPT API flow and wired it to our crawlers; handled chunking, retry, and error states.
Frontend Website: Built the project website to showcase features and provide user onboarding.
UX Design: Designed the end-to-end UX flow, including preference panel (controls for depth/sections) and a scoring system that surfaces risk at a glance.
Development Process
Tech Stack
Chrome Extension APIs
Web Crawlers / scraping pipeline
OpenAI (ChatGPT) API
Key Implementation Details (my contributions)
Policy ingestion: Normalized and chunked long documents before LLM calls to respect token limits and keep latency acceptable.
Structured prompting: Standardized outputs into labeled sections (Data Collected / Usage / Sharing / Retention / User Rights) to avoid vague summaries.
Risk model & UI: Defined a simple scoring rubric and mapped it to visual indicators; integrated a preference panel so users can tune detail level.
Website & onboarding: Built a responsive site explaining the extension’s value, install steps, and how summaries appear during browsing.
Key Features
In-browser summaries: One-click popup with plain-language insights.
Risk scoring: Clear visual signal for potential concerns.