Add motion domain and design dials (variance/motion/density) - #402
Conversation
Adds a new searchable `motion` domain (motion.csv, 16 GSAP animation skeletons across hover/scroll-reveal/stagger/page-transition/parallax/ loading, each tagged Subtle/Standard/Complex) plus three optional 1-10 dials on `--design-system` — --variance, --motion, --density — inspired by taste-skill's DESIGN_VARIANCE/MOTION_INTENSITY/VISUAL_DENSITY sliders. - --variance biases style search/selection toward centered-minimal (low) or bold-asymmetric (high) categories - --motion attaches a matching GSAP snippet (code + framework notes + do/don't) from motion.csv - --density overrides the --space-* token scale in ASCII/markdown/MASTER.md output (spacious <-> dense/dashboard) All three dials are optional and additive; output with no dials set is byte-identical to before (verified via regression diff). Synced into .claude/skills/ui-ux-pro-max and cli/assets alongside src/ui-ux-pro-max (source of truth) so all three installed copies stay consistent. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
cli/assets had fallen out of sync with src/ui-ux-pro-max ahead of this change (unrelated to the motion-domain feature) - colors.csv, products.csv, google-fonts.csv, draft.csv, several platform templates, and sub-skill scripts/tests had all drifted. Ran the project's own `sync-assets.mjs` to bring cli/assets back in line with the source of truth per the documented Sync Rules; `--check` now reports assets as in sync. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
🤖 github-maintain cron reviewSummary: Adds a Risk level: Medium — well-structured feature addition, but touches core search, design system generation, and BM25 tokenizer behavior across all three distribution copies. Mandatory gates:
Findings:
Verdict: Comment — valuable feature, but needs coordination with PR #296 on the motion domain registration before merge. Posted by github-maintain cron at 2026-07-02T00:23:00Z |
…der#296 PR nextlevelbuilder#296 (feat/emil-motion-principles) independently registers a "motion" domain key in CSV_CONFIG/detect_domain for motion-principles.csv (37 design-principle rows). Both PRs adding the same dict key would cause one to silently overwrite the other's domain registration if merged independently, per the automated review on this PR. The two domains are complementary, not duplicate (design principles vs. ready-to-use GSAP code snippets), so this renames this PR's domain from "motion" to "gsap" - a more precise name given every row is GSAP-specific implementation code. The --motion CLI dial and its "Subtle/Standard/ Complex" tiers are unaffected (unrelated to the domain key; only the `--domain gsap` search endpoint and its internal lookup changed). No regressions: --design-system output with no dials set remains byte-identical to before this feature. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
|
Thanks for catching the collision with #296 — fixed in the latest commit. Renamed this PR's domain from Note the The other two items were "Suggestion" level, not blocking, but for the record: the extra stack registrations (javafx/wpf/winui/avalonia/uno/uwp) and the BM25 tokenizer fix ( |
clark-cant
left a comment
There was a problem hiding this comment.
✅ Approved — Collision resolved
Summary: Adds motion domain (16 GSAP skeletons) and three optional design dials (--variance, --motion, --density). Well-structured feature with proper source-of-truth sync across src/, .claude/skills/, and cli/assets/.
Collision fix verified: ✅
- Domain renamed from
motion→gsapin CSV_CONFIG, detect_domain, and search.py --motionCLI dial unchanged (correctly decoupled from domain key)- motion.csv file name retained but registered under
gsapdomain - No collision with PR #296's Emil Kowalski motion-principles domain
Quality notes:
- Clean separation: GSAP implementation code (this PR) vs design principles (#296)
- BM25 tokenizer fix (
> 2→>= 2) is a good cross-domain improvement - Windows UTF-8 stdout wrapper is a nice touch
- All three distribution copies kept in sync
Verdict: Approve — ready to merge.
Posted by github-maintain cron at $(date -u +"%Y-%m-%dT%H:%M:%SZ")
- CLAUDE.md: add missing domains (icons, react, web, google-fonts); domain list now matches all 12 --help choices (gsap landed via nextlevelbuilder#402, stack list already synced by nextlevelbuilder#404) - README.md / README.zh.md: complete Desktop row in Supported Stacks (add WPF, WinUI 3, Avalonia, Uno Platform, UWP); fix stack count (13+ -> 22); replace nonexistent --max-length flag with --json in Troubleshooting - templates/base/skill-content.md (+ cli/assets mirror): add icons/google-fonts/gsap rows to search tables, drop invalid 'prompt' domain, list all 22 stacks instead of 2 Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- CLAUDE.md: add missing domains (icons, react, web, google-fonts); domain list now matches all 12 --help choices (gsap landed via #402, stack list already synced by #404) - README.md / README.zh.md: complete Desktop row in Supported Stacks (add WPF, WinUI 3, Avalonia, Uno Platform, UWP); fix stack count (13+ -> 22); replace nonexistent --max-length flag with --json in Troubleshooting - templates/base/skill-content.md (+ cli/assets mirror): add icons/google-fonts/gsap rows to search tables, drop invalid 'prompt' domain, list all 22 stacks instead of 2 Co-authored-by: 文敏華 <guanweijie@wenminhuadeMacBook-Air.local> Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
…n-domain-design-dials Add motion domain and design dials (variance/motion/density)
Summary
motiondomain (data/motion.csv, 16 GSAP animation skeletons across hover / scroll-reveal / stagger-list / page-transition / parallax / loading, each tagged Subtle/Standard/Complex)--design-system:--variance,--motion,--density(inspired by taste-skill's DESIGN_VARIANCE/MOTION_INTENSITY/VISUAL_DENSITY sliders), documented inCLAUDE.md,templates/base/skill-content.md, and the compiledSKILL.md--variancebiases style search/selection toward centered-minimal (low) or bold-asymmetric (high)--motionattaches a matching GSAP snippet (code + framework notes + do/don't + perf notes) frommotion.csv--densityoverrides the--space-*token scale in ASCII/markdown/MASTER.md output.claude/skills/ui-ux-pro-max/andcli/assets/so the installed skill and publishable CLI package stay consistent withsrc/ui-ux-pro-max/(source of truth)cli/assetsdrift fromsrc(unrelated to this feature, found while running the project's ownsync-assets.mjs)Test plan
python3 src/ui-ux-pro-max/scripts/search.py "<query>" --domain motion -n 2returns well-formed GSAP snippets--design-systemwith no dials produces byte-identical output to pre-change baseline (diffed)--design-system --variance N --motion N --density N(low/mid/high combinations) produces expected tier selection, motion snippet, and spacing scale--persistwith dials renders "Design Dials" + "Motion" sections and overridden spacing table inMASTER.mdsrc/ui-ux-pro-max,.claude/skills/ui-ux-pro-max,cli/assetsnode cli/scripts/sync-assets.mjs --checkreports assets in sync--variance 15) rejected with a clear argparse error