Flintstack › Data files
Data
Four static files and a feed carry the structured parts of this site. Here are their shapes.
Four files under /api and one feed carry the structured parts of this site. They
are plain static files served as-is, so you can read them from a script without scraping HTML.
Each has a schema string and an updated date; the shapes are below.
releases.json
The full release history, newest first - the same data that renders the changelog and every per-version page.
GET /api/releases.json
{
"schema": "flintstack.releases/1",
"current": "0.11.3",
"store_format_breaks": ["0.7.0"],
"releases": [
{ "version": "0.11.3", "date": "2026-09-28", "kind": "fix",
"store_format_change": false, "url": "/release-0-11-3.html",
"changes": [ "Fixed a race where two wrappers…" ] }
]
}
kind is one of feature, fix or breaking;
store_format_change is the field to branch on before an upgrade.
benchmarks.json
Every corpus shown on the benchmark page, with its scenarios. The switcher on that page reads exactly this file.
GET /api/benchmarks.json
{
"datasets": [
{ "id": "cpp-2310", "label": "C/C++ · 2310 targets", "targets": 2310,
"scenarios": [
{ "name": "warm", "store": "full, nothing touched",
"median": 69, "p95": 74, "speedup": 10.3, "hit": 94.1 }
] }
]
}
Times are seconds, speedup is relative to the cold run of the same corpus, and
hit is a percentage.
search-index.json
A flat list of every page with a short searchable text blob. The search page fetches it once and filters in the browser - there is no search server.
GET /api/search-index.json
{ "docs": [ { "url": "/cli.html", "title": "CLI reference",
"kind": "page", "text": "flint flintd commands flags wrap stats…" } ] }
feed.xml
An Atom feed of releases: title, date, category (the kind) and a summary per
version, newest first. Point a reader at /feed.xml to hear about a new
release without polling the changelog.
Stability
The schema string is versioned. A breaking change to any file bumps the number
after the slash, and the old shape stays reachable long enough to migrate. Fields are added, not
renamed; if a field you read disappears, it moved to a new schema version and the changelog says so.
Last updated: 2026-09-29