Wavelog
Self-hosted logbook for amateur radio operators
Alternative to: qrz logbook, club log, hamrs
About
Versions (52)
3.2.0
2026-09-01This is a feature release with some additions and improvements in API v2. Besides this a number of bugs has been fixed and minor improvements were made. See the detailed list below.
- Fixes around DCL-Handling (by @dg0tm)
- Fix editing Contest-ID (by @dg0tm)
- Add APIv2 contest ressource (by @mcules)
- Add APIv2 logbook and additional catalog/station ressource (by @MaviKulubeliAdam and @HB9HIL)
- Remove eQSL from DXCC-Dashboard (by @dg0tm and @phl0)
- Refactored “Worked all counties”-Award (by @Reid-n0rc and @int2001)
- Added IOTA references to the Activation Planner (by @AndreasK79)
- Improved the Activation Planner reference list: shows only active refs, displays nearby refs within 20 km of a clicked gridsquare, and respects your km/m/nm distance setting (by @AndreasK79)
- Added a mode filter to the Distances Worked page (by @AndreasK79)
- Added reference search to the Activation Planner (by @AndreasK79)
- Added place/geolocation search to the Activation Planner (by @AndreasK79)
- Added a “Fix all” button to the state fixer in the Advanced Logbook’s DB tools (by @AndreasK79)
- Added a right-click menu to the map, expedition and contest cards on the Dashboard (by @AndreasK79)
- Redesigned the AMSAT Status page from a table to pills, with improved mobile layout (by @AndreasK79)
- Fixed errors in the US county award file (Alaska counties and District of Columbia) (by @AndreasK79 and @HB9HIL)
- Revived and refactored the JCC award (by @AndreasK79, based on works by @cebarobot)
- Added an adjustable time slider for duplicate QSO search in the Advanced Logbook (by @AndreasK79)
- Added a new azimuthal map generator for your location/gridsquare with DXCC markers (by @AndreasK79)
- Reworked QSL Statistics into tabs with a year filter (by @AndreasK79)
- Antenna Analytics can now display an azimuthal map instead of the radar chart (by @AndreasK79)
- Added links to all worked and remaining counties in the County Award (by @AndreasK79 and @int2001)
- Added a label designer for designing QSL label printouts (by @AndreasK79)
- Moved the DB tools out of the Advanced Logbook into their own page (by @AndreasK79)
- Image uploads are now validated by actual file content for better security (by @AndreasK79)
- Gave the filter dropdown for the awards a visual makeover (by @AndreasK79)
- Rewrote how the callbook gridsquare lookup works in the DB tools (by @AndreasK79)
- Fixed the layout and enhanced the list in the WAB award (by @AndreasK79)
- Refactored DXCC statistics in dashboard and removed eQSL as no valid for DXCC (by @phl0)
- Added a widget (e.g. for qrz.com) to show last LoTW upload(s) per callsign (by @phl0)
- Added share-functions for Telegram and Whatsapp (by @phl0)
- Fixed handling of grids and VUCC grids in QSO edit (by @phl0)
- Added separate counting of deleted DXCCs to dashboard statistics (by @phl0)
- Removed SAT timers from tools (by @phl0)
- Fixed a bug with satellite TLEs based on OMM format showing wrong satellite names (by @phl0)
- Refactored static map caching to invalidate cache for today/yesterday maps at midnight (by @phl0)
- Enhanced hams.at listing to contain last LoTW upload hint and link to qrz.com (by @phl0)
- Adjusted colors for the legend in light themes (by @phl0)
- Frequency vs. band check: warns when logged QRG doesn’t fit the selected band; band change now emitted the moment it happens (by @int2001)
- Callbook lookup during an active QSO can now be enabled/disabled per user (by @int2001)
- Antenna azimuth map no longer draws broken lines past 360° (wraps correctly) (by @int2001)
- Fixed wrong QRA/locator shown after logging a QSO (by @int2001)
- QSL card/label printing: QSO IDs now passed as JSON instead of single values — more robust selection when it comes to more than 1000 QSL-Cards to print (by @int2001)
- “Apply” button added to every award filter (by @int2001)
- WAP award no longer breaks when entries are logged with different letter case (by @int2001)
- QSL method view aligned to standard look; Clublog added as QSL method (by @int2001)
- LoTW response is validated before the file is saved (by @int2001)
- QRZ API key is now always trimmed — prevents “works after re-paste” confusion (by @int2001)
- Label templates can be exported/imported from the label designer; export/import buttons made primary (by @int2001)
- Dashboard: DXCC-Stats now differentiated between HF/SAT and VHF+ (by @int2001)
- Counties: fixed counting and “unknown” counties, plus SAT view fix (by @int2001)
- Login hardening: entered username escaped (XSS fix) (by @int2001)
- New analytics view: “Distinct Count” (by @int2001)
- APIv2: 500 errors fixed, input length/type validation added (by @int2001)
- Options handling made more tolerant of edge cases (by @int2001)
- XSS escaping pass across awards, details popups and widgets (by @int2001)
- Big security pass: escaping of data coming from QRZ/LoTW/eQSL, broken click handlers fixed, fallback propagation mode and SAT-name protected (by @int2001)
- APIv2 now reports deleted/confirmed QSOs like the dashboard does (by @int2001)
- Fixed missing country in county details view (by @int2001)
- State dropdown/dependencies fixed in station profile edit (by @int2001)
- Fixed globe view when QSOs have no grid locator (by @int2001)
- IOTA planner: share locations / create locations (by @int2001)
- Internal: prepared statements fixed, redundant code removed, functions reused (by @int2001)
- Allow setting DOCKER_DEVELOPMENT in docker environments to enable debug mode (by @HB9HIL)
- Replaced star history on github readme with a simple gif (by @HB9HIL)
- Introduce new
redis2session driver to be much faster for docker containers using redis as session storage (by @HB9HIL) - Some more xss escaping (by @HB9HIL and @int2001)
- Allow disabling the docker builtin cronjob in replicated environments with DISABLE_CRON (by @HB9HIL)
- Fix a bug in contesting and fix userdata regarding COL_CONTEST_ID (by @HB9HIL)
- dbdebug was enabled by default which just costs performance, now disabled by default (only for new installations) (by @HB9HIL)
- Implemented a cache for gettext to language gets loaded much faster (by @HB9HIL)
- Refactored OptionsLib to increase performance and streamline codebase (by @HB9HIL)
- Fix of some deprecated functions (by @HB9HIL)
- Implemented new option for staticmap images; you can now use
center=[yourgrid]to center the map if you have multiple station locations (only longitude and only on world map) (by @HB9HIL) - Added a spinner to the login button for better UX (by @HB9HIL)
- Decoupled maintenance mode from CI_ENV, behaviour stays the same (by @HB9HIL)
- Fix missing variables for 404 page (by @HB9HIL)
- Add new catalog ressource for APIv2 to serve generous data like contests or dxcc (by @HB9HIL)
- Fixed free space check to check for 10% of disk utilization instead fixed requiring 1GB of storage (by @HB9HIL)
- Display contestname of set to a custom one instead just “Other” in attachqso modal of LBA (by @HB9HIL)