# dx-maps — one build, maps that embed everywhere **Write a map once in `plugin-designs//`, run one build, and drop it on any site** — iframe, script embed, mobile app — or open every map at once as one app. Five plugin capabilities, five deployment methods, one shared library, one build. | What dx-maps set out to do | Proof | |---|---| | **One build → one folder** you can drop on any host | `bun run check:drop` | | **Every map embeddable** from a copy-paste snippet | [deployment methods](#the-5-deployment-methods) · `bun run check:embed-targets` | | **Every map interoperable** through props and events | `bun run verify:interop` | | **One app nests every map** — and each stays embeddable on its own | [capability 5](#capability-5--app-shell-the-research-gallery) · `bun run check:composite-reg` | | **5 capabilities × 5 deployment methods** | `bun run verify:5-caps` | | **Shared library, private plugins** — reuse without breaking each other | `bun run check:library-index` | | **One agent per plugin, one shepherd, one green `main`** | [agent swarm](#build-it-with-an-agent-swarm) | --- ## The 5 plugin capabilities A capability is **how much a plugin nests**, from one element (1) to an app of apps (5). Every screenshot is a real bundle from this repo's build. ### Capability 5 — app shell: the Research Gallery One plugin, one element (``), and every tab inside it is a real plugin from a lower tier that you can still embed on its own. `plugin-designs/doxa-maps-spa/` ![Capability 5 — the Research Gallery app shell (doxa-maps-spa)](documentation/readme-images/cap5-doxa-maps-spa.png)
What the Research Gallery is made of — all five capabilities in one plugin ```text Research Gallery capability 5 ├─ Dashboards │ ├─ Big Picture dashboard-plus-grid capability 4 │ │ ├─ research dashboard research-dashboard capability 3 │ │ └─ people-groups grid people-groups-grid capability 2 │ ├─ Simple Research research-map-plus-grid capability 4 │ │ ├─ research map doxa-research-map capability 3 │ │ └─ people-groups grid people-groups-grid capability 2 │ └─ Regions regions-mfe capability 4 │ ├─ regions list regions-list capability 1 │ └─ region dashboards region-dashboards capability 1 ├─ Prayer Mobilization │ ├─ UPG-100 List upg-100-mfe capability 4 │ │ ├─ list upg-100-list capability 1 │ │ └─ poster wall poster-wall capability 1 │ └─ Prayer Progress doxa-simple-map capability 2 ├─ Gospel Research │ ├─ Cities with Internet connectivity-map capability 1 │ └─ Gospel Resources resources-map capability 1 └─ Experimental every other bundle, discovered automatically ```
### Capability 4 — composite: plugins wired together Nests lower-tier plugins and wires them with props and events. `plugin-designs/my-upg-100-list/` ![Capability 4 — the UPG-100 composite (my-upg-100-list)](documentation/readme-images/cap4-upg100-mfe.png) | List (cap 1, embeddable alone) | Poster wall (cap 1, embeddable alone) | |---|---| | ![UPG-100 list leaf](documentation/readme-images/cap4-upg100-list.png) | ![UPG-100 poster-wall leaf](documentation/readme-images/cap4-upg100-poster-wall.png) | ### Capability 3 — multi-view: many views, one element `plugin-designs/doxa-research-map/` ![Capability 3 — the monolithic research map (doxa-research-map)](documentation/readme-images/cap3-monolithic-research.png) ### Capability 2 — presets: one plugin, many maps One `root.vue` plus a preset table. `plugin-designs/doxa-simple-map/` | Prayer | Engagement | Adoption | |--------|------------|----------| | ![Capability 2 — prayer preset (doxa-simple-map)](documentation/readme-images/cap2-prayer.png) | ![Capability 2 — engagement preset (doxa-simple-map)](documentation/readme-images/cap2-engagement.png) | ![Capability 2 — adoption preset (doxa-simple-map)](documentation/readme-images/cap2-adoption.png) | ### Capability 1 — single element One folder, one `.vue`, one element. `plugin-designs/all-people-groups/` ![Capability 1 — a single-element plugin (all-people-groups)](documentation/readme-images/cap1-single-element.png) > Which bundle sits at which tier is generated, not remembered: > [documentation/reference-capability-exemplars.md](./documentation/reference-capability-exemplars.md). --- ## The 5 deployment methods ### 1. iframe — the prayer map on any site ✅ production One `