Docs: MapLibre is the default on every map, and one setting switches back to Mapbox
- MOBILIZATION-MAPS-LAPTOP.md: every map on the site, DX Life's own home, pray, adopt and country maps included, uses MapLibre by default (the Driver's rule); NUXT_PUBLIC_MAP_PROVIDER=mapbox with NUXT_PUBLIC_MAPBOX_TOKEN switches back to Mapbox as doxa.life uses it today. The dropped-in tree is DX Maps development cff06fb8e. - DX-MAPS-GALLERY.md: the Map engine paragraph said a token alone selects Mapbox, which stopped being true when the provider setting came in; now it gives the real switch. It names what comes from other hosts (the engine from jsDelivr, base-map tiles from OpenFreeMap and VersaTiles, one dashboard's figures from the World Bank API, the prayer API). The tree sha is cff06fb8e. - deep-research/index.vue: its comment no longer says "no third-party host" without qualification.
This commit is contained in:
parent
fc13cd3607
commit
c6a846d86c
3 changed files with 28 additions and 14 deletions
|
|
@ -10,7 +10,7 @@ on the site loads from the same build tree.
|
|||
|
||||
| | |
|
||||
|---|---|
|
||||
| `public/dx-maps/` | **The dx-maps output folder, dropped in** (doxa-maps `development` 1bbc5ff87, `public/dx-maps/`, copied unchanged). Every map on this site loads from it, same-origin. |
|
||||
| `public/dx-maps/` | **The dx-maps output folder, dropped in** (doxa-maps `development` cff06fb8e, `public/dx-maps/`, copied unchanged). Every map on this site loads from it, same-origin. |
|
||||
| `app/pages/deep-research/index.vue` | **Deep Research: the Research Gallery.** The page loads one script (`/dx-maps/doxa-maps-spa/doxa-maps-spa.js`) and adds one element (`<doxa-maps-spa>`), sized to the viewport below the header; its `tree-base` is built at runtime from the page's own origin. It gives the gallery `profile-config` `{"experimental": false}`, so the gallery's Experimental folder is hidden (galleries built before that flag ignore it). Hidden: in no menu, `robots: noindex`. |
|
||||
| `app/pages/research/index.vue` | **The Research page, DX Life's own:** the heading, the "By Region" link and the UUPG list, with the production simple map (`doxa-simple-map`) carrying the Engagement, Prayer and Adoption tabs, the same map the home, pray and adopt pages each show one tab of. |
|
||||
| `app/pages/regions/index.vue`, `app/utils/nav.ts`, `nuxt.config.ts` | `/regions` is DX Life's own index again, with its menu item, and `/countries` goes to it (`USE_LEGACY_REGIONS_PAGE` and `LEGACY_REGIONS_PAGE` on). Set both off to send `/regions` to a gallery tab instead. |
|
||||
|
|
@ -27,10 +27,17 @@ also unchanged.
|
|||
**Language.** The gallery follows the site's language and the language switcher (all 11 locales;
|
||||
Arabic lays out right-to-left).
|
||||
|
||||
**Map engine.** If `NUXT_PUBLIC_MAPBOX_TOKEN` is set, every map uses Mapbox with that token, as
|
||||
before. If it is not set (for example, a fresh laptop with no `.env`), every map (the Research
|
||||
gallery and the home, pray and adopt maps) uses the keyless MapLibre engine (OpenFreeMap tiles)
|
||||
instead of refusing to start. So the whole site's maps work with no secrets at all.
|
||||
**Map engine.** Every map on the site (the Deep Research gallery and the home, pray, adopt, research
|
||||
and country maps) uses the keyless MapLibre engine by default, so the whole site's maps work with no
|
||||
secrets at all. To switch back to Mapbox, as doxa.life uses it today, set
|
||||
`NUXT_PUBLIC_MAP_PROVIDER=mapbox` together with `NUXT_PUBLIC_MAPBOX_TOKEN`; a token alone does not
|
||||
switch, and "mapbox" without a token falls back to MapLibre. The page loads only the map bundle; each
|
||||
map loads its own engine, so nothing is fetched from api.mapbox.com unless Mapbox is chosen.
|
||||
|
||||
**What comes from elsewhere.** The map code and the data folder are this site's own (`/dx-maps/`). The
|
||||
MapLibre engine comes from jsDelivr, the base-map tiles from OpenFreeMap and VersaTiles, one
|
||||
dashboard's country figures from the World Bank API, and the maps' people-group data from the prayer
|
||||
API (`NUXT_PUBLIC_PRAY_BASE_URL`, default `https://pray.doxa.life`).
|
||||
|
||||
**One scrollbar.** The gallery is a full-page app: it fills exactly the space between the header and
|
||||
the bottom of the screen. The Deep Research page has no footer and does not scroll itself, so the
|
||||
|
|
|
|||
|
|
@ -36,24 +36,30 @@ prayer API (`https://pray.doxa.life`, the default).
|
|||
| Home, Pray, Adopt (DX Life's own maps, unchanged) | <http://localhost:4611/>, [/pray](http://localhost:4611/pray), [/adopt](http://localhost:4611/adopt) |
|
||||
| Plugin Studio (it is in the maps folder; no page needed) | <http://localhost:4611/dx-maps/plugin-studio/plugin-studio/> |
|
||||
|
||||
## Try Mapbox (optional)
|
||||
## Map engine: MapLibre by default, Mapbox by one setting
|
||||
|
||||
Every map uses MapLibre unless the site chooses Mapbox. Choosing it is one setting plus the token.
|
||||
Stop the server, then:
|
||||
**Every map on the site uses MapLibre by default**, including DX Life's own maps on the home, pray,
|
||||
adopt and country pages. MapLibre needs no key, so the site, and any partner site, works with no
|
||||
token.
|
||||
|
||||
**To switch back to Mapbox**, as doxa.life uses it today, set one setting plus the token, then start
|
||||
the server:
|
||||
|
||||
```bash
|
||||
NUXT_PUBLIC_MAP_PROVIDER=mapbox NUXT_PUBLIC_MAPBOX_TOKEN=pk.your-token PORT=4611 bun run dev
|
||||
```
|
||||
|
||||
Without a token, "mapbox" falls back to MapLibre, so a map always starts.
|
||||
On a deployed site, set the same two variables in its environment. Without a token, "mapbox" falls
|
||||
back to MapLibre, so a map always starts.
|
||||
|
||||
## What is in this branch
|
||||
|
||||
- `/deep-research`: the Research Gallery (the DX Maps mobilization maps in one app), filling the page
|
||||
below the header. Its Experimental folder is hidden.
|
||||
- `/research`: the page file is identical to production's (github `master` fc4d622); the research map
|
||||
- `/deep-research`: the Deep Research gallery (the DX Maps mobilization maps in one app), filling the
|
||||
page below the header. Its Experimental folder is hidden, and every tab has an info button that
|
||||
explains what the map does.
|
||||
- `/research`: the page file is identical to DX Life's production branch (fc4d622); the research map
|
||||
now loads from this site's own `/dx-maps/`.
|
||||
- `public/dx-maps/`: the DX Maps output folder, from DX Maps `development` f0eb33951.
|
||||
- `public/dx-maps/`: the DX Maps output folder, from DX Maps `development` cff06fb8e.
|
||||
- The page never loads anything from api.mapbox.com; a map loads Mapbox itself, and only when Mapbox
|
||||
is chosen. A slow or blocked Mapbox cannot stop a map from appearing.
|
||||
|
||||
|
|
|
|||
|
|
@ -5,7 +5,8 @@
|
|||
// and robots are told not to index it. It is reached by its address only.
|
||||
//
|
||||
// The gallery is a web component served from DX-life's OWN origin (public/dx-maps/, a copy of
|
||||
// the dx-maps build tree), so this site is its CDN: one script, one element, no third-party host.
|
||||
// the dx-maps build tree), so this site is its CDN: one script, one element, and no other host for the
|
||||
// map code (the engine and base-map tiles come from public services; see DX-MAPS-GALLERY.md).
|
||||
// It reads its manifest and every child map from the same /dx-maps/ tree. See
|
||||
// DX-MAPS-GALLERY.md at the repo root.
|
||||
//
|
||||
|
|
|
|||
Loading…
Reference in a new issue