JAMstack bundler for embeddable map applications
Find a file
2026-09-11 18:50:31 +00:00
.github/workflows doxa-maps — portable bundler for embeddable JAMstack maps 2026-09-10 01:53:07 +00:00
app-profiles doxa-maps — portable bundler for embeddable JAMstack maps 2026-09-10 01:53:07 +00:00
capacitor/android doxa-maps — portable bundler for embeddable JAMstack maps 2026-09-10 01:53:07 +00:00
contributing doxa-maps — portable bundler for embeddable JAMstack maps 2026-09-10 01:53:07 +00:00
docs docs: simple README template for the embedded (in-host) copy 2026-09-11 18:50:31 +00:00
internal doxa-maps — portable bundler for embeddable JAMstack maps 2026-09-10 01:53:07 +00:00
layouts doxa-maps — portable bundler for embeddable JAMstack maps 2026-09-10 01:53:07 +00:00
library doxa-maps — portable bundler for embeddable JAMstack maps 2026-09-10 01:53:07 +00:00
public doxa-maps — portable bundler for embeddable JAMstack maps 2026-09-10 01:53:07 +00:00
.env.example doxa-maps — portable bundler for embeddable JAMstack maps 2026-09-10 01:53:07 +00:00
.gitattributes doxa-maps — portable bundler for embeddable JAMstack maps 2026-09-10 01:53:07 +00:00
.gitignore doxa-maps — portable bundler for embeddable JAMstack maps 2026-09-10 01:53:07 +00:00
bun.lock doxa-maps — portable bundler for embeddable JAMstack maps 2026-09-10 01:53:07 +00:00
capacitor.config.json doxa-maps — portable bundler for embeddable JAMstack maps 2026-09-10 01:53:07 +00:00
CONTRIBUTING.md doxa-maps — portable bundler for embeddable JAMstack maps 2026-09-10 01:53:07 +00:00
index.html doxa-maps — portable bundler for embeddable JAMstack maps 2026-09-10 01:53:07 +00:00
LICENSE doxa-maps — portable bundler for embeddable JAMstack maps 2026-09-10 01:53:07 +00:00
package.json doxa-maps — portable bundler for embeddable JAMstack maps 2026-09-10 01:53:07 +00:00
README.md doxa-maps — portable bundler for embeddable JAMstack maps 2026-09-10 01:53:07 +00:00
vite.config.js doxa-maps — portable bundler for embeddable JAMstack maps 2026-09-10 01:53:07 +00:00
vite.doxa-maps-build-config.json doxa-maps — portable bundler for embeddable JAMstack maps 2026-09-10 01:53:07 +00:00

doxa-maps

A portable bundler that generates JAMstack maps that embed on all your partner sites.

✨ New here, and you don't write code?

You can build real, embeddable maps by describing them to an AI coding agent — no programming required. Start with the friendly, zero-jargon guide: docs/tutorial.md.

Quickstart

Bun is required (bun.lock is the committed lockfile — install from https://bun.sh).

bun install
bun run build     # builds every app-profiles/<bundle>/ → public/doxa-maps/<bundle>/<bundle>.js
bun run dev       # HMR staging at http://localhost:5173/ (does NOT update a built public/)

Built output lands in public/, the committed, served web-root. Serve that folder from anywhere and the bundles are embeddable from it.

Embed a map

<link  href="https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.css" rel="stylesheet" />
<script src="https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js"></script>
<script src="https://api.mapbox.com/mapbox-gl-js/plugins/mapbox-gl-geocoder/v5.0.0/mapbox-gl-geocoder.min.js"></script>

<script src="/doxa-maps/my-map/my-map.js"></script>
<my-map profile-config='{"profile":"my-map","tk":"pk.eyJ..."}'></my-map>

The bundle is a plain <script> web component — the host page needs no build step and no framework. profile-config is read at runtime, so the same bundle re-points at different data or colors with no rebuild.

Run it in your site, share it to partners — same map, many places

Two levels. The maps are web-component / iframe embeds you drop on any partner site with no build step on their end. The bundler is self-contained: it runs standalone, or drops inside a host repo and builds in place — so you own and vendor the whole thing, and choose where the built maps are served from (your own site, GitHub/jsDelivr, or any CDN). One map runs in your own site and embeds on your partner sites.

Docs

  • Tutorial — build your first map, step by step.
  • How-to — task recipes: embed, add a profile, choose a CDN, set tokens.
  • Reference — file map, config fields, contracts, the @map library index.
  • Explanation — the architecture and why it's shaped this way.

Contributors: see CONTRIBUTING.md.

License

Built on the doxa-maps template (Apache-2.0) — the shared library/ and build tooling are a permissive base everyone shares. Your maps under app-profiles/<bundle>/ are yours: your color strategies, API connections, and i18n. Full text: LICENSE.