wizz-method 1.4.0 → 1.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +7 -5
- package/package.json +48 -4
- package/skills-registry.yaml +166 -34
- package/src/bmm-skills/4-implementation/wizz-code-review/SKILL.md +2 -0
- package/src/bmm-skills/4-implementation/wizz-quick-dev/SKILL.md +5 -2
- package/src/core-skills/_shared/handoff-protocol.md +61 -0
- package/src/core-skills/wizz-customize/SKILL.md +2 -2
- package/src/core-skills/wizz-party-mode/references/mode-agent-team.md +1 -1
- package/src/core-skills/wizz-party-mode/references/mode-subagent.md +1 -1
- package/src/core-skills/wizz-review-adversarial-general/SKILL.md +2 -0
- package/src/modules/wizz/README.md +3 -3
- package/src/modules/wizz/_shared/communication-rules.md +13 -0
- package/src/modules/wizz/_shared/encerramento.md +2 -2
- package/src/modules/wizz/agents/wizz-ads/SKILL.md +1 -1
- package/src/modules/wizz/agents/wizz-ads/customize.toml +5 -3
- package/src/modules/wizz/agents/wizz-copy/SKILL.md +1 -1
- package/src/modules/wizz/agents/wizz-copy/customize.toml +5 -3
- package/src/modules/wizz/agents/wizz-designer/SKILL.md +7 -9
- package/src/modules/wizz/agents/wizz-designer/customize.toml +6 -4
- package/src/modules/wizz/agents/wizz-growth/SKILL.md +1 -1
- package/src/modules/wizz/agents/wizz-growth/customize.toml +11 -3
- package/src/modules/wizz/agents/wizz-maestro/SKILL.md +15 -10
- package/src/modules/wizz/agents/wizz-maestro/customize.toml +5 -7
- package/src/modules/wizz/agents/wizz-memoria/SKILL.md +1 -1
- package/src/modules/wizz/agents/wizz-memoria/customize.toml +2 -4
- package/src/modules/wizz/agents/wizz-qa/SKILL.md +6 -6
- package/src/modules/wizz/agents/wizz-qa/customize.toml +9 -7
- package/src/modules/wizz/agents/wizz-seo/SKILL.md +1 -1
- package/src/modules/wizz/agents/wizz-seo/customize.toml +5 -3
- package/src/modules/wizz/agents/wizz-social/SKILL.md +1 -1
- package/src/modules/wizz/agents/wizz-social/customize.toml +9 -8
- package/src/modules/wizz/module.yaml +1 -1
- package/src/modules/wizz/overrides/wizz-agent-analyst.toml +4 -5
- package/src/modules/wizz/overrides/wizz-agent-architect.toml +11 -3
- package/src/modules/wizz/overrides/wizz-agent-dev.toml +6 -4
- package/src/modules/wizz/overrides/wizz-agent-pm.toml +4 -2
- package/src/modules/wizz/overrides/wizz-agent-tech-writer.toml +3 -5
- package/src/modules/wizz/overrides/wizz-agent-ux-designer.toml +4 -2
- package/src/modules/wizz/scripts/wizz-init.mjs +3 -1
- package/src/scripts/__pycache__/resolve_customization.cpython-314.pyc +0 -0
- package/src/scripts/memlog.py +9 -0
- package/src/scripts/resolve_customization.py +93 -3
- package/src/skills-lib/adversarial-reviewer/SKILL.md +2 -0
- package/src/skills-lib/algorithmic-art/SKILL.md +29 -369
- package/src/skills-lib/algorithmic-art/references/interactive-artifact.md +139 -0
- package/src/skills-lib/algorithmic-art/references/p5js-implementation.md +121 -0
- package/src/skills-lib/algorithmic-art/references/philosophy-creation.md +88 -0
- package/src/skills-lib/auth-and-secrets/SKILL.md +29 -11
- package/src/skills-lib/canvas-design/SKILL.md +9 -38
- package/src/skills-lib/canvas-design/references/canvas-execution.md +21 -0
- package/src/skills-lib/canvas-design/references/philosophy-examples.md +25 -0
- package/src/skills-lib/cerebro/SKILL.md +8 -273
- package/src/skills-lib/cerebro/references/comandos-pesquisa-e-sync.md +44 -0
- package/src/skills-lib/cerebro/references/comandos-rotina-e-captura.md +94 -0
- package/src/skills-lib/cerebro/references/comandos-sessao.md +122 -0
- package/src/skills-lib/content-strategy/SKILL.md +12 -316
- package/src/skills-lib/content-strategy/references/content-types.md +52 -0
- package/src/skills-lib/content-strategy/references/ideation-sources.md +78 -0
- package/src/skills-lib/content-strategy/references/pillars-and-keywords.md +78 -0
- package/src/skills-lib/content-strategy/references/prioritization-and-output.md +57 -0
- package/src/skills-lib/decision-maker/SKILL.md +13 -466
- package/src/skills-lib/decision-maker/references/commands-and-edge-cases.md +40 -0
- package/src/skills-lib/decision-maker/references/output-format.md +161 -0
- package/src/skills-lib/decision-maker/references/references-and-extraction.md +129 -0
- package/src/skills-lib/decision-maker/references/six-decisions.md +122 -0
- package/src/skills-lib/decision-maker/references/wizz-method-handoff.md +22 -0
- package/src/skills-lib/desktop-security/SKILL.md +35 -4
- package/src/skills-lib/find-skills/SKILL.md +9 -6
- package/src/skills-lib/form-cro/SKILL.md +12 -390
- package/src/skills-lib/form-cro/references/experiments.md +73 -0
- package/src/skills-lib/form-cro/references/field-optimization.md +92 -0
- package/src/skills-lib/form-cro/references/flow-and-errors.md +71 -0
- package/src/skills-lib/form-cro/references/measurement-output.md +41 -0
- package/src/skills-lib/form-cro/references/trust-and-form-types.md +54 -0
- package/src/skills-lib/graphify/SKILL.md +2 -20
- package/src/skills-lib/huashu-design/SKILL.md +42 -596
- package/src/skills-lib/huashu-design/references/anti-slop-principles.md +62 -0
- package/src/skills-lib/huashu-design/references/audio-design-rules.md +1 -1
- package/src/skills-lib/huashu-design/references/cross-agent-adaptation.md +14 -0
- package/src/skills-lib/huashu-design/references/design-direction-fallback.md +113 -0
- package/src/skills-lib/huashu-design/references/exception-handling.md +18 -0
- package/src/skills-lib/huashu-design/references/fact-verification.md +36 -0
- package/src/skills-lib/huashu-design/references/ios-prototype.md +146 -0
- package/src/skills-lib/huashu-design/references/sfx-library.md +7 -0
- package/src/skills-lib/huashu-design/references/starter-components.md +24 -0
- package/src/skills-lib/huashu-design/references/video-export.md +1 -1
- package/src/skills-lib/huashu-design/references/watermark-policy.md +23 -0
- package/src/skills-lib/huashu-design/scripts/add-music.sh +12 -1
- package/src/skills-lib/huashu-design/scripts/mix-voiceover.sh +11 -0
- package/src/skills-lib/humanizer/SKILL.md +23 -431
- package/src/skills-lib/humanizer/references/ai-writing-patterns.md +314 -0
- package/src/skills-lib/humanizer/references/full-example.md +72 -0
- package/src/skills-lib/humanizer/references/personality-and-soul.md +36 -0
- package/src/skills-lib/impeccable/SKILL.md +37 -153
- package/src/skills-lib/impeccable/references/design-rules.md +95 -0
- package/src/skills-lib/impeccable/references/pin-unpin-and-hooks.md +17 -0
- package/src/skills-lib/impeccable/references/routing-rules.md +28 -0
- package/src/skills-lib/implementation-planner/SKILL.md +22 -529
- package/src/skills-lib/implementation-planner/references/folder-structure-and-dependencies.md +132 -0
- package/src/skills-lib/implementation-planner/references/handoff-template.md +34 -0
- package/src/skills-lib/implementation-planner/references/implementation-phases.md +54 -0
- package/src/skills-lib/implementation-planner/references/implementation-types.md +28 -0
- package/src/skills-lib/implementation-planner/references/motion-path-implementation.md +57 -0
- package/src/skills-lib/implementation-planner/references/output-templates.md +92 -0
- package/src/skills-lib/implementation-planner/references/performance-plan.md +52 -0
- package/src/skills-lib/inicio-de-projeto/SKILL.md +4 -224
- package/src/skills-lib/inicio-de-projeto/references/implementacao-api-forms.md +112 -0
- package/src/skills-lib/inicio-de-projeto/references/padroes-arquiteturais-e-pastas.md +71 -0
- package/src/skills-lib/inicio-de-projeto/references/seguranca-e-regras-codigo.md +26 -0
- package/src/skills-lib/launch-strategy/SKILL.md +9 -311
- package/src/skills-lib/launch-strategy/references/five-phase-approach.md +76 -0
- package/src/skills-lib/launch-strategy/references/launch-checklist.md +34 -0
- package/src/skills-lib/launch-strategy/references/orb-framework.md +76 -0
- package/src/skills-lib/launch-strategy/references/post-launch-and-ongoing.md +64 -0
- package/src/skills-lib/launch-strategy/references/product-hunt-strategy.md +52 -0
- package/src/skills-lib/marketing-psychology/SKILL.md +18 -401
- package/src/skills-lib/marketing-psychology/references/design-and-delivery-models.md +56 -0
- package/src/skills-lib/marketing-psychology/references/foundational-thinking-models.md +76 -0
- package/src/skills-lib/marketing-psychology/references/growth-and-scaling-models.md +46 -0
- package/src/skills-lib/marketing-psychology/references/influencing-behavior.md +71 -0
- package/src/skills-lib/marketing-psychology/references/pricing-psychology.md +31 -0
- package/src/skills-lib/marketing-psychology/references/understanding-buyers.md +116 -0
- package/src/skills-lib/motion-3d-director/SKILL.md +23 -370
- package/src/skills-lib/motion-3d-director/references/image-to-video-workflow.md +166 -0
- package/src/skills-lib/motion-3d-director/references/motion-paths.md +119 -0
- package/src/skills-lib/motion-3d-director/references/performance-and-handoff.md +51 -0
- package/src/skills-lib/popup-cro/SKILL.md +11 -414
- package/src/skills-lib/popup-cro/references/design-copy-compliance.md +81 -0
- package/src/skills-lib/popup-cro/references/experiments.md +82 -0
- package/src/skills-lib/popup-cro/references/rules-measurement-output.md +87 -0
- package/src/skills-lib/popup-cro/references/triggers-and-popup-types.md +108 -0
- package/src/skills-lib/premium-landing-ui-researcher/SKILL.md +52 -2083
- package/src/skills-lib/premium-landing-ui-researcher/references/audit-protocol.md +124 -0
- package/src/skills-lib/premium-landing-ui-researcher/references/component-sources.md +336 -0
- package/src/skills-lib/premium-landing-ui-researcher/references/core-goal.md +62 -0
- package/src/skills-lib/premium-landing-ui-researcher/references/dashboard-and-portfolio-modes.md +92 -0
- package/src/skills-lib/premium-landing-ui-researcher/references/handoffs.md +55 -0
- package/src/skills-lib/premium-landing-ui-researcher/references/landing-page-strategy.md +227 -0
- package/src/skills-lib/premium-landing-ui-researcher/references/mandatory-process.md +36 -0
- package/src/skills-lib/premium-landing-ui-researcher/references/output-format-and-quality.md +129 -0
- package/src/skills-lib/premium-landing-ui-researcher/references/prompt-templates.md +206 -0
- package/src/skills-lib/premium-landing-ui-researcher/references/site-levels.md +515 -0
- package/src/skills-lib/premium-landing-ui-researcher/references/source-first-protocol.md +144 -0
- package/src/skills-lib/premium-landing-ui-researcher/references/source-links.md +39 -0
- package/src/skills-lib/premium-landing-ui-researcher/references/stack-and-visual-direction.md +118 -0
- package/src/skills-lib/signup-flow-cro/SKILL.md +13 -321
- package/src/skills-lib/signup-flow-cro/references/experiments.md +72 -0
- package/src/skills-lib/signup-flow-cro/references/field-optimization.md +49 -0
- package/src/skills-lib/signup-flow-cro/references/flow-structure.md +38 -0
- package/src/skills-lib/signup-flow-cro/references/measurement-output-patterns.md +62 -0
- package/src/skills-lib/signup-flow-cro/references/trust-and-post-submit.md +40 -0
- package/src/skills-lib/taste-redesign/SKILL.md +10 -146
- package/src/skills-lib/taste-redesign/references/design-audit.md +120 -0
- package/src/skills-lib/taste-redesign/references/upgrade-techniques.md +31 -0
- package/src/skills-lib/taste-skill/SKILL.md +33 -1177
- package/src/skills-lib/taste-skill/references/anti-slop-tells.md +110 -0
- package/src/skills-lib/taste-skill/references/architecture-conventions.md +39 -0
- package/src/skills-lib/taste-skill/references/block-library.md +61 -0
- package/src/skills-lib/taste-skill/references/brief-and-dials.md +89 -0
- package/src/skills-lib/taste-skill/references/dark-mode.md +23 -0
- package/src/skills-lib/taste-skill/references/design-directives.md +191 -0
- package/src/skills-lib/taste-skill/references/design-systems.md +267 -0
- package/src/skills-lib/taste-skill/references/motion-patterns.md +167 -0
- package/src/skills-lib/taste-skill/references/pattern-vocabulary.md +78 -0
- package/src/skills-lib/taste-skill/references/performance-a11y.md +33 -0
- package/src/skills-lib/taste-skill/references/preflight-checklist.md +73 -0
- package/src/skills-lib/taste-skill/references/redesign-protocol.md +52 -0
- package/src/skills-lib/ui-ux-pro-max/SKILL.md +9 -353
- package/src/skills-lib/ui-ux-pro-max/references/common-rules-checklist.md +76 -0
- package/src/skills-lib/ui-ux-pro-max/references/rules-quick-reference.md +70 -0
- package/src/skills-lib/ui-ux-pro-max/references/search-reference.md +45 -0
- package/src/skills-lib/ui-ux-pro-max/references/workflow-guide.md +157 -0
- package/src/skills-lib/web-security/SKILL.md +13 -162
- package/src/skills-lib/web-security/references/checklist-deploy.md +52 -0
- package/src/skills-lib/web-security/references/headers-rate-limit-cors.md +78 -0
- package/src/skills-lib/web-security/references/owasp-top5-detalhado.md +51 -0
- package/src/skills-lib/wizz-router/SKILL.md +30 -244
- package/src/skills-lib/wizz-router/references/auditoria-360.md +21 -0
- package/src/skills-lib/wizz-router/references/routing-table-flat.md +95 -0
- package/tools/fetch-assets.mjs +277 -0
- package/tools/installer/commands/fetch-assets.js +71 -0
- package/tools/installer/commands/install.js +35 -3
- package/tools/installer/commands/trace-report.js +131 -0
- package/tools/installer/core/config.js +9 -0
- package/tools/installer/core/help-catalog.js +181 -0
- package/tools/installer/core/install-paths.js +48 -3
- package/tools/installer/core/installer.js +253 -618
- package/tools/installer/core/manifest-generator.js +8 -1
- package/tools/installer/core/manifest.js +67 -22
- package/tools/installer/core/module-config-writer.js +110 -0
- package/tools/installer/core/preflight-tools-check.js +82 -0
- package/tools/installer/core/quick-update.js +209 -0
- package/tools/installer/core/user-file-preservation.js +250 -0
- package/tools/installer/modules/channel-resolver.js +34 -2
- package/tools/installer/modules/cli-config.js +127 -34
- package/tools/installer/modules/deps-cache.js +28 -1
- package/tools/installer/modules/env-vars.js +446 -0
- package/tools/installer/modules/external-manager.js +40 -6
- package/tools/installer/modules/mcp-config.js +180 -37
- package/tools/installer/modules/module-help-schema.js +2 -1
- package/tools/installer/modules/official-modules.js +1 -1
- package/tools/installer/modules/registry-resolve.js +74 -0
- package/tools/installer/modules/skills-lib.js +81 -16
- package/tools/installer/ui.js +71 -5
- package/wizz-modules.yaml +15 -5
- package/.claude/settings.local.json +0 -8
- package/.claude-plugin/marketplace.json +0 -80
- package/AGENTS.md +0 -12
- package/build/artifacts/llms-full.txt +0 -4049
- package/build/artifacts/llms.txt +0 -28
- package/build/site/404.html +0 -55
- package/build/site/_astro/MobileTableOfContents.astro_astro_type_script_index_0_lang.hwBsy0Mo.js +0 -1
- package/build/site/_astro/Search.astro_astro_type_script_index_0_lang.cjYDvRdi.js +0 -1
- package/build/site/_astro/TableOfContents.astro_astro_type_script_index_0_lang.FuRcXuRY.js +0 -1
- package/build/site/_astro/ec.0vx5m.js +0 -3
- package/build/site/_astro/ec.v4551.css +0 -1
- package/build/site/_astro/index.DdjI3lF_.css +0 -1
- package/build/site/_astro/page.B1D-nYk3.js +0 -1
- package/build/site/_astro/print.DNXP8c50.css +0 -1
- package/build/site/_astro/ui-core.D_Lfcn_I.js +0 -2
- package/build/site/diagrams/checkpoint-preview-diagram-fr.webp +0 -0
- package/build/site/diagrams/checkpoint-preview-diagram.png +0 -0
- package/build/site/diagrams/quick-dev-diagram-fr.webp +0 -0
- package/build/site/diagrams/quick-dev-diagram.png +0 -0
- package/build/site/explanation/advanced-elicitation/index.html +0 -105
- package/build/site/explanation/adversarial-review/index.html +0 -109
- package/build/site/explanation/analysis-phase/index.html +0 -129
- package/build/site/explanation/brainstorming/index.html +0 -92
- package/build/site/explanation/checkpoint-preview/index.html +0 -121
- package/build/site/explanation/established-projects-faq/index.html +0 -107
- package/build/site/explanation/forensic-investigation/index.html +0 -167
- package/build/site/explanation/named-agents/index.html +0 -187
- package/build/site/explanation/party-mode/index.html +0 -256
- package/build/site/explanation/preventing-agent-conflicts/index.html +0 -185
- package/build/site/explanation/project-context/index.html +0 -198
- package/build/site/explanation/quick-dev/index.html +0 -113
- package/build/site/explanation/web-bundles/index.html +0 -178
- package/build/site/explanation/why-solutioning-matters/index.html +0 -168
- package/build/site/how-to/customize-wizz/index.html +0 -277
- package/build/site/how-to/established-projects/index.html +0 -165
- package/build/site/how-to/expand-wizz-for-your-org/index.html +0 -245
- package/build/site/how-to/get-answers-about-wizz/index.html +0 -129
- package/build/site/how-to/install-custom-modules/index.html +0 -197
- package/build/site/how-to/install-wizz/index.html +0 -330
- package/build/site/how-to/non-interactive-installation/index.html +0 -73
- package/build/site/how-to/project-context/index.html +0 -141
- package/build/site/how-to/quick-fixes/index.html +0 -122
- package/build/site/how-to/shard-large-documents/index.html +0 -103
- package/build/site/how-to/upgrade-to-v6/index.html +0 -185
- package/build/site/how-to/use-web-bundles/index.html +0 -99
- package/build/site/img/wizz-dark.png +0 -0
- package/build/site/img/wizz-light.png +0 -0
- package/build/site/index.html +0 -128
- package/build/site/llms-full.txt +0 -4049
- package/build/site/llms.txt +0 -28
- package/build/site/pagefind/fragment/en_175de32.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_24258fb.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_24f53a6.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_27ba8f9.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_296ddb9.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_2b5aa5c.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_49047e0.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_4a187d2.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_514725b.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_583316f.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_6465dfb.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_67825a4.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_82aec61.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_85dcebf.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_887ce56.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_89a1a7a.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_8ade291.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_8c11f8a.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_8c1bde3.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_92d7cc7.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_94bfc21.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_9b57d7d.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_ab62b53.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_b0d23ee.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_ba9fb37.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_bb113eb.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_bfc56b6.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_c6d9e48.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_cdd772f.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_cdd885c.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_cefed6a.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_d890205.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_da351b7.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_ea289f9.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_f1c3711.pf_fragment +0 -0
- package/build/site/pagefind/index/en_5b9d8c6.pf_index +0 -0
- package/build/site/pagefind/index/en_868614c.pf_index +0 -0
- package/build/site/pagefind/index/en_e4f9bff.pf_index +0 -0
- package/build/site/pagefind/pagefind-entry.json +0 -1
- package/build/site/pagefind/pagefind-highlight.js +0 -1064
- package/build/site/pagefind/pagefind-modular-ui.css +0 -214
- package/build/site/pagefind/pagefind-modular-ui.js +0 -8
- package/build/site/pagefind/pagefind-ui.css +0 -1
- package/build/site/pagefind/pagefind-ui.js +0 -2
- package/build/site/pagefind/pagefind.en_4e69d7f053.pf_meta +0 -0
- package/build/site/pagefind/pagefind.js +0 -6
- package/build/site/pagefind/wasm.en.pagefind +0 -0
- package/build/site/pagefind/wasm.unknown.pagefind +0 -0
- package/build/site/reference/agents/index.html +0 -168
- package/build/site/reference/commands/index.html +0 -254
- package/build/site/reference/core-tools/index.html +0 -384
- package/build/site/reference/modules/index.html +0 -132
- package/build/site/reference/testing/index.html +0 -218
- package/build/site/reference/workflow-map/index.html +0 -266
- package/build/site/roadmap/index.html +0 -77
- package/build/site/robots.txt +0 -37
- package/build/site/sitemap-0.xml +0 -1
- package/build/site/sitemap-index.xml +0 -1
- package/build/site/tutorials/getting-started/index.html +0 -386
- package/build/site/wizz-icon-orange.svg +0 -7
- package/build/site/workflow-map-diagram-fr.html +0 -375
- package/build/site/workflow-map-diagram.html +0 -375
- package/evals/bmm-skills/wizz-product-brief/evals.json +0 -237
- package/evals/bmm-skills/wizz-product-brief/files/branfield-memo.md +0 -46
- package/evals/bmm-skills/wizz-product-brief/files/forkbird-brief/addendum.md +0 -40
- package/evals/bmm-skills/wizz-product-brief/files/forkbird-brief/brief.md +0 -56
- package/evals/bmm-skills/wizz-product-brief/files/forkbird-brief/decision-log.md +0 -27
- package/evals/bmm-skills/wizz-product-brief/files/meridian-mobility-report.md +0 -116
- package/evals/bmm-skills/wizz-product-brief/files/mossridge-brief/addendum.md +0 -41
- package/evals/bmm-skills/wizz-product-brief/files/mossridge-brief/brief.md +0 -57
- package/evals/bmm-skills/wizz-product-brief/files/mossridge-brief/decision-log.md +0 -29
- package/evals/bmm-skills/wizz-product-brief/files/pantry-bridge-interviews.md +0 -90
- package/evals/bmm-skills/wizz-product-brief/files/q2-brainstorm.md +0 -101
- package/evals/bmm-skills/wizz-product-brief/triggers.json +0 -18
- package/src/core-skills/wizz-party-mode/scripts/__pycache__/resolve_party.cpython-314.pyc +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/ArsenalSC-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/BigShoulders-Bold.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/BigShoulders-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/Boldonse-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/BricolageGrotesque-Bold.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/BricolageGrotesque-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/CrimsonPro-Bold.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/CrimsonPro-Italic.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/CrimsonPro-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/DMMono-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/EricaOne-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/GeistMono-Bold.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/GeistMono-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/Gloock-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/IBMPlexMono-Bold.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/IBMPlexMono-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/IBMPlexSerif-Bold.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/IBMPlexSerif-BoldItalic.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/IBMPlexSerif-Italic.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/IBMPlexSerif-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/InstrumentSans-Bold.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/InstrumentSans-BoldItalic.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/InstrumentSans-Italic.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/InstrumentSans-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/InstrumentSerif-Italic.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/InstrumentSerif-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/Italiana-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/JetBrainsMono-Bold.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/JetBrainsMono-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/Jura-Light.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/Jura-Medium.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/LibreBaskerville-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/Lora-Bold.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/Lora-BoldItalic.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/Lora-Italic.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/Lora-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/NationalPark-Bold.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/NationalPark-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/NothingYouCouldDo-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/Outfit-Bold.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/Outfit-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/PixelifySans-Medium.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/PoiretOne-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/RedHatMono-Bold.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/RedHatMono-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/Silkscreen-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/SmoochSans-Medium.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/Tektur-Medium.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/Tektur-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/WorkSans-Bold.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/WorkSans-BoldItalic.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/WorkSans-Italic.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/WorkSans-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/YoungSerif-Regular.ttf +0 -0
- package/src/skills-lib/huashu-design/assets/bgm-ad.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/bgm-educational-alt.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/bgm-educational.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/bgm-tech.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/bgm-tutorial-alt.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/bgm-tutorial.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/container/card-flip.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/container/card-snap.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/container/modal-open.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/container/stack-collapse.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/feedback/achievement.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/feedback/error-tone.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/feedback/notification-pop.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/feedback/success-chime.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/impact/brand-stamp.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/impact/drop-thud.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/impact/logo-reveal-v2.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/impact/logo-reveal.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/keyboard/delete-key.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/keyboard/enter.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/keyboard/space-tap.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/keyboard/type-fast.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/keyboard/type.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/magic/ai-process.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/magic/sparkle.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/magic/transform.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/progress/complete-done.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/progress/generate-start.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/progress/loading-tick.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/terminal/command-execute.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/terminal/cursor-blink.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/terminal/output-appear.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/transition/dissolve.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/transition/slide-in.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/transition/swipe-horizontal.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/transition/whoosh-fast.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/transition/whoosh.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/ui/click-soft.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/ui/click.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/ui/focus.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/ui/hover-subtle.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/ui/tap-finger.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/ui/toggle-on.mp3 +0 -0
- package/src/skills-lib/ui-ux-pro-max/scripts/__pycache__/core.cpython-314.pyc +0 -0
- package/src/skills-lib/ui-ux-pro-max/scripts/__pycache__/design_system.cpython-314.pyc +0 -0
- package/src/skills-lib/ui-ux-pro-max/scripts/__pycache__/search.cpython-314.pyc +0 -0
- package/src/skills-lib/ui-ux-pro-max/scripts/graphify-out/cache/0964cef300f753b5cee0cc49777ca97035c85d45c212099405d9ee4da36e523f.json +0 -1
- package/src/skills-lib/ui-ux-pro-max/scripts/graphify-out/cache/21a40f6810c3a6f17acc3580f106171daf78c7b41bbd066bc80448a821ea0adf.json +0 -1
- package/src/skills-lib/ui-ux-pro-max/scripts/graphify-out/cache/69ea15a020ac81b8459e37ef63654398a50c1035fc01c43d8069df217389f7f3.json +0 -1
- package/src/squads/README.md +0 -39
- package/src/squads/advisory-board/README.md +0 -34
- package/src/squads/advisory-board/agents/board-chair.md +0 -161
- package/src/squads/advisory-board/agents/brene-brown.md +0 -296
- package/src/squads/advisory-board/agents/charlie-munger.md +0 -590
- package/src/squads/advisory-board/agents/derek-sivers.md +0 -268
- package/src/squads/advisory-board/agents/naval-ravikant.md +0 -251
- package/src/squads/advisory-board/agents/patrick-lencioni.md +0 -394
- package/src/squads/advisory-board/agents/peter-thiel.md +0 -269
- package/src/squads/advisory-board/agents/ray-dalio.md +0 -587
- package/src/squads/advisory-board/agents/reid-hoffman.md +0 -278
- package/src/squads/advisory-board/agents/simon-sinek.md +0 -291
- package/src/squads/advisory-board/agents/yvon-chouinard.md +0 -275
- package/src/squads/advisory-board/squad.yaml +0 -50
- package/src/squads/brand-squad/README.md +0 -60
- package/src/squads/brand-squad/agents/al-ries.md +0 -175
- package/src/squads/brand-squad/agents/alina-wheeler.md +0 -184
- package/src/squads/brand-squad/agents/archetype-consultant.md +0 -215
- package/src/squads/brand-squad/agents/brand-chief.md +0 -158
- package/src/squads/brand-squad/agents/byron-sharp.md +0 -169
- package/src/squads/brand-squad/agents/david-aaker.md +0 -166
- package/src/squads/brand-squad/agents/denise-yohn.md +0 -172
- package/src/squads/brand-squad/agents/domain-scout.md +0 -135
- package/src/squads/brand-squad/agents/donald-miller.md +0 -179
- package/src/squads/brand-squad/agents/emily-heyward.md +0 -147
- package/src/squads/brand-squad/agents/jean-noel-kapferer.md +0 -189
- package/src/squads/brand-squad/agents/kevin-keller.md +0 -199
- package/src/squads/brand-squad/agents/marty-neumeier.md +0 -170
- package/src/squads/brand-squad/agents/miller-sticky-brand.md +0 -180
- package/src/squads/brand-squad/agents/naming-strategist.md +0 -171
- package/src/squads/brand-squad/squad.yaml +0 -117
- package/src/squads/c-level-squad/README.md +0 -29
- package/src/squads/c-level-squad/agents/caio-architect.md +0 -235
- package/src/squads/c-level-squad/agents/cio-engineer.md +0 -209
- package/src/squads/c-level-squad/agents/cmo-architect.md +0 -208
- package/src/squads/c-level-squad/agents/coo-orchestrator.md +0 -193
- package/src/squads/c-level-squad/agents/cto-architect.md +0 -194
- package/src/squads/c-level-squad/agents/vision-chief.md +0 -201
- package/src/squads/c-level-squad/squad.yaml +0 -45
- package/src/squads/claude-code-mastery/README.md +0 -146
- package/src/squads/claude-code-mastery/agents/claude-mastery-chief.md +0 -554
- package/src/squads/claude-code-mastery/agents/config-engineer.md +0 -865
- package/src/squads/claude-code-mastery/agents/hooks-architect.md +0 -1013
- package/src/squads/claude-code-mastery/agents/mcp-integrator.md +0 -791
- package/src/squads/claude-code-mastery/agents/project-integrator.md +0 -1196
- package/src/squads/claude-code-mastery/agents/roadmap-sentinel.md +0 -931
- package/src/squads/claude-code-mastery/agents/skill-craftsman.md +0 -1250
- package/src/squads/claude-code-mastery/agents/swarm-orchestrator.md +0 -1008
- package/src/squads/copy-squad/README.md +0 -65
- package/src/squads/copy-squad/agents/andre-chaperon.md +0 -206
- package/src/squads/copy-squad/agents/ben-settle.md +0 -194
- package/src/squads/copy-squad/agents/claude-hopkins.md +0 -182
- package/src/squads/copy-squad/agents/clayton-makepeace.md +0 -225
- package/src/squads/copy-squad/agents/copy-chief.md +0 -166
- package/src/squads/copy-squad/agents/dan-kennedy.md +0 -202
- package/src/squads/copy-squad/agents/dan-koe.md +0 -223
- package/src/squads/copy-squad/agents/david-deutsch.md +0 -197
- package/src/squads/copy-squad/agents/david-ogilvy.md +0 -198
- package/src/squads/copy-squad/agents/eugene-schwartz.md +0 -238
- package/src/squads/copy-squad/agents/frank-kern.md +0 -195
- package/src/squads/copy-squad/agents/gary-bencivenga.md +0 -197
- package/src/squads/copy-squad/agents/gary-halbert.md +0 -219
- package/src/squads/copy-squad/agents/jim-rutz.md +0 -193
- package/src/squads/copy-squad/agents/joe-sugarman.md +0 -234
- package/src/squads/copy-squad/agents/john-carlton.md +0 -203
- package/src/squads/copy-squad/agents/jon-benson.md +0 -196
- package/src/squads/copy-squad/agents/parris-lampropoulos.md +0 -188
- package/src/squads/copy-squad/agents/robert-collier.md +0 -183
- package/src/squads/copy-squad/agents/russell-brunson.md +0 -229
- package/src/squads/copy-squad/agents/ry-schwartz.md +0 -185
- package/src/squads/copy-squad/agents/stefan-georgi.md +0 -188
- package/src/squads/copy-squad/agents/todd-brown.md +0 -171
- package/src/squads/copy-squad/squad.yaml +0 -87
- package/src/squads/cybersecurity/README.md +0 -38
- package/src/squads/cybersecurity/agents/busterer.md +0 -108
- package/src/squads/cybersecurity/agents/cartographer.md +0 -114
- package/src/squads/cybersecurity/agents/chris-sanders.md +0 -205
- package/src/squads/cybersecurity/agents/command-generator.md +0 -121
- package/src/squads/cybersecurity/agents/cyber-chief.md +0 -120
- package/src/squads/cybersecurity/agents/dirber.md +0 -111
- package/src/squads/cybersecurity/agents/fuzzer.md +0 -121
- package/src/squads/cybersecurity/agents/georgia-weidman.md +0 -178
- package/src/squads/cybersecurity/agents/jim-manico.md +0 -182
- package/src/squads/cybersecurity/agents/marcus-carey.md +0 -200
- package/src/squads/cybersecurity/agents/omar-santos.md +0 -206
- package/src/squads/cybersecurity/agents/peter-kim.md +0 -179
- package/src/squads/cybersecurity/agents/ripper.md +0 -121
- package/src/squads/cybersecurity/agents/rogue.md +0 -116
- package/src/squads/cybersecurity/agents/shannon-runner.md +0 -108
- package/src/squads/cybersecurity/squad.yaml +0 -56
- package/src/squads/data-squad/README.md +0 -30
- package/src/squads/data-squad/agents/avinash-kaushik.md +0 -268
- package/src/squads/data-squad/agents/data-chief.md +0 -167
- package/src/squads/data-squad/agents/david-spinks.md +0 -277
- package/src/squads/data-squad/agents/nick-mehta.md +0 -294
- package/src/squads/data-squad/agents/peter-fader.md +0 -246
- package/src/squads/data-squad/agents/sean-ellis.md +0 -303
- package/src/squads/data-squad/agents/wes-kao.md +0 -268
- package/src/squads/data-squad/squad.yaml +0 -46
- package/src/squads/design-squad/README.md +0 -31
- package/src/squads/design-squad/agents/brad-frost.md +0 -185
- package/src/squads/design-squad/agents/dan-mall.md +0 -178
- package/src/squads/design-squad/agents/dave-malouf.md +0 -198
- package/src/squads/design-squad/agents/design-chief.md +0 -109
- package/src/squads/design-squad/agents/design-system-architect.md +0 -109
- package/src/squads/design-squad/agents/ui-engineer.md +0 -102
- package/src/squads/design-squad/agents/ux-designer.md +0 -105
- package/src/squads/design-squad/agents/visual-generator.md +0 -108
- package/src/squads/design-squad/squad.yaml +0 -48
- package/src/squads/hormozi-squad/README.md +0 -39
- package/src/squads/hormozi-squad/agents/hormozi-ads.md +0 -159
- package/src/squads/hormozi-squad/agents/hormozi-advisor.md +0 -178
- package/src/squads/hormozi-squad/agents/hormozi-audit.md +0 -178
- package/src/squads/hormozi-squad/agents/hormozi-chief.md +0 -111
- package/src/squads/hormozi-squad/agents/hormozi-closer.md +0 -179
- package/src/squads/hormozi-squad/agents/hormozi-content.md +0 -166
- package/src/squads/hormozi-squad/agents/hormozi-copy.md +0 -152
- package/src/squads/hormozi-squad/agents/hormozi-hooks.md +0 -177
- package/src/squads/hormozi-squad/agents/hormozi-launch.md +0 -160
- package/src/squads/hormozi-squad/agents/hormozi-leads.md +0 -198
- package/src/squads/hormozi-squad/agents/hormozi-models.md +0 -191
- package/src/squads/hormozi-squad/agents/hormozi-offers.md +0 -197
- package/src/squads/hormozi-squad/agents/hormozi-pricing.md +0 -151
- package/src/squads/hormozi-squad/agents/hormozi-retention.md +0 -166
- package/src/squads/hormozi-squad/agents/hormozi-scale.md +0 -175
- package/src/squads/hormozi-squad/agents/hormozi-workshop.md +0 -160
- package/src/squads/hormozi-squad/squad.yaml +0 -60
- package/src/squads/movement/README.md +0 -29
- package/src/squads/movement/agents/analista-de-impacto.md +0 -350
- package/src/squads/movement/agents/estrategista-de-ciclo.md +0 -301
- package/src/squads/movement/agents/fenomenologo.md +0 -169
- package/src/squads/movement/agents/identitario.md +0 -265
- package/src/squads/movement/agents/manifestador.md +0 -279
- package/src/squads/movement/agents/movement-architect.md +0 -210
- package/src/squads/movement/agents/movement-chief.md +0 -135
- package/src/squads/movement/squad.yaml +0 -45
- package/src/squads/storytelling/README.md +0 -35
- package/src/squads/storytelling/agents/blake-snyder.md +0 -225
- package/src/squads/storytelling/agents/dan-harmon.md +0 -167
- package/src/squads/storytelling/agents/joseph-campbell.md +0 -184
- package/src/squads/storytelling/agents/keith-johnstone.md +0 -157
- package/src/squads/storytelling/agents/kindra-hall.md +0 -162
- package/src/squads/storytelling/agents/marshall-ganz.md +0 -167
- package/src/squads/storytelling/agents/matthew-dicks.md +0 -152
- package/src/squads/storytelling/agents/nancy-duarte.md +0 -154
- package/src/squads/storytelling/agents/oren-klaff.md +0 -166
- package/src/squads/storytelling/agents/park-howell.md +0 -152
- package/src/squads/storytelling/agents/shawn-coyne.md +0 -208
- package/src/squads/storytelling/agents/story-chief.md +0 -155
- package/src/squads/storytelling/squad.yaml +0 -52
- package/src/squads/traffic-masters/README.md +0 -39
- package/src/squads/traffic-masters/agents/ad-midas.md +0 -149
- package/src/squads/traffic-masters/agents/ads-analyst.md +0 -135
- package/src/squads/traffic-masters/agents/creative-analyst.md +0 -142
- package/src/squads/traffic-masters/agents/depesh-mandalia.md +0 -174
- package/src/squads/traffic-masters/agents/fiscal.md +0 -144
- package/src/squads/traffic-masters/agents/kasim-aslam.md +0 -158
- package/src/squads/traffic-masters/agents/media-buyer.md +0 -159
- package/src/squads/traffic-masters/agents/molly-pittman.md +0 -185
- package/src/squads/traffic-masters/agents/nicholas-kusmich.md +0 -157
- package/src/squads/traffic-masters/agents/pedro-sobral.md +0 -158
- package/src/squads/traffic-masters/agents/performance-analyst.md +0 -135
- package/src/squads/traffic-masters/agents/pixel-specialist.md +0 -144
- package/src/squads/traffic-masters/agents/ralph-burns.md +0 -163
- package/src/squads/traffic-masters/agents/scale-optimizer.md +0 -144
- package/src/squads/traffic-masters/agents/tom-breeze.md +0 -175
- package/src/squads/traffic-masters/agents/traffic-chief.md +0 -97
- package/src/squads/traffic-masters/squad.yaml +0 -59
- package/tools/bundle-web-bundles.js +0 -117
- package/tools/format-workflow-md.js +0 -263
- package/tools/javascript-conventions.md +0 -5
- package/tools/migrate-custom-module-paths.js +0 -124
- package/tools/skill-validator.md +0 -368
- package/tools/validate-sidebar-order.js +0 -388
- package/tools/validate-skills.js +0 -708
- package/tools/validate-svg-changes.sh +0 -356
- /package/tools/installer/{cli-utils.js → banner.js} +0 -0
|
@@ -0,0 +1,267 @@
|
|
|
1
|
+
> taste-skill reference file. Loaded on demand from the SKILL.md index.
|
|
2
|
+
> Cross-references like "Section N" map to sibling files via the index table in ../SKILL.md.
|
|
3
|
+
|
|
4
|
+
## 2. BRIEF → DESIGN SYSTEM MAP
|
|
5
|
+
|
|
6
|
+
Once you have the design read (Section 0) and dials (Section 1), pick the right foundation. Do not invent CSS for things that have an official package. Do not pretend an aesthetic trend is an official system.
|
|
7
|
+
|
|
8
|
+
### 2.A When to reach for a real design system (use official packages)
|
|
9
|
+
| Brief reads as… | Reach for | Why |
|
|
10
|
+
|---|---|---|
|
|
11
|
+
| Microsoft / enterprise SaaS / dashboards | `@fluentui/react-components` or `@fluentui/web-components` | Official Fluent UI, Microsoft tokens, accessibility done |
|
|
12
|
+
| Google-ish UI, Material-flavored product | `@material/web` + Material 3 tokens | Official, theme-able via Material Theming |
|
|
13
|
+
| IBM-style B2B / enterprise analytics | `@carbon/react` + `@carbon/styles` | Official Carbon, mature data-density patterns |
|
|
14
|
+
| Shopify app surfaces | `polaris.js` web components / Polaris React | Required for Shopify admin UI |
|
|
15
|
+
| Atlassian / Jira-style product | `@atlaskit/*` + `@atlaskit/tokens` | Official Atlassian DS |
|
|
16
|
+
| GitHub-style devtool / community page | `@primer/css` or `@primer/react-brand` | Official Primer; Brand variant for marketing |
|
|
17
|
+
| Public-sector UK service | `govuk-frontend` | Legally / regulatorily expected |
|
|
18
|
+
| US public-sector / trust-first | `uswds` | Same |
|
|
19
|
+
| Fast local-business / agency MVP | Bootstrap 5.3 | Boring, fast, works |
|
|
20
|
+
| Modern accessible React foundation | `@radix-ui/themes` | Primitives + polished theme |
|
|
21
|
+
| Modern SaaS where you own the components | shadcn/ui (`npx shadcn@latest add ...`) | You own the code, easy to customise; never ship default state |
|
|
22
|
+
| Tailwind-based modern SaaS / AI marketing | Tailwind v4 utilities + `dark:` variant | Default for indie + small team builds |
|
|
23
|
+
|
|
24
|
+
**Honesty rule:** if the brief reads as one of the systems above, install and use the **official** package. Do not recreate its CSS by hand. Do not import a system's tokens but then override 90% of them.
|
|
25
|
+
|
|
26
|
+
**One system per project.** Do not mix Fluent React with Carbon in the same tree. Do not import shadcn/ui components into a Material 3 app.
|
|
27
|
+
|
|
28
|
+
### 2.B When the brief is an aesthetic, not a system
|
|
29
|
+
For these directions, there is **no single official package**. Build with native CSS + Tailwind + a maintained component library. Be honest in code comments about what is borrowed inspiration vs. official material.
|
|
30
|
+
|
|
31
|
+
| Aesthetic | Honest implementation |
|
|
32
|
+
|---|---|
|
|
33
|
+
| Glassmorphism / "frosted glass" | `backdrop-filter`, layered borders, highlight overlays. Provide solid-fill fallback for `prefers-reduced-transparency`. |
|
|
34
|
+
| Bento (Apple-style tile grids) | CSS Grid with mixed cell sizes. No single library owns this. |
|
|
35
|
+
| Brutalism | Native CSS, monospace, raw borders. No library. |
|
|
36
|
+
| Editorial / magazine | Serif type, asymmetric grid, generous whitespace. No library. |
|
|
37
|
+
| Dark tech / hacker | Mono + accent neon, terminal motifs. No library. |
|
|
38
|
+
| Aurora / mesh gradients | SVG or layered radial gradients. No library. |
|
|
39
|
+
| Kinetic typography | Native CSS animations, scroll-driven animations, GSAP for hijacks. No library. |
|
|
40
|
+
| **Apple Liquid Glass** | Apple documents this for Apple platforms only. **There is no official `liquid-glass.css`.** Web implementations are approximations using `backdrop-filter` + layered borders + highlights. Label clearly as approximation. |
|
|
41
|
+
|
|
42
|
+
---
|
|
43
|
+
|
|
44
|
+
# APPENDICES - Real Source-Backed Reference Material
|
|
45
|
+
|
|
46
|
+
The sections below are vendored reference content. They give the agent real install commands, real canonical doc links, and real working starter snippets for each design system named in Section 2. Use them to ground decisions in production reality, not training-data fiction.
|
|
47
|
+
|
|
48
|
+
## Appendix A - Install Commands per Design System
|
|
49
|
+
|
|
50
|
+
```bash
|
|
51
|
+
# Material Web (Material 3)
|
|
52
|
+
npm install @material/web
|
|
53
|
+
|
|
54
|
+
# Fluent UI React (v9)
|
|
55
|
+
npm install @fluentui/react-components
|
|
56
|
+
|
|
57
|
+
# Fluent UI Web Components (framework-free)
|
|
58
|
+
npm install @fluentui/web-components @fluentui/tokens
|
|
59
|
+
|
|
60
|
+
# IBM Carbon
|
|
61
|
+
npm install @carbon/react @carbon/styles
|
|
62
|
+
|
|
63
|
+
# Radix Themes
|
|
64
|
+
npm install @radix-ui/themes
|
|
65
|
+
|
|
66
|
+
# shadcn/ui (open code, owned components)
|
|
67
|
+
npx shadcn@latest init
|
|
68
|
+
npx shadcn@latest add button card badge separator input
|
|
69
|
+
|
|
70
|
+
# Primer CSS (GitHub product/devtool UI)
|
|
71
|
+
npm install --save @primer/css
|
|
72
|
+
|
|
73
|
+
# Primer Brand (GitHub marketing UI)
|
|
74
|
+
npm install @primer/react-brand
|
|
75
|
+
|
|
76
|
+
# GOV.UK Frontend
|
|
77
|
+
npm install govuk-frontend
|
|
78
|
+
|
|
79
|
+
# USWDS (US Web Design System)
|
|
80
|
+
npm install uswds
|
|
81
|
+
|
|
82
|
+
# Atlassian Design System (Atlaskit)
|
|
83
|
+
yarn add @atlaskit/css-reset @atlaskit/tokens @atlaskit/button @atlaskit/badge @atlaskit/section-message @atlaskit/card
|
|
84
|
+
|
|
85
|
+
# Bootstrap 5.3
|
|
86
|
+
npm install bootstrap
|
|
87
|
+
|
|
88
|
+
# Shopify Polaris Web Components (Shopify apps only)
|
|
89
|
+
# Add this to your app HTML head:
|
|
90
|
+
# <meta name="shopify-api-key" content="%SHOPIFY_API_KEY%" />
|
|
91
|
+
# <script src="https://cdn.shopify.com/shopifycloud/polaris.js"></script>
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
## Appendix B - Canonical Sources (read these before reinventing)
|
|
95
|
+
|
|
96
|
+
### Material Web
|
|
97
|
+
- https://github.com/material-components/material-web
|
|
98
|
+
- https://material-web.dev/theming/material-theming/
|
|
99
|
+
- https://m3.material.io/develop/web
|
|
100
|
+
|
|
101
|
+
### Fluent UI
|
|
102
|
+
- https://fluent2.microsoft.design/get-started/develop
|
|
103
|
+
- https://fluent2.microsoft.design/components/web/react/
|
|
104
|
+
- https://github.com/microsoft/fluentui
|
|
105
|
+
- https://learn.microsoft.com/en-us/fluent-ui/web-components/
|
|
106
|
+
|
|
107
|
+
### Carbon
|
|
108
|
+
- https://carbondesignsystem.com/
|
|
109
|
+
- https://github.com/carbon-design-system/carbon
|
|
110
|
+
- https://carbondesignsystem.com/developing/react-tutorial/overview/
|
|
111
|
+
- https://carbondesignsystem.com/developing/web-components-tutorial/overview/
|
|
112
|
+
|
|
113
|
+
### Shopify Polaris
|
|
114
|
+
- https://shopify.dev/docs/api/app-home/web-components
|
|
115
|
+
- https://github.com/Shopify/polaris-react
|
|
116
|
+
- https://polaris-react.shopify.com/components
|
|
117
|
+
|
|
118
|
+
### Atlassian
|
|
119
|
+
- https://atlassian.design/get-started/develop
|
|
120
|
+
- https://atlassian.design/components/button/examples
|
|
121
|
+
- https://atlaskit.atlassian.com/packages/design-system/button/example/disabled
|
|
122
|
+
- https://atlassian.design/tokens/design-tokens
|
|
123
|
+
|
|
124
|
+
### Primer
|
|
125
|
+
- https://primer.style/
|
|
126
|
+
- https://github.com/primer/css
|
|
127
|
+
- https://github.com/primer/brand
|
|
128
|
+
|
|
129
|
+
### GOV.UK
|
|
130
|
+
- https://design-system.service.gov.uk/components/button/
|
|
131
|
+
- https://design-system.service.gov.uk/styles/layout/
|
|
132
|
+
- https://github.com/alphagov/govuk-frontend
|
|
133
|
+
|
|
134
|
+
### USWDS
|
|
135
|
+
- https://designsystem.digital.gov/documentation/developers/
|
|
136
|
+
- https://designsystem.digital.gov/components/button/
|
|
137
|
+
- https://designsystem.digital.gov/components/card/
|
|
138
|
+
- https://github.com/uswds/uswds
|
|
139
|
+
|
|
140
|
+
### Bootstrap
|
|
141
|
+
- https://getbootstrap.com/docs/5.3/layout/grid/
|
|
142
|
+
- https://getbootstrap.com/docs/5.3/components/card/
|
|
143
|
+
|
|
144
|
+
### Tailwind
|
|
145
|
+
- https://tailwindcss.com/docs/dark-mode
|
|
146
|
+
- https://tailwindcss.com/blog/tailwindcss-v4
|
|
147
|
+
|
|
148
|
+
### Radix
|
|
149
|
+
- https://www.radix-ui.com/themes/docs/components/theme
|
|
150
|
+
- https://www.radix-ui.com/themes/docs/components/card
|
|
151
|
+
- https://github.com/radix-ui/themes
|
|
152
|
+
|
|
153
|
+
### shadcn/ui
|
|
154
|
+
- https://ui.shadcn.com/docs
|
|
155
|
+
- https://ui.shadcn.com/docs/components/card
|
|
156
|
+
- https://github.com/shadcn-ui/ui
|
|
157
|
+
|
|
158
|
+
### Native CSS / W3C standards
|
|
159
|
+
- https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Properties/backdrop-filter
|
|
160
|
+
- https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/At-rules/@media/prefers-color-scheme
|
|
161
|
+
- https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/At-rules/@media/prefers-reduced-motion
|
|
162
|
+
- https://developer.mozilla.org/en-US/docs/Web/CSS/Guides/Grid_layout
|
|
163
|
+
- https://developer.mozilla.org/en-US/docs/Web/CSS/Guides/Scroll-driven_animations
|
|
164
|
+
- https://drafts.csswg.org/scroll-animations-1/
|
|
165
|
+
|
|
166
|
+
### Apple Liquid Glass (Apple platforms only)
|
|
167
|
+
- https://developer.apple.com/design/human-interface-guidelines/materials
|
|
168
|
+
- https://developer.apple.com/documentation/TechnologyOverviews/liquid-glass
|
|
169
|
+
- https://developer.apple.com/documentation/TechnologyOverviews/adopting-liquid-glass
|
|
170
|
+
- https://developer.apple.com/documentation/SwiftUI/Material
|
|
171
|
+
|
|
172
|
+
---
|
|
173
|
+
|
|
174
|
+
## Appendix C - Apple Liquid Glass: Honest Web Approximation
|
|
175
|
+
|
|
176
|
+
Do **not** treat random CSS snippets as official Apple Liquid Glass.
|
|
177
|
+
|
|
178
|
+
### What is official
|
|
179
|
+
Apple documents Liquid Glass inside Apple's Human Interface Guidelines and Developer Documentation for **Apple platforms**. It is a dynamic material used across Apple platform UI. Apple's native implementation belongs to Apple platform APIs and system components, **not a public web CSS package**.
|
|
180
|
+
|
|
181
|
+
Relevant official docs:
|
|
182
|
+
- Apple Human Interface Guidelines → Materials
|
|
183
|
+
- Apple Developer Documentation → Liquid Glass
|
|
184
|
+
- Apple Developer Documentation → Adopting Liquid Glass
|
|
185
|
+
- SwiftUI → Material
|
|
186
|
+
|
|
187
|
+
### What is NOT official
|
|
188
|
+
There is no `liquid-glass.css` from Apple for normal websites.
|
|
189
|
+
|
|
190
|
+
A web approximation can use:
|
|
191
|
+
- `backdrop-filter`
|
|
192
|
+
- transparent backgrounds
|
|
193
|
+
- layered borders
|
|
194
|
+
- highlight overlays
|
|
195
|
+
- gradients
|
|
196
|
+
- motion
|
|
197
|
+
- strong contrast fallbacks
|
|
198
|
+
|
|
199
|
+
But that is **web glassmorphism / frosted-glass approximation**, not official Apple Liquid Glass. Label it as such in comments.
|
|
200
|
+
|
|
201
|
+
### Safer web approximation skeleton
|
|
202
|
+
|
|
203
|
+
```css
|
|
204
|
+
.liquid-glass-web-approx {
|
|
205
|
+
position: relative;
|
|
206
|
+
isolation: isolate;
|
|
207
|
+
overflow: hidden;
|
|
208
|
+
border-radius: 999px;
|
|
209
|
+
border: 1px solid rgb(255 255 255 / .32);
|
|
210
|
+
background:
|
|
211
|
+
linear-gradient(135deg, rgb(255 255 255 / .30), rgb(255 255 255 / .08)),
|
|
212
|
+
rgb(255 255 255 / .12);
|
|
213
|
+
backdrop-filter: blur(24px) saturate(180%) contrast(1.05);
|
|
214
|
+
-webkit-backdrop-filter: blur(24px) saturate(180%) contrast(1.05);
|
|
215
|
+
box-shadow:
|
|
216
|
+
inset 0 1px 0 rgb(255 255 255 / .48),
|
|
217
|
+
inset 0 -1px 0 rgb(255 255 255 / .12),
|
|
218
|
+
0 18px 60px rgb(0 0 0 / .18);
|
|
219
|
+
}
|
|
220
|
+
|
|
221
|
+
.liquid-glass-web-approx::before {
|
|
222
|
+
content: "";
|
|
223
|
+
position: absolute;
|
|
224
|
+
inset: 0;
|
|
225
|
+
z-index: -1;
|
|
226
|
+
border-radius: inherit;
|
|
227
|
+
background:
|
|
228
|
+
radial-gradient(circle at 20% 0%, rgb(255 255 255 / .55), transparent 34%),
|
|
229
|
+
linear-gradient(90deg, rgb(255 255 255 / .18), transparent 42%, rgb(255 255 255 / .14));
|
|
230
|
+
pointer-events: none;
|
|
231
|
+
}
|
|
232
|
+
|
|
233
|
+
.liquid-glass-web-approx::after {
|
|
234
|
+
content: "";
|
|
235
|
+
position: absolute;
|
|
236
|
+
inset: 1px;
|
|
237
|
+
border-radius: inherit;
|
|
238
|
+
border: 1px solid rgb(255 255 255 / .14);
|
|
239
|
+
pointer-events: none;
|
|
240
|
+
}
|
|
241
|
+
|
|
242
|
+
@media (prefers-color-scheme: dark) {
|
|
243
|
+
.liquid-glass-web-approx {
|
|
244
|
+
border-color: rgb(255 255 255 / .18);
|
|
245
|
+
background:
|
|
246
|
+
linear-gradient(135deg, rgb(255 255 255 / .16), rgb(255 255 255 / .04)),
|
|
247
|
+
rgb(15 23 42 / .42);
|
|
248
|
+
box-shadow:
|
|
249
|
+
inset 0 1px 0 rgb(255 255 255 / .22),
|
|
250
|
+
0 18px 60px rgb(0 0 0 / .42);
|
|
251
|
+
}
|
|
252
|
+
}
|
|
253
|
+
|
|
254
|
+
@media (prefers-reduced-transparency: reduce) {
|
|
255
|
+
.liquid-glass-web-approx {
|
|
256
|
+
background: rgb(255 255 255 / .96);
|
|
257
|
+
backdrop-filter: none;
|
|
258
|
+
-webkit-backdrop-filter: none;
|
|
259
|
+
}
|
|
260
|
+
}
|
|
261
|
+
```
|
|
262
|
+
|
|
263
|
+
**Important:** `prefers-reduced-transparency` has uneven browser support; test it. Always provide enough contrast even without blur.
|
|
264
|
+
|
|
265
|
+
---
|
|
266
|
+
|
|
267
|
+
**End of appendices.** Install commands above are reality anchors. The Apple Liquid Glass skeleton is a labeled approximation, not an Apple-issued package. For canonical docs per design system, consult the system's official docs (links in Section 2 plus Appendix B).
|
|
@@ -0,0 +1,167 @@
|
|
|
1
|
+
> taste-skill reference file. Loaded on demand from the SKILL.md index.
|
|
2
|
+
> Cross-references like "Section N" map to sibling files via the index table in ../SKILL.md.
|
|
3
|
+
|
|
4
|
+
## 5. CONTEXT-AWARE PROACTIVITY
|
|
5
|
+
|
|
6
|
+
These are tools, not defaults. Use them when the design read calls for them. **None of these fire automatically.**
|
|
7
|
+
|
|
8
|
+
* **Liquid Glass / Glassmorphism:** Appropriate for premium consumer, Apple-adjacent, luxury brand, or media-overlay vibes. Inappropriate for dashboards, public-sector, or "boring B2B." When used, go beyond `backdrop-blur`: add a 1px inner border (`border-white/10`) and a subtle inner shadow (`shadow-[inset_0_1px_0_rgba(255,255,255,0.1)]`) for physical edge refraction. Provide a solid-fill fallback under `prefers-reduced-transparency`.
|
|
9
|
+
* **Magnetic Micro-physics:** Use when `MOTION_INTENSITY > 5` AND the brief reads premium / playful / agency. Implement EXCLUSIVELY with Motion's `useMotionValue` / `useTransform` outside the React render cycle. Never `useState`. See Section 3.B.
|
|
10
|
+
* **Perpetual Micro-Interactions** (Pulse, Typewriter, Float, Shimmer, Carousel): Use when `MOTION_INTENSITY > 5` AND the section actively benefits from motion (status indicators, live feeds, AI-feel). **Not every card needs an infinite loop.** If a section is informational, leave it still. Apply Spring Physics (`type: "spring", stiffness: 100, damping: 20`) - no linear easing.
|
|
11
|
+
* **"Motion claimed, motion shown."** If `MOTION_INTENSITY > 4`, the page must actually move: entry transitions on hero, scroll-reveal on key sections, hover physics on CTAs, at minimum. A static page that claims `MOTION_INTENSITY: 7` is broken. Conversely, if you cannot ship working motion in the available scope, drop the dial to 3 and ship a clean static page. Never half-build motion that breaks (cut-off ScrollTriggers, jumpy enters, missing cleanups).
|
|
12
|
+
* **MOTION MUST BE MOTIVATED (mandatory).** Before adding any animation, ask: "what does this animation communicate?" Valid answers: hierarchy (drawing attention to the right thing), storytelling (revealing content in sequence that matches a narrative), feedback (acknowledging a user action), state transition (showing something changed). Invalid answer: "it looked cool". GSAP everywhere because GSAP is available is amateur. Each ScrollTrigger, each marquee, each pinned section needs a reason. If you cannot articulate the reason in one sentence, drop the animation.
|
|
13
|
+
* **MARQUEE MAX-ONE-PER-PAGE (mandatory).** Horizontal scrolling text marquees ("logos endlessly scrolling", "manifesto scrolling sideways", "kinetic word strip") are appropriate at most ONCE per page. Two or more marquees on the same page reads as lazy filler. Pick the one section where the marquee actually serves the content; the others get a different layout.
|
|
14
|
+
* **GSAP Sticky-Stack Pattern (when scroll-stack is used).** A "card stack on scroll" must be a REAL sticky-stack, not a sequential reveal list. See Section 5.A below for the canonical code skeleton. Common failure: trigger fires halfway through scroll instead of pinning at viewport top. Fix: `start: "top top"` not `start: "top center"` or `"top 80%"`.
|
|
15
|
+
* **GSAP Horizontal-Pan Pattern (when horizontal scroll-hijack is used).** See Section 5.B below for the canonical skeleton. Common failure: animation starts before the section is pinned, so the user sees half a slide. Same fix: `start: "top top"`, pin the wrapper, scrub the inner track.
|
|
16
|
+
|
|
17
|
+
### 5.A Sticky-Stack - Canonical Skeleton
|
|
18
|
+
|
|
19
|
+
```tsx
|
|
20
|
+
"use client";
|
|
21
|
+
import { useRef, useEffect } from "react";
|
|
22
|
+
import { gsap } from "gsap";
|
|
23
|
+
import { ScrollTrigger } from "gsap/ScrollTrigger";
|
|
24
|
+
import { useReducedMotion } from "motion/react";
|
|
25
|
+
|
|
26
|
+
gsap.registerPlugin(ScrollTrigger);
|
|
27
|
+
|
|
28
|
+
export function StickyStack({ cards }: { cards: React.ReactNode[] }) {
|
|
29
|
+
const ref = useRef<HTMLDivElement>(null);
|
|
30
|
+
const reduce = useReducedMotion();
|
|
31
|
+
|
|
32
|
+
useEffect(() => {
|
|
33
|
+
if (reduce || !ref.current) return;
|
|
34
|
+
const ctx = gsap.context(() => {
|
|
35
|
+
const cardEls = gsap.utils.toArray<HTMLElement>(".stack-card");
|
|
36
|
+
cardEls.forEach((card, i) => {
|
|
37
|
+
if (i === cardEls.length - 1) return;
|
|
38
|
+
ScrollTrigger.create({
|
|
39
|
+
trigger: card,
|
|
40
|
+
start: "top top", // pin at viewport top
|
|
41
|
+
endTrigger: cardEls[cardEls.length - 1],
|
|
42
|
+
end: "top top",
|
|
43
|
+
pin: true,
|
|
44
|
+
pinSpacing: false,
|
|
45
|
+
});
|
|
46
|
+
gsap.to(card, {
|
|
47
|
+
scale: 0.92,
|
|
48
|
+
opacity: 0.55,
|
|
49
|
+
ease: "none",
|
|
50
|
+
scrollTrigger: {
|
|
51
|
+
trigger: cardEls[i + 1],
|
|
52
|
+
start: "top bottom",
|
|
53
|
+
end: "top top",
|
|
54
|
+
scrub: true,
|
|
55
|
+
},
|
|
56
|
+
});
|
|
57
|
+
});
|
|
58
|
+
}, ref);
|
|
59
|
+
return () => ctx.revert();
|
|
60
|
+
}, [reduce]);
|
|
61
|
+
|
|
62
|
+
return (
|
|
63
|
+
<div ref={ref} className="relative">
|
|
64
|
+
{cards.map((card, i) => (
|
|
65
|
+
<div
|
|
66
|
+
key={i}
|
|
67
|
+
className="stack-card sticky top-0 min-h-[100dvh] flex items-center justify-center"
|
|
68
|
+
>
|
|
69
|
+
{card}
|
|
70
|
+
</div>
|
|
71
|
+
))}
|
|
72
|
+
</div>
|
|
73
|
+
);
|
|
74
|
+
}
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
Critical points: `start: "top top"`, `pin: true`, every card except the last is pinned, the scale/opacity transform is driven by the NEXT card's scroll trigger (so previous card shrinks as next one arrives).
|
|
78
|
+
|
|
79
|
+
### 5.B Horizontal-Pan - Canonical Skeleton
|
|
80
|
+
|
|
81
|
+
```tsx
|
|
82
|
+
"use client";
|
|
83
|
+
import { useRef, useEffect } from "react";
|
|
84
|
+
import { gsap } from "gsap";
|
|
85
|
+
import { ScrollTrigger } from "gsap/ScrollTrigger";
|
|
86
|
+
import { useReducedMotion } from "motion/react";
|
|
87
|
+
|
|
88
|
+
gsap.registerPlugin(ScrollTrigger);
|
|
89
|
+
|
|
90
|
+
export function HorizontalPan({ children }: { children: React.ReactNode }) {
|
|
91
|
+
const wrap = useRef<HTMLDivElement>(null);
|
|
92
|
+
const track = useRef<HTMLDivElement>(null);
|
|
93
|
+
const reduce = useReducedMotion();
|
|
94
|
+
|
|
95
|
+
useEffect(() => {
|
|
96
|
+
if (reduce || !wrap.current || !track.current) return;
|
|
97
|
+
const ctx = gsap.context(() => {
|
|
98
|
+
const distance = track.current!.scrollWidth - window.innerWidth;
|
|
99
|
+
gsap.to(track.current, {
|
|
100
|
+
x: -distance,
|
|
101
|
+
ease: "none",
|
|
102
|
+
scrollTrigger: {
|
|
103
|
+
trigger: wrap.current,
|
|
104
|
+
start: "top top", // pin starts when section top hits viewport top
|
|
105
|
+
end: () => `+=${distance}`, // scroll distance = track width minus viewport
|
|
106
|
+
pin: true,
|
|
107
|
+
scrub: 1,
|
|
108
|
+
invalidateOnRefresh: true,
|
|
109
|
+
},
|
|
110
|
+
});
|
|
111
|
+
}, wrap);
|
|
112
|
+
return () => ctx.revert();
|
|
113
|
+
}, [reduce]);
|
|
114
|
+
|
|
115
|
+
return (
|
|
116
|
+
<section ref={wrap} className="relative overflow-hidden">
|
|
117
|
+
<div ref={track} className="flex h-[100dvh] items-center">
|
|
118
|
+
{children}
|
|
119
|
+
</div>
|
|
120
|
+
</section>
|
|
121
|
+
);
|
|
122
|
+
}
|
|
123
|
+
```
|
|
124
|
+
|
|
125
|
+
Critical points: `start: "top top"`, `pin: true`, `end: "+=${distance}"` (scroll length = horizontal travel needed), `scrub: 1`. The wrapper is pinned, the inner track slides horizontally as the user scrolls vertically.
|
|
126
|
+
|
|
127
|
+
### 5.C Scroll-Reveal Stagger - Canonical Skeleton (lighter alternative)
|
|
128
|
+
|
|
129
|
+
For simple "items appear as they enter viewport" (no pinning), prefer Motion's `whileInView` over GSAP - lighter, no ScrollTrigger needed:
|
|
130
|
+
|
|
131
|
+
```tsx
|
|
132
|
+
"use client";
|
|
133
|
+
import { motion, useReducedMotion } from "motion/react";
|
|
134
|
+
|
|
135
|
+
export function RevealStagger({ items }: { items: string[] }) {
|
|
136
|
+
const reduce = useReducedMotion();
|
|
137
|
+
return (
|
|
138
|
+
<ul className="grid gap-6">
|
|
139
|
+
{items.map((item, i) => (
|
|
140
|
+
<motion.li
|
|
141
|
+
key={item}
|
|
142
|
+
initial={reduce ? false : { opacity: 0, y: 24 }}
|
|
143
|
+
whileInView={{ opacity: 1, y: 0 }}
|
|
144
|
+
viewport={{ once: true, amount: 0.3 }}
|
|
145
|
+
transition={{
|
|
146
|
+
duration: 0.6,
|
|
147
|
+
delay: i * 0.06,
|
|
148
|
+
ease: [0.16, 1, 0.3, 1],
|
|
149
|
+
}}
|
|
150
|
+
>
|
|
151
|
+
{item}
|
|
152
|
+
</motion.li>
|
|
153
|
+
))}
|
|
154
|
+
</ul>
|
|
155
|
+
);
|
|
156
|
+
}
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
Use this for: feature lists, testimonial grids, logo walls, anything that just needs "enter on scroll." Save GSAP for actual pin/scrub work.
|
|
160
|
+
|
|
161
|
+
### 5.D Forbidden Animation Patterns
|
|
162
|
+
|
|
163
|
+
* **`window.addEventListener("scroll", ...)`** is banned. It runs on every scroll frame, jank-prone, no batching. Use Motion's `useScroll()`, GSAP's `ScrollTrigger`, IntersectionObserver, or CSS `scroll-driven animations` (`animation-timeline: view()`).
|
|
164
|
+
* **Custom scroll progress calculations using `window.scrollY`** in React state. Same reason. Re-renders on every frame.
|
|
165
|
+
* **`requestAnimationFrame` loops that touch React state.** Use motion values (`useMotionValue` + `useTransform`) instead.
|
|
166
|
+
* **Layout Transitions:** Use Motion's `layout` and `layoutId` props for visible state changes (re-ordering lists, expanding modals, shared elements between routes). Do not wrap static content in `layout` props "for safety" - it costs measurement work.
|
|
167
|
+
* **Staggered Orchestration:** Use `staggerChildren` (Motion) or CSS cascade (`animation-delay: calc(var(--index) * 100ms)`) for reveal moments where sequence matters. For `staggerChildren`, parent (`variants`) and children MUST share the same Client Component tree.
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
> taste-skill reference file. Loaded on demand from the SKILL.md index.
|
|
2
|
+
> Cross-references like "Section N" map to sibling files via the index table in ../SKILL.md.
|
|
3
|
+
|
|
4
|
+
## 10. REFERENCE VOCABULARY (Pattern Names the Agent Should Know)
|
|
5
|
+
|
|
6
|
+
This is a vocabulary, not a library. The agent should KNOW these pattern names to communicate about them, design with them in mind, and reach for them when the design read calls for them. **Implementations and code sketches live in the Block Library (Section 12), which is populated iteratively.**
|
|
7
|
+
|
|
8
|
+
### Hero Paradigms
|
|
9
|
+
* **Asymmetric Split Hero** - Text on one side, asset on the other, generous white space.
|
|
10
|
+
* **Editorial Manifesto Hero** - Large type, no asset, almost-poster.
|
|
11
|
+
* **Video / Media Mask Hero** - Type cut out as mask over video background.
|
|
12
|
+
* **Kinetic-Type Hero** - Animated typography as the primary visual.
|
|
13
|
+
* **Curtain-Reveal Hero** - Hero parts on scroll like a curtain.
|
|
14
|
+
* **Scroll-Pinned Hero** - Hero stays pinned while content scrolls behind.
|
|
15
|
+
|
|
16
|
+
### Navigation & Menus
|
|
17
|
+
* **Mac OS Dock Magnification** - Edge nav, icons scale fluidly on hover.
|
|
18
|
+
* **Magnetic Button** - Pulls toward cursor.
|
|
19
|
+
* **Gooey Menu** - Sub-items detach like viscous liquid.
|
|
20
|
+
* **Dynamic Island** - Morphing pill for status / alerts.
|
|
21
|
+
* **Contextual Radial Menu** - Circular menu expanding at click point.
|
|
22
|
+
* **Floating Speed Dial** - FAB springing into curved secondary actions.
|
|
23
|
+
* **Mega Menu Reveal** - Full-screen dropdown, stagger-fade content.
|
|
24
|
+
|
|
25
|
+
### Layout & Grids
|
|
26
|
+
* **Bento Grid** - Asymmetric tile grouping (Apple Control Center).
|
|
27
|
+
* **Masonry Layout** - Staggered grid, no fixed row height.
|
|
28
|
+
* **Chroma Grid** - Borders / tiles with subtle animating gradients.
|
|
29
|
+
* **Split-Screen Scroll** - Two halves sliding in opposite directions.
|
|
30
|
+
* **Sticky-Stack Sections** - Sections that pin and stack on scroll.
|
|
31
|
+
|
|
32
|
+
### Cards & Containers
|
|
33
|
+
* **Parallax Tilt Card** - 3D tilt tracking mouse coordinates.
|
|
34
|
+
* **Spotlight Border Card** - Borders illuminate under cursor.
|
|
35
|
+
* **Glassmorphism Panel** - Frosted glass with inner refraction.
|
|
36
|
+
* **Holographic Foil Card** - Iridescent rainbow shift on hover.
|
|
37
|
+
* **Tinder Swipe Stack** - Physical card stack, swipe-away.
|
|
38
|
+
* **Morphing Modal** - Button expands into its own dialog.
|
|
39
|
+
|
|
40
|
+
### Scroll Animations
|
|
41
|
+
* **Sticky Scroll Stack** - Cards stick and physically stack.
|
|
42
|
+
* **Horizontal Scroll Hijack** - Vertical scroll → horizontal pan.
|
|
43
|
+
* **Locomotive / Sequence Scroll** - Video / 3D sequence tied to scrollbar.
|
|
44
|
+
* **Zoom Parallax** - Central background image zooming on scroll.
|
|
45
|
+
* **Scroll Progress Path** - SVG line drawing along scroll.
|
|
46
|
+
* **Liquid Swipe Transition** - Page transition like viscous liquid.
|
|
47
|
+
|
|
48
|
+
### Galleries & Media
|
|
49
|
+
* **Dome Gallery** - 3D panoramic gallery.
|
|
50
|
+
* **Coverflow Carousel** - 3D carousel with angled edges.
|
|
51
|
+
* **Drag-to-Pan Grid** - Boundless draggable canvas.
|
|
52
|
+
* **Accordion Image Slider** - Narrow strips expanding on hover.
|
|
53
|
+
* **Hover Image Trail** - Mouse leaves popping image trail.
|
|
54
|
+
* **Glitch Effect Image** - RGB-channel shift on hover.
|
|
55
|
+
|
|
56
|
+
### Typography & Text
|
|
57
|
+
* **Kinetic Marquee** - Endless text bands reversing on scroll.
|
|
58
|
+
* **Text Mask Reveal** - Massive type as transparent window to video.
|
|
59
|
+
* **Text Scramble Effect** - Matrix-style decoding on load / hover.
|
|
60
|
+
* **Circular Text Path** - Text curving along spinning circle.
|
|
61
|
+
* **Gradient Stroke Animation** - Outlined text with running gradient.
|
|
62
|
+
* **Kinetic Typography Grid** - Letters dodging the cursor.
|
|
63
|
+
|
|
64
|
+
### Micro-Interactions & Effects
|
|
65
|
+
* **Particle Explosion Button** - CTA shatters into particles on success.
|
|
66
|
+
* **Liquid Pull-to-Refresh** - Reload indicator like detaching droplets.
|
|
67
|
+
* **Skeleton Shimmer** - Shifting light reflection across placeholders.
|
|
68
|
+
* **Directional Hover-Aware Button** - Fill enters from cursor's exact side.
|
|
69
|
+
* **Ripple Click Effect** - Wave from click coordinates.
|
|
70
|
+
* **Animated SVG Line Drawing** - Vectors drawing themselves in real time.
|
|
71
|
+
* **Mesh Gradient Background** - Organic lava-lamp blobs.
|
|
72
|
+
* **Lens Blur Depth** - Background UI blurred to focus foreground action.
|
|
73
|
+
|
|
74
|
+
### Animation Library Choice
|
|
75
|
+
* **Motion (`motion/react`)** - default for UI / Bento / state-change motion.
|
|
76
|
+
* **GSAP + ScrollTrigger** - for full-page scrolltelling and scroll hijacks. Isolate in dedicated leaf components with `useEffect` cleanup.
|
|
77
|
+
* **Three.js / WebGL** - for canvas backgrounds and 3D scenes. Same isolation rule.
|
|
78
|
+
* **NEVER mix GSAP / Three.js with Motion in the same component tree.** They fight over the same frames.
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
> taste-skill reference file. Loaded on demand from the SKILL.md index.
|
|
2
|
+
> Cross-references like "Section N" map to sibling files via the index table in ../SKILL.md.
|
|
3
|
+
|
|
4
|
+
## 6. PERFORMANCE & ACCESSIBILITY GUARDRAILS
|
|
5
|
+
|
|
6
|
+
### 6.A Hardware Acceleration
|
|
7
|
+
* Animate ONLY `transform` and `opacity`. Never animate `top`, `left`, `width`, `height`.
|
|
8
|
+
* Use `will-change: transform` sparingly - only on elements that will actually animate.
|
|
9
|
+
|
|
10
|
+
### 6.B Reduced Motion (mandatory)
|
|
11
|
+
* **Any motion above `MOTION_INTENSITY > 3` MUST honor `prefers-reduced-motion`.** This is non-negotiable.
|
|
12
|
+
* In Motion: wrap with `useReducedMotion()` and degrade to static.
|
|
13
|
+
* In CSS: gate animations behind `@media (prefers-reduced-motion: no-preference)` or provide an override block under `@media (prefers-reduced-motion: reduce)` that disables.
|
|
14
|
+
* Infinite loops, parallax, scroll-hijack, and magnetic physics MUST collapse to static / instant under reduced motion.
|
|
15
|
+
|
|
16
|
+
### 6.C Dark Mode (mandatory for any consumer-facing page)
|
|
17
|
+
* Design for **both modes from the start**. Never ship light-only or dark-only without explicit user instruction.
|
|
18
|
+
* Use Tailwind `dark:` variant OR CSS variables for tokens. Pick one strategy per project.
|
|
19
|
+
* **Do not prescribe specific dark-mode colors here.** The brief decides. Maintain visual hierarchy, brand identity, and WCAG AA contrast (AAA for body) across both modes.
|
|
20
|
+
* Respect `prefers-color-scheme: dark`. Default to system preference unless the brand insists on one mode.
|
|
21
|
+
|
|
22
|
+
### 6.D Core Web Vitals Targets
|
|
23
|
+
* **LCP** < 2.5s. Hero image must be `next/image priority` or preloaded.
|
|
24
|
+
* **INP** < 200ms. Heavy work off main thread.
|
|
25
|
+
* **CLS** < 0.1. Reserve space for images, fonts, embeds.
|
|
26
|
+
* Run Lighthouse before declaring a page done.
|
|
27
|
+
|
|
28
|
+
### 6.E DOM Cost
|
|
29
|
+
* Apply grain / noise filters EXCLUSIVELY to fixed, `pointer-events-none` pseudo-elements (e.g., `fixed inset-0 z-[60] pointer-events-none`). NEVER on scrolling containers - continuous GPU repaints destroy mobile FPS.
|
|
30
|
+
* Be aware of bundle size. Motion is not tiny. Three.js is large. Lazy-load anything that's not above-the-fold.
|
|
31
|
+
|
|
32
|
+
### 6.F Z-Index Restraint
|
|
33
|
+
NEVER spam arbitrary `z-50` or `z-10`. Use z-index strictly for systemic layer contexts (sticky navbars, modals, overlays, grain). Document the z-index scale in a project constants file.
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
> taste-skill reference file. Loaded on demand from the SKILL.md index.
|
|
2
|
+
> Cross-references like "Section N" map to sibling files via the index table in ../SKILL.md.
|
|
3
|
+
|
|
4
|
+
## 14. FINAL PRE-FLIGHT CHECK
|
|
5
|
+
|
|
6
|
+
Run this matrix before outputting code. This is the last filter.
|
|
7
|
+
|
|
8
|
+
**THIS IS NOT OPTIONAL. Run every box. If any box fails, the output is not done.**
|
|
9
|
+
|
|
10
|
+
- [ ] **Brief inference** declared (Section 0.B one-liner)?
|
|
11
|
+
- [ ] **Dial values** explicit and reasoned from the brief, not silently using baseline?
|
|
12
|
+
- [ ] **Design system** chosen from Section 2 if applicable, or aesthetic labeled honestly?
|
|
13
|
+
- [ ] **Redesign mode** detected and audit performed (if applicable, Section 11)?
|
|
14
|
+
- [ ] **ZERO em-dashes (`—`) anywhere on the page.** Headlines, eyebrows, pills, body, quotes, attribution, captions, buttons, alt text. Zero. (Section 9.G - non-negotiable.)
|
|
15
|
+
- [ ] **Page Theme Lock**: ONE theme (light, dark, or auto) for the whole page. No section flips to inverted mode mid-page (Section 4.11)?
|
|
16
|
+
- [ ] **Color Consistency Lock**: one accent color used identically across all sections (Section 4.2)?
|
|
17
|
+
- [ ] **Shape Consistency Lock**: one corner-radius system applied consistently (Section 4.4)?
|
|
18
|
+
- [ ] **Button Contrast Check**: every CTA text is readable against its background (no white-on-white, WCAG AA 4.5:1)?
|
|
19
|
+
- [ ] **CTA Button Wrap**: no CTA label wraps to 2+ lines at desktop?
|
|
20
|
+
- [ ] **Form Contrast Check**: form inputs, placeholders, focus rings, labels all pass WCAG AA against the section background?
|
|
21
|
+
- [ ] **Serif discipline**: if a serif is used, it is NOT Fraunces or Instrument_Serif (or it is, with explicit brand justification)? Different serif from your previous project?
|
|
22
|
+
- [ ] **Premium-consumer palette check**: if the brief is premium-consumer (cookware / wellness / artisan / luxury), the palette is NOT the AI-default beige+brass+oxblood+espresso family? Different family from your previous premium-consumer project?
|
|
23
|
+
- [ ] **Italic descender clearance**: every italic word with `y g j p q` has `leading-[1.1]` min + `pb-1` reserve?
|
|
24
|
+
- [ ] **Hero fits the viewport**: headline ≤ 2 lines, subtext ≤ 20 words AND ≤ 4 lines, CTA visible without scroll, font scale planned around image?
|
|
25
|
+
- [ ] **Hero top padding**: max `pt-24` at desktop, hero content does not float halfway down the viewport?
|
|
26
|
+
- [ ] **Hero stack discipline**: max 4 text elements in hero (eyebrow OR brand strip, headline, subtext, CTAs)? No tiny tagline below CTAs, no trust micro-strip in hero?
|
|
27
|
+
- [ ] **EYEBROW COUNT (mechanical)**: count instances of `uppercase tracking` micro-labels above section headlines across all components. Count ≤ ceil(sectionCount / 3)? Hero counts as 1.
|
|
28
|
+
- [ ] **Split-Header Ban**: no "left big headline + right small explainer paragraph" pattern as a section header (vertical stack instead)?
|
|
29
|
+
- [ ] **Zigzag Alternation Cap**: no 3+ consecutive sections with the same image+text-split layout?
|
|
30
|
+
- [ ] **No Duplicate CTA Intent**: no two CTAs with the same intent ("Get in touch" + "Let's talk" both on page = Fail)?
|
|
31
|
+
- [ ] **Logo wall = logo only**: no industry / category labels printed below logos?
|
|
32
|
+
- [ ] **Bento Background Diversity**: at least 2-3 bento cells have real visual variation (image, gradient, pattern), not all white-on-white text cards?
|
|
33
|
+
- [ ] **"Used by / Trusted by" logo wall** lives UNDER the hero, not inside it, uses REAL SVG logos (Simple Icons / devicon) or generated SVG marks, NOT plain text wordmarks?
|
|
34
|
+
- [ ] **Copy Self-Audit**: every visible string re-read, no grammatically-broken or AI-hallucinated phrases ("free on its past" type) shipped?
|
|
35
|
+
- [ ] **Motion motivated**: every animation can be justified in one sentence (hierarchy / storytelling / feedback / state transition), no GSAP-for-show?
|
|
36
|
+
- [ ] **Marquee max-one-per-page**: no two horizontal marquees on the same page?
|
|
37
|
+
- [ ] **Navigation on ONE line** at desktop, height ≤ 80px?
|
|
38
|
+
- [ ] **Section-Layout-Repetition** check: no two sections share the same layout family (at least 4 different families across 8 sections)?
|
|
39
|
+
- [ ] **Bento has rhythm AND exact cell count** (N items → N cells, no empty cells in middle or at end)?
|
|
40
|
+
- [ ] **Long lists use the right UI component** (not default `<ul>` with `divide-y` for > 5 items - see Section 4.9 alternatives)?
|
|
41
|
+
- [ ] **Real images used** (gen-tool first, then Picsum-seed, then explicit placeholder slots) - NO div-based fake screenshots, NO hand-rolled decorative SVGs, NO pure-text minimalism?
|
|
42
|
+
- [ ] **No pills/labels overlaid on images** (no `Plate · Brand`, no `Field notes - journal`)?
|
|
43
|
+
- [ ] **No photo-credit captions as decoration** (`Field study no. 12 · Ines Caetano`)?
|
|
44
|
+
- [ ] **No version footers** (`v1.4.2`, `Build 0048`) on marketing pages?
|
|
45
|
+
- [ ] **No micro-meta-sentences** under eyebrows ("Each of these is a feature we ship today...")?
|
|
46
|
+
- [ ] **No decoration text strip at hero bottom** (`BRAND. MOTION. SPATIAL.`)?
|
|
47
|
+
- [ ] **No floating top-right sub-text** in section headings?
|
|
48
|
+
- [ ] **No scoring/progress bars with filled background tracks** as comparison visuals?
|
|
49
|
+
- [ ] **No locale / city-name / time / weather strips** unless brief is genuinely globally-distributed or place-focused?
|
|
50
|
+
- [ ] **No scroll cues** (`Scroll`, `↓ scroll`, `Scroll to explore`)?
|
|
51
|
+
- [ ] **No version labels in hero** (V0.6, BETA, INVITE-ONLY) unless the brief is a launch?
|
|
52
|
+
- [ ] **No section-numbering eyebrows** (`00 / INDEX`, `001 · Capabilities`, `06 · how it works`)?
|
|
53
|
+
- [ ] **No decorative dots** (zero by default, only for real semantic state)?
|
|
54
|
+
- [ ] **No `border-t` + `border-b` on every row** of long lists / spec tables?
|
|
55
|
+
- [ ] **Content density** sane: no 20-row data tables, no fake-precise specs without justification, ≤ 25-word sub-paragraphs by default?
|
|
56
|
+
- [ ] **Quotes ≤ 3 lines** of body, attribution clean (no em-dash)?
|
|
57
|
+
- [ ] **Motion claimed = motion shown**: if `MOTION_INTENSITY > 4`, page actually animates, not just claimed?
|
|
58
|
+
- [ ] **GSAP sticky-stack / horizontal-pan** implemented per Section 5.A / 5.B canonical skeleton (`start: "top top"`, `pin: true`, correct scrub)?
|
|
59
|
+
- [ ] **No `window.addEventListener('scroll')`** - using Motion `useScroll()` / ScrollTrigger / IntersectionObserver / CSS scroll-driven animations only?
|
|
60
|
+
- [ ] **Reduced motion** wrapped for everything `MOTION_INTENSITY > 3`?
|
|
61
|
+
- [ ] **Dark mode** tokens defined and tested in both modes?
|
|
62
|
+
- [ ] **Mobile collapse** explicit (`w-full`, `px-4`, `max-w-7xl mx-auto`) for high-variance layouts?
|
|
63
|
+
- [ ] **Viewport stability**: `min-h-[100dvh]`, never `h-screen`?
|
|
64
|
+
- [ ] **`useEffect` animations** have strict cleanup functions?
|
|
65
|
+
- [ ] **Empty / loading / error** states provided?
|
|
66
|
+
- [ ] **Cards omitted** in favor of spacing where possible?
|
|
67
|
+
- [ ] **Icons** from an allowed library only (Phosphor / HugeIcons / Radix / Tabler), no hand-rolled SVG paths?
|
|
68
|
+
- [ ] **Motion** isolated in client-leaf components with `'use client'` at the top, memoized?
|
|
69
|
+
- [ ] **No AI Tells** from Section 9 (Inter as default, AI-purple, three-equal cards, Jane Doe, Acme, "Quietly in use at")?
|
|
70
|
+
- [ ] **Core Web Vitals** plausibly hit (LCP < 2.5s, INP < 200ms, CLS < 0.1)?
|
|
71
|
+
- [ ] **One design system** per project (no Material + shadcn mixed)?
|
|
72
|
+
|
|
73
|
+
If a single checkbox cannot be honestly ticked, the page is not done. Fix it before delivering.
|