public/ was confusing because three source-of-truth folders lived ONLY inside it. They now live in data/ (people-groups, vendor, external-bundles) and the build copies them into the served tree (same pattern as boundaries), so served paths are unchanged and public/ is fully regenerable. data/README.md states the law. |
||
|---|---|---|
| .. | ||
| external-bundles | ||
| people-groups | ||
| vendor/tabulator | ||
| README.md | ||
data/ — the bundler's source-of-truth data
The law: data lives here; public/ is generated. Every folder in data/ is copied into the
served web-root by the build (internal/generate-tree.mjs), exactly like the per-profile data in
app-profiles/*/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/ |
/assets/people-groups/ |
People-group datasets (CSV/JSON) the maps read at runtime |
vendor/ |
/assets/vendor/ |
Third-party runtime assets (e.g. table libraries) |
external-bundles/ |
/external/ |
Prebuilt map IIFEs vendored from sibling projects (not built here) |
Don't edit anything under public/ by hand — change it here (or in app-profiles/*/data/,
layouts/*/assets/) and rebuild.