Skip to content

v0.4.0-beta.1 — Custom date ranges, full referrer URLs, and a more resilient dashboard

Pre-release
Pre-release

Choose a tag to compare

@al3xg0r al3xg0r released this 06 Sep 04:27

AG Analytics v0.4.0-beta.1

A large update since v0.3.1-beta.1 — a custom calendar-based date range picker,
referrers grouped by full URL instead of just domain, a custom site-picker
dropdown, and a handful of real bugs found and fixed along the way.

Added

  • Custom date range picker. A new "Custom range" period option opens an
    always-visible calendar (built from scratch, no library) styled to match
    the dashboard's own design system. Click a start day, then an end day —
    the range between them highlights, and a summary line shows what's
    selected. Nothing on the dashboard changes until you click Apply.
  • Referrers panel now shows the full linking URL, not just the domain —
    each row is a distinct page that linked to you, with its own count, and
    clicking it opens that exact page (previously it only linked to the
    domain's homepage). Note: many browsers only ever send the bare origin for
    cross-site navigations (Referrer-Policy: strict-origin-when-cross-origin,
    the modern default everywhere) — that's the browser's own privacy
    behavior, not something this or any analytics tool can see past.
  • Custom site-picker dropdown, replacing the native <select>. Some
    browsers had a real, reproducible bug where a click on a site could
    silently reselect the first one instead — a custom-rendered list sidesteps
    that entirely and matches the sidebar's design instead of looking like a
    bare system control.
  • Edit site modal now edits the name too, not just the domain (the
    backend already supported renaming — it just wasn't wired up to the UI).
  • Per-panel error states. If one panel's data fails to load, the other
    panels still update normally instead of the whole dashboard silently
    freezing on stale data with no indication anything went wrong.
  • Dashboard footer now has a small mail icon for contact/bug reports.

Fixed

  • A failed request to any one breakdown panel used to silently freeze
    every panel.
    All 11 panels were fetched with Promise.all, which
    aborts entirely if even one request fails — now Promise.allSettled, so
    one bad response only affects that one panel.
  • Switching sites didn't reset the period selector. Picking "12 months"
    on one site and then switching to another kept showing 12 months there
    too, instead of resetting to a sensible default ("Today").
  • The empty "No data yet" placeholder lost its muted styling to a CSS
    cascade bug (a same-specificity rule declared later in the stylesheet was
    silently winning), making it hard to tell an empty panel from a real one
    at a glance.
  • non_web_request events (see v0.3.0-beta.1's changelog) now show a
    plain-English label in the Custom events panel instead of the raw
    internal event name.
  • Removed the unused description field from the "Add site" form — it was
    never shown anywhere after creation, just dead weight in the form.
  • Removed APP_RELEASE_DATE, unused since the version tag stopped showing
    a date.

Upgrading from v0.3.1-beta.1

No new migration — the schema is unchanged. Just deploy the new Worker code
and static assets as usual.

Full Changelog: v0.3.1-beta.1...v0.4.0-beta.1