01 — Case study · Software engineering · Consent management

Cookie Compliance & Consent Management Platform

A multi-tenant consent management and website compliance platform for configuring, deploying and enforcing consent controls while automating cookie discovery and compliance analysis.

Python · FastAPI · Playwright · SQLite · JavaScript · Docker

Illustrative representation based on the real system — not a production screenshot.

01Overview

A multi-tenant platform for configuring, deploying and enforcing website consent controls while automating cookie discovery and compliance analysis. It covers the operational lifecycle from authenticated browser crawling and consent configuration through deployment, enforcement, validation, reporting and controlled publishing.

02The Problem

Consent management platforms have been used for years to help organizations manage website consent and tracking compliance. The challenge was building a platform that fit the specific enterprise workflow we were solving. Cookie audits and consent validation still involved repetitive investigation, documentation and verification — opening pages by hand, inspecting storage and network activity, classifying trackers, re-checking consent behavior and manually coordinating consent changes. In the context of privacy requirements such as GDPR, this also required ongoing validation rather than a one-time audit.

03What I Built

Built an end-to-end consent management and website compliance platform tailored to the workflow, covering authenticated website crawling, cookie and tracker discovery, classification, compliance analysis, consent configuration, enforcement, reporting and controlled deployment. Designed as a reusable multi-tenant system with staging, approvals, versioning and publishing controls.

Site onboarding
Configure client sites and isolated tenant/site settings.
Crawl & discovery
Authenticated website crawling, cookie and tracker discovery, classification.
Consent configuration
Configure consent categories, preferences and banner behavior.
Consent enforcement
Pre-consent blocking, consent-aware scripts and withdrawal handling.
Analysis & reporting
Compliance analysis with structured, reviewable reporting.
Deployment & release
Deploy the consent experience through a lightweight site integration and manage staging, approvals, versioning and publishing.
Platform
Multi-tenant architecture with isolated site, scan and consent configurations.

04How It Works

  1. 01Website
  2. 02Crawl & Discover
  3. 03Configure Consent
  4. 04Enforce Consent
  5. 05Deploy
  6. 06Validate & Report

05Architecture

A lightweight site integration connects the client's website to the consent layer. A real browser handles discovery and validation, the API orchestrates configuration and analysis, and the application manages tenant, scan and consent data.

  • CMP snippet — lightweight website integration, no heavy SDK
  • Playwright — authenticated crawl, storage + network observation
  • FastAPI — configuration, classification, reporting APIs
  • SQLite — per-tenant sites, scans, consent versions

Deployment

Client siteLightweight CMP snippetPublished consent controls

Designed for straightforward website integration rather than a heavy client-side SDK.

06Impact

  • Website audits became a repeatable discovery and validation pipeline.
  • Consent configuration moved through staging → approval → versioned publish.
  • A reusable consent layer could be deployed across configured client sites.
  • Enforcement and validation were tied to actual browser behavior rather than UI configuration alone.

07Technology

Python · FastAPI · Playwright · SQLite · JavaScript · Docker

A real browser for discovery and validation, a typed API for orchestration, SQLite for tenant and scan data, JavaScript for the website integration layer, and containers for reproducible runs.

08Engineering Notes

  • Authenticated crawling has to behave like a real user — session handling and timing matter more than raw speed.
  • Pre-consent blocking only works when scripts are consent-aware by default, not patched afterward.
  • Deployment is only useful when the published configuration is versioned, reviewable and reproducible.