I turn fragmented public records into products people can query.

My main project, Transparency, normalizes platform reports behind a documented API and makes the data available through web, Android, and desktop interfaces. These are live products, not concept work.

Transparency

Live and open source

A research product for comparing how major platforms report content moderation, government requests, appeals, automated enforcement, and other regulatory data. It replaces disconnected filings and period-by-period reports with a single query model.

01 / Source

Normalize the records

Platform filings under the EU DSA and New York law, plus 15 years of Google government-removal data, are cleaned into comparable tables.

02 / Query

Serve a safe API

A FastAPI service exposes nine DSA report tables through structured queries and an asynchronous job model. It accepts no arbitrary SQL.

03 / Use

Meet researchers where they work

Web dashboards, a researcher portal, API documentation, and a Kotlin Multiplatform client provide different paths into the same live data.

One system, several ways in

Analysis

Cross-platform dashboards

Purpose-built views expose the questions hidden by the source material: comparison across DSA reports, trends in government removal requests, and a citable catalogue of New York terms-of-service filings.

Android + desktop

Native Transparency client

A Kotlin Multiplatform client brings the same API and query model to a mobile-first Material 3 interface localized in eight languages. The Android build is available now; the desktop client shares the same codebase.

How the data products were built

Focused utilities

Client-side AI

Gemini Image Generator

Generate images in the browser using your own Gemini API key. The key goes directly to Google and never reaches this site's servers.

Open tool

Browser utility

Markdown Live Viewer

Write, preview, and export Markdown in a focused split-pane editor that runs entirely in the browser.

Open tool
esc