Cloudlog Dev Update – Widgets, DX Improvements & Lots of Polish
Been a fairly productive few days on the Cloudlog dev branch, mostly focused on performance, usability, and a few long-overdue features.
On Air Widgets (Finally)
One of the nicer additions this week is a proper embeddable “on air” status.
There are now two options:
/widgets/on_air/YOURCALL→ iframe-style widget/widgets/on_air_image/YOURCALL→ SVG badge
The SVG version is probably the most useful. It’s lightweight, updates automatically, and can be dropped into QRZ pages, blogs, or wherever.
It shows:
- ON AIR / QRT
- Frequency + mode (or SAT if applicable)
Also spent a bit of time making sure it behaves nicely:
- Sensible caching (not too aggressive)
- Dynamic sizing so it doesn’t look awful with longer text
- Proper sanitisation so nothing explodes in SVG land
DX Highlighting – Much Smarter Now
This has been bugging me for a while.
Previously, Cloudlog would only highlight DX properly if the distance was already stored, which meant perfectly valid QSOs could get ignored.
That’s now fixed.
We now:
- Fall back to gridsquares (and VUCC grids)
- Calculate the distance if it’s missing
- Pick the actual furthest QSO rather than “first one that matches”
Result: more accurate DX highlighting without relying on perfect data.
DX Cluster Improvements
Quite a bit of work went into the cluster side, too.
UI & Behaviour
- Status is now a proper badge (instead of boring text)
- Handles connection states better (connecting, reconnecting, etc.)
- Tooltips now actually make sense
Filtering
- Added mode filter
- Added “New DXCC” filter
- Improved how spots are held until worked status is known
RBN Fixes
Tightened up RBN detection so it stops misclassifying random spots as skimmers.
(That regex was… optimistic.)
Track Band
New option to track the radio band automatically, or turn it off if you prefer manual control.
DX Cluster in the QSO Screen
This is probably the biggest user-facing change.
You can now enable a DX Cluster tab directly inside the QSO interface.
- Live WebSocket feed
- Click a spot → fills the QSO form
- Optional auto-QSY to your radio
It basically removes the need to bounce between pages.
QSO Form – Faster & Less Chatty
Moved a bunch of calculations client-side:
- Distance
- Bearing
- Locator handling
This removes a load of AJAX calls and makes the form feel much more responsive.
Same logic as before, just running in the browser now.
FT8 / FT4 + Band Logic
Updated frequency lists and tightened up band/mode detection.
Should now be a lot more accurate when Cloudlog tries to guess:
- Mode from frequency
- Correct band segments
Particularly noticeable on VHF/UHF and some of the edge cases.
General UI / QoL
A mix of smaller improvements:
- Pagination no longer resets every time the table redraws (finally…)
- Per-user control over QSO fields & tabs
- Cleaner contest UI with stats
- Better handling of manual mode input
- Fewer JS errors when things aren’t initialised properly
Under the Hood
Bit of housekeeping too:
- Centralised DXCC checks (less duplication)
- Removed some questionable direct
$_GETusage - Reduced unnecessary redraws and DOM work
- General performance tweaks across the board
Final Thoughts
This release isn’t about one big flashy feature — it’s more about:
- Making things faster
- Making things more accurate
- And removing a bunch of small annoyances
The dev branch is looking pretty solid now, so aiming to get this rolled into a stable release soon™.
More tweaks incoming as always.