Add progressive web app companion for cross-platform access

Vite + TypeScript PWA that mirrors the Android app's core features:
- Pre-processed shelter data (build-time UTM33N→WGS84 conversion)
- Leaflet map with shelter markers, user location, and offline tiles
- Canvas compass arrow (ported from DirectionArrowView.kt)
- IndexedDB shelter cache with 7-day staleness check
- Service worker with CacheFirst tiles and precached app shell
- i18n for en, nb, nn (ported from Android strings.xml)
- iOS/Android compass handling with low-pass filter
- Respects user map interaction (no auto-snap on pan/zoom)
- Build revision cache-breaker for reliable SW updates

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Ole-Morten Duesund 2026-03-08 17:41:38 +01:00
commit e8428de775
12051 changed files with 1799735 additions and 0 deletions

View file

@ -0,0 +1,52 @@
{
"name": "fast-json-stable-stringify",
"version": "2.1.0",
"description": "deterministic `JSON.stringify()` - a faster version of substack's json-stable-strigify without jsonify",
"main": "index.js",
"types": "index.d.ts",
"dependencies": {},
"devDependencies": {
"benchmark": "^2.1.4",
"coveralls": "^3.0.0",
"eslint": "^6.7.0",
"fast-stable-stringify": "latest",
"faster-stable-stringify": "latest",
"json-stable-stringify": "latest",
"nyc": "^14.1.0",
"pre-commit": "^1.2.2",
"tape": "^4.11.0"
},
"scripts": {
"eslint": "eslint index.js test",
"test-spec": "tape test/*.js",
"test": "npm run eslint && nyc npm run test-spec"
},
"repository": {
"type": "git",
"url": "git://github.com/epoberezkin/fast-json-stable-stringify.git"
},
"homepage": "https://github.com/epoberezkin/fast-json-stable-stringify",
"keywords": [
"json",
"stringify",
"deterministic",
"hash",
"stable"
],
"author": {
"name": "James Halliday",
"email": "mail@substack.net",
"url": "http://substack.net"
},
"license": "MIT",
"nyc": {
"exclude": [
"test",
"node_modules"
],
"reporter": [
"lcov",
"text-summary"
]
}
}