Skip to content

v1.8.0 — Modular architecture, full JSDoc, a11y & tooling

Choose a tag to compare

@github-actions github-actions released this 25 May 13:20
· 474 commits to main since this release

v1.8.0 — Modular architecture, full JSDoc, a11y & tooling

This release marks the transition from a single-file architecture to 18 focused JS modules built at compile time — the same single work-log.html to open in your browser, but now with a proper source structure, full documentation, and a real toolchain.

Code Quality & Documentation

  • Full JSDoc coverage across all 18 JS source modules — every public function has @param, @returns, and @throws annotations
  • CITATION.cff — software citation metadata for academic/open-source use
  • DATA.md — complete localStorage schema reference (every key, field type, lifetime, and data-recovery recipe)
  • ARCHITECTURE.md — module dependency map, data flow, and integration overview
  • Key assumptions documented inline: billing rounding midpoint, billable defaults, carry-over rules

Accessibility

  • ARIA labels on all icon-only buttons
  • role="dialog" / aria-modal on all modals with focus trap (focus saved on open, restored on close; Escape closes)
  • role="region" on stat and pomodoro sections; role="list" on task lists
  • aria-live on dynamic counters; aria-expanded on collapsible headers (keyboard: Enter/Space)

Automation & Tooling

  • Husky pre-commit hook running ESLint + Prettier via lint-staged
  • Dependabot auto-update for npm dependencies
  • GitHub Releases workflow — auto-publishes release notes from CHANGELOG on tag push
  • GitHub Pages workflow — generates and publishes JSDoc reference on every push to main
  • Lighthouse CI workflow — audits a11y/best-practices/performance with thresholds
  • Branch ruleset — force-push and deletion blocked; test + lint required to merge

Configuration

  • Hardcoded config extracted to src/js/00-config.js: location coordinates, Jira base URL, calendar account labels — one file to edit when adapting for a different environment

Bug Fixes

  • Three-state checkpoint toggle (false → 'partial' → true) fixed in focus-mode overlay
  • Smoke test suite updated and expanded to 199 tests, 0 failures

Upgrading from v1.7.x

No localStorage schema changes — your existing data is fully compatible.

The built script.js and styles.css in the repo root are ready to use.
To build from source or run tests:

npm install
node build.js        # rebuilds script.js + styles.css
node smoke-tests.cjs # 199 tests