Akashic
1892–2024
akashic / data

Data.

Akashic publishes 21,930 static geography records across 13 families, each backed by a stable JSON file at a stable URL. They are free to read without an API key, permissively licensed (CC BY 4.0), deterministically regenerated, hashed, and traceable to first-source releases.

Endpoints

One file per geography. The geo_id segment is the same identifier used in the URL of that geography’s human-readable page on this site (the county FIPS, the state postal abbreviation, the CBSA code, etc.) so any link can be translated by hand.

URL patternGeographyCountExample
/data/per_nation/{id}.jsonThe United States national rollup.1/data/per_nation/us.json
United States
/data/per_region/{slug}.jsonThe four Census regions.4/data/per_region/midwest.json
Midwest
/data/per_division/{slug}.jsonThe nine Census divisions.9/data/per_division/middle-atlantic.json
Middle Atlantic
/data/per_state/{abbr}.jsonThe 50 states plus the District of Columbia.51/data/per_state/IL.json
Illinois
/data/per_county/{fips}.jsonUS counties and county equivalents, including the Connecticut planning regions used for current ACS reporting.3,143/data/per_county/10003.json
New Castle County, Delaware
/data/per_cbsa/{code}.jsonCensus metropolitan and micropolitan statistical areas.918/data/per_cbsa/16980.json
Chicago–Naperville–Elgin metro area
/data/per_csa/{code}.jsonCombined statistical areas.180/data/per_csa/176.json
Chicago–Naperville combined statistical area
/data/per_city/{geoid}.jsonPublished incorporated places and census-designated places in the static atlas.10,192/data/per_city/0455000.json
Phoenix, Arizona
/data/per_dma/{id}.jsonNielsen Designated Market Areas (television markets).208/data/per_dma/602.json
Chicago DMA
/data/per_cd/{geoid}.jsonCongressional districts for the current published district vintage.435/data/per_cd/1701.json
Illinois 1st Congressional District
/data/per_sld_upper/{geoid}.jsonState legislative upper-chamber districts.1,942/data/per_sld_upper/17001.json
Illinois Senate District 1
/data/per_sld_lower/{geoid}.jsonState legislative lower-chamber districts.4,833/data/per_sld_lower/17001.json
Illinois House District 1
/data/per_amnat/{slug}.jsonAkashic’s American Nations cultural-region rollups.14/data/per_amnat/deep-south.json
Deep South

The catalog is checked against the shipped /data/_index.json at test time: adding or removing a published family without updating this page fails CI.

On-demand (Worker-served)

The static set above covers every geography family currently published in/data/per_*. A separate long tail of roughly 31,600 US Census places (including incorporated places, CDPs, and towns) is rendered on demand at https://akashic.app/place/{geo_id} and cached at the edge. Request Accept: application/json for the machine-readable response; otherwise the endpoint returns the human-readable place page. User-created custom Places use their own authenticated and share APIs.

Schema

One JSON file per geography. All published geography families share a common envelope (geo_type, name, parent geography fields, elections, demographics,similar_* rows, narrative, source citations); tier-specific fields layer in on top (a county has seat and hero_image; a CBSA has constituent_counties; a CD has representative and allocation_factor).

The canonical TypeScript shape lives at lib/types.ts in the repo; the runtime guarantee is the Zod schema in the same file. A representative sample, from /data/per_county/10003.json (New Castle County, Delaware), trimmed for length:

{
  "fips": "10003",
  "geo_type": "county",
  "name": "New Castle County",
  "state": "Delaware",
  "state_abbr": "DE",
  "region": "the Mid-Atlantic",
  "wikipedia_title": "New_Castle_County,_Delaware",

  "geography": {
    "area_sq_mi": 426.3,
    "centroid": { "lat": 39.578, "lng": -75.639 }
  },

  "elections": [
    { "year": 1892, "dem": null, "rep": null, "other": null,
      "total": null, "margin": null, "winner": "N" },
    { "year": 1908, "dem": 12964, "rep": 14979, "other": 701,
      "total": 28644, "margin": -0.0703, "winner": "R" },
    { "year": 2024, "dem": 180568, "rep": 90768, "other": 3824,
      "total": 275160, "margin": 0.3264, "winner": "D" }
  ],

  "similar_counties": [
    { "fips": "26065", "name": "Ingham County", "state": "Michigan",
      "state_abbr": "MI", "similarity": 1.0 }
  ],

  "demographics": {
    "totalPopulation": 577961,
    "medianHouseholdIncome": 84800,
    "races": [ ... ],
    "age": [ ... ],
    "education": { ... }
  },

  "sources": {
    "elections_through": 2024,
    "acs_release": "2024 5-year",
    "religion_census": "2020"
  }
}

Field reference

geo_type
One of the 13 published geography keys listed above. The Worker-served long tail uses place.
elections[*].margin
D-vs-R partisan margin: (dem − rep) / total. A decimal in [−1.0, +1.0], positive for Democratic, negative for Republican. Drives the sparkline, similarity vectors, and narrative prose.
elections[*].winner
True plurality winner among D / R / O. Differs from margin in strong third-party years: 1892 Populist counties, 1912 Bull Moose, 1924 La Follette, 1948 Dixiecrat, 1968 Wallace.
similar_counties[*].similarity
The twin score as a decimal in [0, 1] — a weighted cosine between tier-standardized fingerprints (2000–2024 presidential trajectory with 12-yr trend and elasticity, ACS demographics, top ancestry shares, religious adherence; methodology on /twins). Engine-era entries also carry optional contributions (the closest-shared dimensions, each with its σ gap dz) and differsOn (the largest gap ≥1σ); older payloads baked before the engine hold a margins-only cosine of the last 10 cycles with neither field.
sources
As-of dates for each upstream feed. elections_through is the most recent presidential cycle included; acs_release is the 5-year ACS vintage; religion_census is the Association of Statisticians of American Religious Bodies release.

Bulk archives

Per-place JSON is convenient for one-off lookups; for analysis at scale, use the bulk archives. Each archive is a single gzipped file, deterministically built from the same source, with a version-stamped filename so a citation never points at a moving target.

Each release builds via npm run data:csv. The version segment is v{year}.{month}; older versions stay available indefinitely.

License + citation

Akashic’s original content (the narrative prose, the headline templates, the similarity vectors) is licensed CC BY 4.0. Upstream sources keep their own licenses, listed in ATTRIBUTION.txt.

Every place page renders a Cite this page widget in APA / MLA / Chicago / BibTeX. For dataset citations:

Akashic (2026). akashic-elections-2024 [Data set].
  https://akashic.app/data/exports/v2026.05/
    akashic-elections-2024.csv.gz

Stability + freshness

Conventions

See also

Consuming these files programmatically? The API & developers page documents the JSON endpoints and retrieval conventions. Publishing with this data? The creator kit has ready-made angles and citation formats, and the embed widgets put a live figure in your page.