About the dataset
What this is
Drupal Code Query is a public, daily-refreshed static analysis of the entire
Drupal contrib ecosystem: 12,361 modules, 506 themes, 135
distributions, plus Drupal core itself. The whole catalog is
exposed as one HTTP-attachable DuckDB file:
api.duckdb.
Released under
CC-BY-SA 4.0.
Schema and conventions
Every version-keyed column carries a
_seq = major*1000 + minor integer for lexically-safe
ordering — the invariants page
explains why. The catalog ships 25 views (every
public parquet plus contrib_branch_dev and
symbol_facts) and three macros —
seq(major, minor), _seq(v), and
adoption_state(cr_nid, branch_id) — bound at ATTACH
time. The
schema diagram renders the
base views grouped by domain with their logical join edges.
Connect from your own tools
The file is plain HTTP — no auth, no rate limit, range requests honoured. Any DuckDB client can ATTACH it in place; the embedded engine handles range-fetching internally so you query the catalog without downloading it.
-- DuckDB CLI
ATTACH 'https://api.tresbien.tech/data/latest/api.duckdb' AS api (READ_ONLY);
SELECT change_to, COUNT(*) AS records
FROM api.change_record
GROUP BY change_to ORDER BY change_to;
# Python — duckdb
import duckdb
con = duckdb.connect()
con.execute("ATTACH 'https://api.tresbien.tech/data/latest/api.duckdb' AS api (READ_ONLY)")
df = con.execute("SELECT * FROM api.change_record").df()