Skip to content

refactor(web): split app.js into per-view modules + shared UI helpers#70

Closed
smochan wants to merge 1 commit into
feat/dashboard-vendor-depsfrom
feat/dashboard-split-appjs
Closed

refactor(web): split app.js into per-view modules + shared UI helpers#70
smochan wants to merge 1 commit into
feat/dashboard-vendor-depsfrom
feat/dashboard-split-appjs

Conversation

@smochan

@smochan smochan commented Jun 10, 2026

Copy link
Copy Markdown
Owner

Summary

Track A2, stacked on #69. Pure extraction, zero behavior change:

  • app.js: 919 → 240 lines — keeps only data fetch, render dispatcher, sidebar/theme shell
  • 6 new view modules (views/overview|hld|flows|matrix|sankey|treemap.js) exposed via window.CGViews.*
  • ui/helpers.js: shared esc/format/tooltip/toast/mermaid-theme/kind helpers via window.CGUI.* with per-view destructuring (matches the repo's no-bundler script-tag architecture)
  • index.html loads helpers → views → app.js in dependency order; no-CDN guard test extended to the new files

Implemented by a Sonnet subagent against a Fable spec; reviewed (namespace wiring, window.state exposure, node --check on every file, payload smoke test) by the orchestrating session.

Test plan

  • Full suite 708 passed; ruff + mypy clean
  • node --check on all new/changed JS
  • Dashboard payload smoke test on a fresh tiny repo

🤖 Generated with Claude Code

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@smochan smochan deleted the branch feat/dashboard-vendor-deps June 10, 2026 14:14
@smochan smochan closed this Jun 10, 2026
@github-actions github-actions Bot locked and limited conversation to collaborators Jun 10, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant