doxa-maps/package.json
swift-river542 0f9027f592
Some checks are pending
Deploy to GitHub Pages / build (push) Waiting to run
Deploy to GitHub Pages / deploy (push) Blocked by required conditions
Public hygiene: sync:dropin excludes staging pages by default; check:public-hygiene gate scans a drop-in for leaks, secrets, source maps, docs and preview surfaces
2026-09-16 13:04:36 -05:00

66 lines
3.7 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 app-profiles/*/; 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 shell",
"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",
"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 # re-seed public/ from a layouts/ wrapper; --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:playground": "node internal/playground-smoke.mjs",
"smoke:share": "node internal/share-roundtrip-smoke.mjs",
"sync:dropin": "node internal/sync-dropin.mjs",
"deploy:dev": "bun run build && node internal/sync-dropin.mjs \"${DOXA_DROPIN_DEST:-../doxa-life/public/js/doxa-maps-build}\" # every bundler slice ends here: the website worktree gets the fresh drop-in; then commit + push BOTH repos",
"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"
}
}