This page documents all application settings, where they live, and their defaults.
The main settings are stored as a consolidated JSON object in your browser's localStorage under the key app-settings.
| Setting | Key | Type | Default | Description |
|---|---|---|---|---|
| Theme | logger-theme |
string | light |
light or dark |
| Logbook Name | qrz-logbook-name |
string | — | Your QRZ logbook identifier (set automatically on API key validation) |
| Storage Method | settings-storageMethod |
string | indexeddb |
indexeddb or localstorage |
| Auto QRZ Lookup | settings-enableAutoQrzLookup |
boolean | true |
Look up callsigns on QRZ automatically as you type |
| Auto QRZ Upload | settings-enableAutoQrzUpload |
boolean | false |
Push QSOs to QRZ Logbook after saving (15s countdown) |
| Debug Mode | settings-debugMode |
boolean | false |
Reveal debug sections in Station Settings |
| WKmini Mode | wkusb-wkmini-mode |
boolean | false |
Use WKmini message macros instead of device-stored messages |
| WKmini Messages | wkusb-wkmini-messages |
string[] | See WinKeyer | 6 programmable CW message texts |
| Enabled Modes | log-modes |
object | SSB, CW, FT8 enabled | Controls which modes appear in the mode dropdown |
Two themes are available for the main logger interface:
| Theme | Description |
|---|---|
| Light | Light background, dark text (default) |
| Dark | Dark background, light text |
Change the theme from the dropdown in the Settings menu. The theme is applied via a data-theme attribute on the document root, which drives CSS custom properties for all colors. Maps automatically switch between light and dark Mapbox styles to match.
qsos object store and complex settings (like preferred names) in the settings storeqrz-logger-qsos keyChange the storage method in Station Settings > Advanced (requires debug mode). A page refresh is needed for the change to take effect.
The app automatically snapshots your most recent 500 QSOs in ADIF format to localStorage every 5 minutes (debounced — only fires if QSOs have changed). This is a recovery safety net, not a full backup solution.
| Key | Content |
|---|---|
auto-backup-adif |
ADIF text of up to 500 recent QSOs |
auto-backup-timestamp |
ISO timestamp of last auto-backup |
auto-backup-count |
Number of QSOs in the snapshot |
If your last manual ADIF export was more than 7 days ago, a reminder toast will nudge you to back up. The reminder checks last-manual-backup-date, which is updated whenever you click Save ADIF.
| Setting | Default | Description |
|---|---|---|
| Auto QRZ Lookup | On | Automatically look up callsigns as you type. Disable for offline operation or to reduce API calls. |
| Auto QRZ Upload | Off | After saving a QSO, a 15-second countdown starts. When it expires, the QSO is pushed to QRZ Logbook. Click the countdown toast to cancel. |
| QRZ API Key | — | Your QRZ Logbook API key. Validated on save — shows your logbook callsign and QSO count on success. |
Credential storage:
| Key | Purpose |
|---|---|
qrz-api-key |
QRZ Logbook API key |
qrz-username |
QRZ username (pre-fills login modal) |
qrz-session-key |
Active session token (persists until QRZ invalidates) |
qrz-encrypted-credentials |
AES-256-GCM encrypted login blob for auto session renewal |
qrz-logbook-callsign |
Your logbook's callsign (set on API key validation) |
Toggle debug mode by clicking the Debug badge in the Station Settings Advanced section header.
Debug mode reveals three additional panels:
| Section | Purpose |
|---|---|
| Storage Debug | Radio toggle between IndexedDB and localStorage with capacity info. Changing requires a page refresh. |
| Data Migration | "Migrate Now" button to force re-migration from localStorage to IndexedDB. Useful if IndexedDB was accidentally cleared. |
| WKmini Debug | Serial port diagnostics. Only visible when a WinKeyer device is connected. |
Most operators will never need debug mode. It's there for troubleshooting storage issues or development.
Beyond the consolidated app-settings and station-data objects, the app uses these individual localStorage keys:
| Key | Type | Default | Description |
|---|---|---|---|
pota-polling-interval |
number (ms) | 120000 | How often POTA spots refresh |
pota-map-disabled |
"true"/"false" |
"false" |
Hide the POTA map |
pota-tab-visited |
"true" |
— | Set after first POTA tab visit |
| Key | Type | Default | Description |
|---|---|---|---|
dx-cluster-run-in-background |
"true"/"false" |
"false" |
Keep WebSocket alive when panel closed |
dx-cluster-max-spots |
number | 100 | Max spots in the rolling buffer |
| Key | Type | Default | Description |
|---|---|---|---|
tours-enabled |
"true"/"false" |
"true" |
Global toggle for guided tours |
completed-tours |
JSON object | {} |
Tour IDs mapped to completion timestamps |
visited-before |
"true" |
— | Set after first visit (suppresses welcome modal) |