Skip to content

NotchWatch v0.3.0

Choose a tag to compare

@github-actions github-actions released this 25 Sep 13:57
· 9 commits to main since this release
19dd7c5

Added

  • English / French toggle in Settings — switches every user-facing string app-wide (menu bar, dropdown, Settings, error messages), defaults to English.
  • Estimated billing cycle shown below the usage bar in the dropdown — Anthropic's usage API doesn't expose real billing-period dates, so this is a plainly-labeled calendar-month approximation.
  • VoiceOver labels on the menu bar item and refresh button — previously the app's core readout had no accessible name at all.
  • Motion: usage numbers roll instead of snapping on refresh, the progress bar eases to its new width, dropdown states crossfade. Respects Reduce Motion throughout.
  • Custom brand mark (light/dark SVG) replacing the generic cpu SF Symbol in the dropdown header.
  • Issue templates (bug report / feature request forms) and a real MIT LICENSE file (was referenced by name only before).

Changed

  • Menu bar icon redesigned: now shows <percent>% • $<amount> as colored text instead of a filled progress bar — the percentage itself carries the status color (green / orange / red), no separate fill.
  • Settings window title now follows the selected language (was hardcoded to French regardless of setting).
  • README rewritten to match the current app and installation flow.

Fixed

  • Error text contrast (magenta) in dark mode — was under the WCAG AA threshold.
  • Manual token field in Settings no longer writes to the Keychain on every keystroke (debounced).
  • 401/403 API responses now show an actionable "token invalid or expired" message instead of a raw status code.
  • Xcode warning: dead nil-coalescing on a non-optional DateIntervalFormatter result.

Known limitations

  • The billing cycle range is a calendar-month estimate, not Anthropic's actual billing period — there is no API field for it.
  • No custom .icns/app icon in the build yet — the app and .dmg still use the default generic icon (the brand SVGs exist but aren't wired into codesign/dmg packaging).
  • Not notarized (no Apple Developer Program account) — first launch needs a right-click → Open, or xattr -cr.
  • No OAuth refresh-token flow: when the Claude Code token expires, re-run claude login or paste a fresh token in Settings.