Repository navigation
LocalStorage Schema
🇮🇱 עברית
All application-owned browser keys use the navaid.* prefix. This page is a
human-readable map; the complete enforceable registry is
GDRIVE_SETTINGS_KEYS plus NOT_A_SYNCED_SETTING in
tests/settings-sync-allowlist.spec.js, which scans current app source.
-
navaid.route,navaid.routes,navaid.view,navaid.layer— working route/library and map state. Not the language: nothing stores one any more, and anavaid.langleft by an older version is ignored — see Bilingual UI. -
navaid.show*, opacity/size/color keys,navaid.navDataPrefix,navaid.imsPwx,navaid.sigwxOv,navaid.wxTime, and wind-field keys — active layer/display choices. -
navaid.etd— the planned departure{date, time}, local, shared by the flight plan and the filing dialog. Device-local: a fact about one flight, not a setting.navaid.etaZulu— show times in UTC (synced). -
navaid.fpl.<field>,navaid.aircraft,navaid.profileVS— flight-plan and aircraft profile values.aisEmailis device-local because it controls the filing destination; the user'sreplyTomay sync. The checkbox says so in place: ticking Sync settings too names the pilot details (name, licence, phone) and aircraft profile it uploads, since "settings" otherwise reads as layers and opacities. -
navaid.ai.*— provider/model/key/base URL. Provider and model choices may sync when Sync settings too is enabled. API keys and the base URL stay device-local. A successful settings sync removes any API-key copy left in Drive by an older version — see AI Assistant. -
navaid.*Pos,navaid.sec.*, collapse/hint/search state — device-local UI geometry and one-time presentation state. Language-specific widgets use families such asnavaid.clockPos.<lang>. -
navaid.settingsSyncedAt,navaid.settingsSnapshot,navaid.settingsSnapKeys,navaid.syncSettings— settings-sync bookkeeping. -
navaid.gistCache— the last remote config seen on this device, applied at boot so the first frame is already configured (see Tuning Panel). Device-local: it is a copy of a remote file, refetched on every load. -
navaid.magVarAuto,navaid.magVarManual— magnetic variation: automatic (World Magnetic Model) or the manual value, signed as the app uses it (magnetic = true + value, so-5is 5°E). They outrank the gist, likenavaid.defaultSpeed, and sync with Sync settings too. -
navaid.pressureUnit— inHg or hPa. Synced with the other pilot settings. -
navaid.altSource,navaid.brightness— altitude from GPS or barometer, and screen brightness. Device-local: whether a phone has a usable barometer, and how bright its screen should be in this cockpit, are facts about that phone. -
navaid.offlinePacks— which charts and OpenFlightMaps areas this device keeps offline. Device-local: it describes storage on this device. -
navaid.commFail— a comm failure in progress, with the route from before it, so it survives a reload or language switch. Device-local, cleared when it ends. -
navaid.headingUp,navaid.gpsFollow— the in-flight map controls (heading-up orientation, follow lock). Per device, like the rest of the map state. -
navaid.followMeSession,navaid.followMeCode— the live-share session (topic, key, aircraft code) and the code last typed. Never synced: the session is a capability to watch this aircraft right now, not a preference, and syncing it would put two devices on one topic and hand the key to every device on the account. See Follow me. -
navaid.navlog— the flight planning form's own inputs: the met table, the compass card, and ONLY those settings the pilot typed over. Everything else is re-derived each time, which is what lets an untouched field elevation follow the route. Device-local and never synced: a met table from another day is worse than none.navaid.navlogPosis the window's position, like every other*Pos. See Flight planning form. -
navaid.followVerified— the signing key this device has seen for each aircraft it has followed (up to 32), so a link with the verify key stripped out cannot downgrade a viewer that was already checking signatures. Never synced, for the same reason as the session below. -
navaid.tourSeen— the map tour has played on this device. Device-local: a new phone gets the tour too. -
navaid.notamModalSize— the size the NOTAM sheet was dragged to. Device-local geometry. -
navaid.notamListPos,navaid.sigmetListPos,navaid.airmetListPos(each.en/.he) — where the NOTAM, SIGMET and AIRMET lists were dragged to. Device-local, like every*Pos. -
navaid.inspSize— the inspector's size per kind of panel (waypoint, leg, airfield, bubble…). Device-local. -
navaid.showSigmet,navaid.showAdc— the SIGMET map layer and the aerodrome-chart plate type. Synced with the othernavaid.show*keys. -
navaid.notamSeen— NOTAM ids this device has already been shown, with the time each was first seen, so the list can badge what is new. Marked on closing the sheet; entries older thannotamSeenDays(90) are dropped. Device-local: it records what this pilot has read. -
navaid.routeLibraryFilter— which half of the saved-route library is on screen (all/route/gps). A view choice made on this device while looking for something, not a setting worth carrying to another. -
navaid.selected,navaid.fpOpen,navaid.openChartModal— session-only restoration keys. So arenavaid.buildNoticeFor(which build this tab has already been told about) andnavaid.apkReloadedForBuild(the once-per-build guard that stops an APK reload loop): both are per tab on purpose, so a page that cannot pick a new build up asks once rather than on every check. -
navaid.otaInstalling— the bundle id the embedded iOS build is currently trying to install, so a bundle that does not come up is attempted once and then left alone. Device-local, and cleared as soon as the install succeeds. See Offline and PWA.
Drive settings use a separate app-data document from saved routes. null is a
deletion tombstone; an absent key means no information. Timestamps are
monotonic, snapshots use canonical allowlist order, first sync unions
non-conflicting values, conflicts require a user decision, and applying a
remote snapshot is all-or-nothing. API keys, destination endpoints, working
route, route library, caches, and device geometry are excluded.
When adding a key, update code, the allowlist or device-local reason, and this page in the same PR.
For pilots
- Quick Start
- Video tutorials · סרטונים
- Features
- The Map
- Auto zoom
- Toolbar
- Phone layout
- Safety notice
- Route and Legs
- Waypoints and Notes
- Inspector
- AI Assistant
- User Guide
- Frequency Changes
- VOR and Radial/DME
- Map Layers
- Bearing dial
- Extra Layers
- Airport charts
- Flight Plan
- Route check
- Flight planning form
- Submit a flight plan
- Fuel
- Print and Export
- Simulator Connect
- Google Earth
- GPS Track Recording
- Comm failure
- Follow me
- Bilingual UI
- Offline and PWA
- Settings and Persistence
- Keyboard and Touch
- FAQ and Troubleshooting
For developers
- Architecture
- Directory Structure
- Tuning Panel
- Hidden Tools
- LocalStorage Schema
- Nav-waypoints dataset
- Airfields dataset
- Service Worker
- Deployment
- Contributing
- Changelog
🇮🇱 עברית
לטייסים
- התחלה מהירה
- תכונות
- עוזר AI
- מדריך למשתמש
- זום אוטומטי
- שינויי תדר
- VOR ו-Radial/DME
- סרגל הכלים
- פריסת הטלפון
- הודעת הבטיחות
- שכבות מפה
- שכבות נוספות
- תוכנית טיסה
- בדיקת מסלול
- טופס תכנון טיסה
- הגשת תוכנית טיסה
- הדפסה וייצוא
- חיבור סימולטור
- Google Earth
- הקלטת מסלול GPS
- תקלת קשר
- עקבו אחריי
- ממשק דו-לשוני
- לא מקוון ו-PWA
- הגדרות ושמירה
- מקלדת ומגע
- שאלות נפוצות ופתרון תקלות
למפתחים
🌐 Live 🧪 Staging 📦 Repo 💡 Ideas / bugs