OmNomCrawler
A modular TypeScript framework for detecting and automating interactions with cookie consent modals (CMPs) using headless browsers, vendor-specific adapters, heuristics, and ML-based visual fallback.
5 commits over 2 days
What it is
OmNomCrawler is a headless-browser automation tool for detecting and interacting with cookie consent popups on arbitrary websites. It combines vendor-specific adapters for popular CMPs (OneTrust, Cookiebot, TrustArc, Usercentrics, Didomi, Quantcast, etc.), generic heuristics (overlay/keyword/ARIA detection), and a screenshot-based computer vision fallback. The framework supports automated consent actions (accept, reject, customize) and scenario-based compliance audits (Reject All, Accept All, Custom) across multiple pages, generating structured reports of cookie behavior for privacy compliance testing.
Why I built it
Built to automate privacy compliance testing and cookie consent workflows at scale. The modular design suggests it was created to handle the fragmentation of CMP implementations across the web—where dozens of vendors each require custom handling. The scenario-based audit system, cookie classification, and structured reporting indicate a focus on GDPR/CCPA compliance verification rather than one-off scraping.
Tech stack
TypeScript, Node.js, Playwright (Chromium/Firefox/WebKit), TensorFlow.js (for ML-based visual detection), Jest (unit tests), Playwright Test (integration), Winston/Pino (logging). Designed with anti-detection fingerprinting tuning for headless browser reliability.
Timeline & effort
Last active May 12, 2025 — 5 commits across 2 active days (spanning 3 days).
Developed over 3 calendar days (May 9–12, 2025) with 5 commits across 2 active days. Despite the short timeline, the codebase is comprehensive: complete adapter implementations for 6+ CMP vendors, heuristic detection modules, ML fallback logic, action executor, pipeline orchestration, audit workflows, and extensive test coverage. The concentrated effort and thorough documentation suggest rapid, focused development—possibly a sprint to build a working MVP or proof-of-concept.
Did it turn out useful?
The framework is feature-complete and well-architected with production-ready concerns (logging, extensibility, testing, compliance reporting), but the 3-day development window, private visibility, zero stars, and TODO list indicate it hasn't been deployed or used in production. The ADDITIONAL_STEPS doc calls for CI setup, end-to-end tests on real-world sites, and user feedback—all pre-launch tasks. This is a sophisticated, promising prototype awaiting real-world validation.