doxa-maps/data
Doxa Maps 37edf77895 Two border peoples had no province, and my note blamed the wrong thing
The table said Jing and Pana were "outside the twelve-province subset". Both provinces
are IN that file — Guangxi and Yunnan. Measured: Jing sits 8.7 km outside Guangxi's
outline and Pana 5.4 km outside Yunnan's. They are across the border, which is a fact
about one coordinate standing for a whole people, not about a missing province. I shipped
that wrong explanation twice, in the meta and in a commit message.

Sourcing China's COMPLETE 34-unit ADM1 from geoBoundaries changes neither distance by a
metre — same source geometry, 22 more provinces, none of them theirs. So better data is
not the answer here, the downloaded file is deleted rather than staged for nothing, and
the finding is written down so nobody repeats the experiment.

A point within 15 km of exactly ONE province now joins it, carries near_border_km on its
row, and is counted in meta as placed by nearest province. Two provinces inside the
tolerance leave it unassigned: a near-miss is a hint, and a hint between two answers is
not one. 1,007 assigned becomes 1,009 and unassigned 2 becomes 0 — with the two
exceptions visible per row rather than dissolved into the total, because gospel-internet
reads this file and should be able to tell a point inside a province from one 9 km out.
2026-09-27 04:23:09 +00:00
..
boundaries Web-sized boundary copies: every feature and island kept, a fifth of the bytes 2026-09-27 03:25:59 +00:00
brand public/ is one folder: the output tree plus a README, with the Plugin Studio as its front page 2026-09-25 17:41:56 +00:00
external-bundles Data out of public/: sources live in data/, the web-root is generated 2026-09-16 01:24:41 +00:00
fonts public/ is one folder: the output tree plus a README, with the Plugin Studio as its front page 2026-09-25 17:41:56 +00:00
images public/ is one folder: the output tree plus a README, with the Plugin Studio as its front page 2026-09-25 17:41:56 +00:00
internet India by state: all 36 states, Mizoram and Nagaland included 2026-09-26 08:13:34 +00:00
legacy/upg-neighbor public/ is one folder: the output tree plus a README, with the Plugin Studio as its front page 2026-09-25 17:41:56 +00:00
people-groups The people-group list is a universal prop: the same maps can show any project's list 2026-09-26 05:16:02 +00:00
posters The poster print preview rasterises too, and a deployment can ship sources without rasters 2026-09-24 08:07:22 +00:00
pplr PPLR data maps (WIP): move the ten PPLR research views into plugin-designs 2026-09-25 06:33:49 +00:00
tables Two border peoples had no province, and my note blamed the wrong thing 2026-09-27 04:23:09 +00:00
vendor Vendor Vue for the gallery shell, so the self-hosted rung finally exists 2026-09-22 04:59:30 +00:00
README.md public/ is one folder: the output tree plus a README, with the Plugin Studio as its front page 2026-09-25 17:41:56 +00:00

data/ — the bundler's source-of-truth data

The law: data lives here; public/ is generated. public/ holds only the output folder (public/<tree>/, named by name in vite.doxa-maps-build-config.json) and a generated README. The build (internal/generate-tree.mjs) copies what the plugins FETCH at runtime from here into <tree>/assets/, alongside the per-profile data in plugin-designs/*/data/. You should be able to rm -rf public/ and get it all back with bun run build.

Folder Served at What it is
people-groups/ <tree>/assets/people-groups/ (the fetched cuts only) People-group datasets (CSV/JSON) the maps read at runtime
vendor/ <tree>/assets/vendor/ Third-party runtime assets (e.g. table libraries)
posters/ <tree>/assets/posters/ (opt-in: bundlePosters / posterSources) Rendered poster set (heavy pipeline output; the export button fetches these)
tables/ <tree>/assets/tables/ The MERGED served table set (its index.json is the merge; per-profile plugin-designs/*/data/tables are build-time sources)
pplr/ <tree>/assets/pplr/ (the fetched files only) The PPLR data maps' derived datasets
fonts/ <tree>/assets/fonts/ Vendored typefaces (SIL OFL), e.g. Bebas Neue for the regions clone
images/ <tree>/assets/images/ Images the plugins fetch (e.g. the regions list's world-map watermark; see its PROVENANCE)
brand/ not served Logos and brand imagery (sources; the optional library/layouts/app-wrapper-material shell references them)
legacy/ not served Archived standalone builds kept for reference (e.g. the original upg-neighbor page)
external-bundles/ not served Prebuilt map IIFEs vendored from sibling projects (not built here); only the optional layouts/ shell mounted them

fonts/, images/, brand/ and legacy/ moved here from public/assets/ on 2026-09-25 (card BUILD-OUTPUT-IS-ONE-FOLDER): they were sources that existed only in the generated folder.

Don't edit anything under public/ by hand — change it here (or in plugin-designs/*/data/, layouts/*/assets/) and rebuild.