69 lines
4.1 KiB
JSON
69 lines
4.1 KiB
JSON
{
|
|
"name": "doxa-maps",
|
|
"version": "0.1.0",
|
|
"license": "Apache-2.0",
|
|
"private": true,
|
|
"description": "A portable bundler that generates embeddable JAMstack maps — one library, many map bundles that embed on any site, compose into a lazy-loaded SPA, or wrap a Capacitor Android/iOS app.",
|
|
"type": "module",
|
|
"scripts": {
|
|
"dev": "bun x vite",
|
|
"build": "bun run clean && bun run token && for d in plugin-designs/*/; do BUNDLE=$(basename \"$d\") bun x vite build || exit 1; done && bun run tree && bun run check:drop && bun run check:drop && bun run check:parse && bun run verify && bun run gallery",
|
|
"build:watch": "bun x vite build --watch",
|
|
"preview": "bun x vite preview",
|
|
"clean": "node internal/clean.mjs",
|
|
"build:bundle": "bun x vite build",
|
|
"tree": "node internal/generate-tree.mjs",
|
|
"gallery": "node internal/generate-gallery.mjs # writes public/index.html, the built plugin gallery (the one root page), from public/doxa-maps/manifest.json",
|
|
"check:drop": "node internal/drop-portability-check.mjs",
|
|
"check:parse": "node internal/inline-parse-check.mjs",
|
|
"verify": "node library/scripts/research/verify-all.mjs",
|
|
"verify:full": "node library/scripts/research/verify-all.mjs --full",
|
|
"serve": "python3 -m http.server 4173 --bind 0.0.0.0 --directory public",
|
|
"serve:shell": "python3 -m http.server 4174 --bind 0.0.0.0 --directory layouts/app-wrapper-material",
|
|
"cap:sync": "bunx cap sync android",
|
|
"cap:verify": "test -f capacitor/android/app/src/main/assets/public/index.html && echo \"OK webDir copied\" || (echo \"FAIL: empty assets/public -> blank white screen. Check webDir.\" && exit 1)",
|
|
"apk:debug": "bun run build && bun run cap:sync && bun run cap:verify && cd capacitor/android && ./gradlew assembleDebug",
|
|
"apk:install": "adb install -r capacitor/android/app/build/outputs/apk/debug/app-debug.apk",
|
|
"phone": "bun run apk:debug && bun run apk:install",
|
|
"shell": "node internal/install-shell.mjs --no-token # OPTIONAL, not part of build: overlays a layouts/ wrapper onto public/ for local use (the served root is the generated index.html); --no-token so the local credential is never copied into the served root",
|
|
"posters": "cd library/scripts/posters && SPARSE=1 OFFLINE=1 VITE_API_BASE_URL=https://pray.doxa.life FORMAT=3x3 node generate.mjs",
|
|
"posters:one": "cd library/scripts/posters && SPARSE=1 OFFLINE=1 VITE_API_BASE_URL=https://pray.doxa.life FORMAT=3x3 node generate.mjs # ONLY=<zoneKey> to build one",
|
|
"posters:shoot": "cd library/scripts/posters && DSF=2 node shoot.mjs",
|
|
"posters:gallery": "cd library/scripts/posters && node build-gallery.mjs && node build-hd-gallery.mjs",
|
|
"posters:export": "cd library/scripts/posters && node export-public.mjs",
|
|
"posters:previews": "cd library/scripts/posters && python3 make-previews.py",
|
|
"token": "node internal/write-token.mjs",
|
|
"smoke": "node internal/smoke.mjs",
|
|
"smoke:embeds": "node internal/embed-smoke.mjs",
|
|
"smoke:gallery": "node internal/plugin-gallery-smoke.mjs",
|
|
"smoke:playground": "bun run smoke:gallery",
|
|
"smoke:share": "node internal/share-roundtrip-smoke.mjs",
|
|
"probe:legend-columns": "node internal/legend-columns-probe.mjs",
|
|
"sync:dropin": "node internal/sync-dropin.mjs",
|
|
"deploy:dev": "bun run build && node internal/sync-dropin.mjs --from-config --prune # destination + allowlist come from vite.doxa-maps-build-config.json (dropin.dest / dropin.include); DOXA_DROPIN_DEST=<dir> overrides the destination",
|
|
"check:public-hygiene": "node internal/public-hygiene-check.mjs"
|
|
},
|
|
"devDependencies": {
|
|
"@capacitor/android": "7",
|
|
"@capacitor/cli": "7",
|
|
"@capacitor/core": "7",
|
|
"@vitejs/plugin-vue": "^5.0.4",
|
|
"playwright": "1.61.1",
|
|
"terser": "^5.46.0",
|
|
"vite": "^5.4.21",
|
|
"vite-plugin-css-injected-by-js": "^3.5.2"
|
|
},
|
|
"dependencies": {
|
|
"@maplibre/maplibre-gl-geocoder": "^1.7.0",
|
|
"jspdf": "^4.2.1",
|
|
"maplibre-gl": "^5.6.0",
|
|
"pinia": "^2.3.1",
|
|
"topojson-client": "^3.1.0",
|
|
"vue": "^3.5.20",
|
|
"vue-i18n": "^9.14.5",
|
|
"world-atlas": "^2.0.2"
|
|
},
|
|
"engines": {
|
|
"node": ">=18.0.0"
|
|
}
|
|
}
|