sinapse-ai 9.3.0 → 9.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/.claude/CLAUDE.md +60 -341
- package/.claude/hooks/enforce-architecture-first.py +197 -197
- package/.claude/hooks/enforce-git-push-authority.sh +25 -4
- package/.claude/hooks/mind-clone-governance.py +193 -193
- package/.claude/hooks/read-protection.py +152 -152
- package/.claude/hooks/sql-governance.py +183 -183
- package/.claude/hooks/verify-packages.cjs +83 -0
- package/.claude/hooks/write-path-validation.py +195 -195
- package/.claude/rules/agent-authority.md +6 -0
- package/.claude/rules/agent-handoff.md +5 -0
- package/.claude/rules/cross-squad-routing.md +5 -0
- package/.claude/rules/hook-governance.md +7 -0
- package/.claude/rules/mandatory-delegation.md +24 -0
- package/.claude/rules/mcp-usage.md +3 -1
- package/.claude/rules/project-intelligence.md +63 -0
- package/.claude/rules/response-format.md +4 -0
- package/.claude/rules/safe-collaboration.md +14 -2
- package/.claude/rules/security-data-protection.md +27 -0
- package/.claude/rules/squad-awareness.md +96 -68
- package/.claude/rules/token-economy.md +148 -0
- package/.claude/rules/tool-examples.md +6 -0
- package/.claude/rules/workflow-execution.md +7 -0
- package/.codex/agents/analyst.md +342 -71
- package/.codex/agents/architect.md +533 -68
- package/.codex/agents/data-engineer.md +530 -106
- package/.codex/agents/developer.md +657 -0
- package/.codex/agents/devops.md +639 -69
- package/.codex/agents/product-lead.md +362 -0
- package/.codex/agents/project-lead.md +405 -0
- package/.codex/agents/quality-gate.md +538 -0
- package/.codex/agents/sinapse-orqx.md +9 -7
- package/.codex/agents/sprint-lead.md +315 -0
- package/.codex/agents/squad-creator.md +402 -0
- package/.codex/agents/ux-design-expert.md +523 -0
- package/.codex/delegation-matrix.json +756 -44
- package/.codex/handoff-packet.schema.json +30 -6
- package/.sinapse-ai/core/code-intel/registry-syncer.js +56 -3
- package/.sinapse-ai/core/doctor/checks/agent-memory.js +5 -1
- package/.sinapse-ai/core/doctor/checks/claude-md.js +4 -1
- package/.sinapse-ai/core/doctor/checks/code-intel.js +5 -1
- package/.sinapse-ai/core/doctor/checks/commands-count.js +4 -1
- package/.sinapse-ai/core/doctor/checks/constitution-consistency.js +4 -1
- package/.sinapse-ai/core/doctor/checks/core-config.js +4 -1
- package/.sinapse-ai/core/doctor/checks/entity-registry.js +6 -1
- package/.sinapse-ai/core/doctor/checks/git-hooks.js +5 -1
- package/.sinapse-ai/core/doctor/checks/graph-dashboard.js +4 -1
- package/.sinapse-ai/core/doctor/checks/hooks-claude-count.js +5 -1
- package/.sinapse-ai/core/doctor/checks/ide-sync.js +4 -1
- package/.sinapse-ai/core/doctor/checks/node-version.js +4 -1
- package/.sinapse-ai/core/doctor/checks/npm-packages.js +4 -1
- package/.sinapse-ai/core/doctor/checks/rules-files.js +4 -1
- package/.sinapse-ai/core/doctor/checks/settings-json.js +4 -1
- package/.sinapse-ai/core/doctor/checks/skills-count.js +4 -1
- package/.sinapse-ai/core/doctor/index.js +157 -50
- package/.sinapse-ai/core/ids/registry-updater.js +6 -1
- package/.sinapse-ai/core/logger/index.js +319 -0
- package/.sinapse-ai/core/orchestration/terminal-spawner.js +2 -2
- package/.sinapse-ai/core/telemetry/index.js +247 -0
- package/.sinapse-ai/data/entity-registry.yaml +1060 -808
- package/.sinapse-ai/development/agents/analyst.md +90 -0
- package/.sinapse-ai/development/agents/architect.md +78 -0
- package/.sinapse-ai/development/agents/data-engineer.md +38 -0
- package/.sinapse-ai/development/agents/developer.md +97 -0
- package/.sinapse-ai/development/agents/devops.md +121 -0
- package/.sinapse-ai/development/agents/product-lead.md +27 -0
- package/.sinapse-ai/development/agents/project-lead.md +28 -0
- package/.sinapse-ai/development/agents/quality-gate.md +89 -0
- package/.sinapse-ai/development/agents/sprint-lead/MEMORY.md +8 -0
- package/.sinapse-ai/development/agents/sprint-lead.md +28 -0
- package/.sinapse-ai/development/agents/squad-creator.md +58 -0
- package/.sinapse-ai/development/agents/ux-design-expert.md +28 -0
- package/.sinapse-ai/development/checklists/agent-quality-gate.md +27 -0
- package/.sinapse-ai/development/checklists/brownfield-compatibility-checklist.md +20 -0
- package/.sinapse-ai/development/checklists/code-review-checklist.md +106 -0
- package/.sinapse-ai/development/checklists/issue-triage-checklist.md +9 -0
- package/.sinapse-ai/development/checklists/memory-audit-checklist.md +16 -0
- package/.sinapse-ai/development/checklists/pr-quality-checklist.md +72 -0
- package/.sinapse-ai/development/checklists/security-deployment-checklist.md +54 -0
- package/.sinapse-ai/development/checklists/self-critique-checklist.md +19 -1
- package/.sinapse-ai/development/knowledge-base/agent-communication-protocol.md +127 -0
- package/.sinapse-ai/development/knowledge-base/database-scaling-patterns.md +374 -0
- package/.sinapse-ai/development/knowledge-base/environment-deployment-patterns.md +353 -0
- package/.sinapse-ai/development/knowledge-base/gotchas-patterns.md +224 -0
- package/.sinapse-ai/development/knowledge-base/infrastructure-decision-framework.md +221 -0
- package/.sinapse-ai/development/knowledge-base/security-pre-deploy-checklist.md +410 -0
- package/.sinapse-ai/development/knowledge-base/software-architecture-patterns.md +299 -0
- package/.sinapse-ai/development/knowledge-base/token-economy-guide.md +198 -0
- package/.sinapse-ai/development/scripts/populate-entity-registry.js +5 -1
- package/.sinapse-ai/development/skills/captcha-handler.md +82 -0
- package/.sinapse-ai/development/skills/chrome-brain.md +81 -0
- package/.sinapse-ai/development/skills/debug.md +57 -0
- package/.sinapse-ai/development/skills/deploy-readiness.md +93 -0
- package/.sinapse-ai/development/skills/fast-review.md +69 -0
- package/.sinapse-ai/development/skills/model-router.md +92 -0
- package/.sinapse-ai/development/skills/research-synthesis.md +77 -0
- package/.sinapse-ai/development/skills/security-scan.md +73 -0
- package/.sinapse-ai/development/skills/sinapse-methodology.md +175 -0
- package/.sinapse-ai/development/skills/story-fast-track.md +71 -0
- package/.sinapse-ai/development/skills/verify.md +53 -0
- package/.sinapse-ai/development/tasks/dev-develop-story.md +10 -0
- package/.sinapse-ai/development/tasks/environment-promotion-pipeline.md +582 -0
- package/.sinapse-ai/development/tasks/generate-agent-handoff.md +223 -0
- package/.sinapse-ai/development/tasks/infrastructure-assessment.md +432 -0
- package/.sinapse-ai/development/tasks/load-testing-setup.md +611 -0
- package/.sinapse-ai/development/tasks/observability-blueprint.md +562 -0
- package/.sinapse-ai/development/templates/legal/breach-notification-tmpl.md +113 -0
- package/.sinapse-ai/development/templates/legal/privacy-policy-tmpl.md +93 -0
- package/.sinapse-ai/development/templates/legal/terms-of-service-tmpl.md +85 -0
- package/.sinapse-ai/development/templates/service-template/README.md.hbs +159 -159
- package/.sinapse-ai/development/templates/service-template/__tests__/index.test.ts.hbs +238 -238
- package/.sinapse-ai/development/templates/service-template/client.ts.hbs +404 -404
- package/.sinapse-ai/development/templates/service-template/errors.ts.hbs +183 -183
- package/.sinapse-ai/development/templates/service-template/index.ts.hbs +121 -121
- package/.sinapse-ai/development/templates/service-template/package.json.hbs +88 -88
- package/.sinapse-ai/development/templates/service-template/types.ts.hbs +146 -146
- package/.sinapse-ai/development/templates/squad/agent-template.md +17 -4
- package/.sinapse-ai/development/templates/squad/checklist-template.md +13 -5
- package/.sinapse-ai/development/templates/squad/task-template.md +7 -0
- package/.sinapse-ai/development/templates/squad/workflow-template.yaml +7 -0
- package/.sinapse-ai/development/templates/squad-template/LICENSE +22 -22
- package/.sinapse-ai/development/workflows/fast-track.yaml +87 -0
- package/.sinapse-ai/development/workflows/story-development-cycle.yaml +40 -1
- package/.sinapse-ai/hooks/ids-post-commit.js +22 -0
- package/.sinapse-ai/infrastructure/contracts/compatibility/README.md +42 -0
- package/.sinapse-ai/infrastructure/contracts/compatibility/sinapse-current.yaml +35 -0
- package/.sinapse-ai/infrastructure/scripts/llm-routing/templates/claude-free-tracked.cmd +127 -127
- package/.sinapse-ai/infrastructure/scripts/llm-routing/templates/deepseek-proxy.cmd +71 -71
- package/.sinapse-ai/infrastructure/scripts/llm-routing/templates/deepseek-usage.cmd +51 -51
- package/.sinapse-ai/infrastructure/scripts/pr-review-ai.js +16 -13
- package/.sinapse-ai/infrastructure/scripts/setup-project-infra.js +128 -0
- package/.sinapse-ai/infrastructure/scripts/test-discovery.js +8 -3
- package/.sinapse-ai/infrastructure/scripts/validate-codex-delegation.js +3 -1
- package/.sinapse-ai/infrastructure/scripts/validate-manifest-parity.js +380 -0
- package/.sinapse-ai/infrastructure/scripts/validate-parity.js +76 -25
- package/.sinapse-ai/infrastructure/templates/coderabbit.yaml.template +280 -280
- package/.sinapse-ai/infrastructure/templates/config/env.example +16 -0
- package/.sinapse-ai/infrastructure/templates/config/gitignore-additions.tmpl +59 -0
- package/.sinapse-ai/infrastructure/templates/github/CODEOWNERS.template +12 -0
- package/.sinapse-ai/infrastructure/templates/github/PULL_REQUEST_TEMPLATE.md +29 -0
- package/.sinapse-ai/infrastructure/templates/github/ci-template.yml +77 -0
- package/.sinapse-ai/infrastructure/templates/github/issue-templates/bug_report.md +34 -0
- package/.sinapse-ai/infrastructure/templates/github/issue-templates/feature_request.md +19 -0
- package/.sinapse-ai/infrastructure/templates/github-workflows/ci.yml.template +170 -170
- package/.sinapse-ai/infrastructure/templates/github-workflows/pr-automation.yml.template +331 -331
- package/.sinapse-ai/infrastructure/templates/github-workflows/release.yml.template +197 -197
- package/.sinapse-ai/infrastructure/templates/gitignore/gitignore-brownfield-merge.tmpl +19 -19
- package/.sinapse-ai/infrastructure/templates/gitignore/gitignore-node.tmpl +86 -86
- package/.sinapse-ai/infrastructure/templates/gitignore/gitignore-python.tmpl +146 -146
- package/.sinapse-ai/infrastructure/templates/gitignore/gitignore-sinapse-base.tmpl +64 -64
- package/.sinapse-ai/infrastructure/templates/sinapse-sync.yaml.template +183 -183
- package/.sinapse-ai/install-manifest.yaml +333 -162
- package/.sinapse-ai/local-config.yaml.template +65 -65
- package/.sinapse-ai/monitor/hooks/lib/__init__.py +2 -2
- package/.sinapse-ai/monitor/hooks/lib/enrich.py +59 -59
- package/.sinapse-ai/monitor/hooks/lib/send_event.py +48 -48
- package/.sinapse-ai/monitor/hooks/notification.py +30 -30
- package/.sinapse-ai/monitor/hooks/post_tool_use.py +46 -46
- package/.sinapse-ai/monitor/hooks/pre_compact.py +30 -30
- package/.sinapse-ai/monitor/hooks/pre_tool_use.py +41 -41
- package/.sinapse-ai/monitor/hooks/stop.py +30 -30
- package/.sinapse-ai/monitor/hooks/subagent_stop.py +30 -30
- package/.sinapse-ai/monitor/hooks/user_prompt_submit.py +39 -39
- package/.sinapse-ai/product/templates/adr.hbs +126 -126
- package/.sinapse-ai/product/templates/dbdr.hbs +242 -242
- package/.sinapse-ai/product/templates/epic.hbs +213 -213
- package/.sinapse-ai/product/templates/pmdr.hbs +187 -187
- package/.sinapse-ai/product/templates/prd-v2.0.hbs +217 -217
- package/.sinapse-ai/product/templates/prd.hbs +202 -202
- package/.sinapse-ai/product/templates/story-tmpl.yaml +59 -0
- package/.sinapse-ai/product/templates/story.hbs +264 -264
- package/.sinapse-ai/product/templates/task.hbs +171 -171
- package/.sinapse-ai/product/templates/tmpl-comment-on-examples.sql +159 -159
- package/.sinapse-ai/product/templates/tmpl-migration-script.sql +92 -92
- package/.sinapse-ai/product/templates/tmpl-rls-granular-policies.sql +105 -105
- package/.sinapse-ai/product/templates/tmpl-rls-kiss-policy.sql +11 -11
- package/.sinapse-ai/product/templates/tmpl-rls-roles.sql +136 -136
- package/.sinapse-ai/product/templates/tmpl-rls-simple.sql +78 -78
- package/.sinapse-ai/product/templates/tmpl-rls-tenant.sql +153 -153
- package/.sinapse-ai/product/templates/tmpl-rollback-script.sql +78 -78
- package/.sinapse-ai/product/templates/tmpl-seed-data.sql +141 -141
- package/.sinapse-ai/product/templates/tmpl-smoke-test.sql +17 -17
- package/.sinapse-ai/product/templates/tmpl-staging-copy-merge.sql +140 -140
- package/.sinapse-ai/product/templates/tmpl-stored-proc.sql +141 -141
- package/.sinapse-ai/product/templates/tmpl-trigger.sql +153 -153
- package/.sinapse-ai/product/templates/tmpl-view-materialized.sql +134 -134
- package/.sinapse-ai/product/templates/tmpl-view.sql +178 -178
- package/.sinapse-ai/scripts/diagnostics/health-dashboard/package-lock.json +427 -355
- package/LICENSE +34 -34
- package/README.en.md +167 -20
- package/README.md +190 -22
- package/bin/cli.js +510 -196
- package/bin/postinstall.js +564 -0
- package/bin/sinapse-cli +283 -283
- package/bin/sinapse-graph.js +9 -0
- package/bin/sinapse-init.js +36 -4
- package/bin/sinapse-minimal.js +20 -9
- package/bin/sinapse.js +202 -122
- package/bin/utils/deprecation-warning.js +46 -0
- package/bin/utils/pre-push-safety.js +14 -0
- package/docs/TELEMETRY.md +131 -0
- package/docs/chrome-brain-upgrade-plan.md +624 -0
- package/docs/codex-integration-process.md +22 -0
- package/docs/codex-parity-program.md +27 -0
- package/docs/framework/orqx-plan.md +1 -1
- package/docs/ide-integration.md +36 -0
- package/docs/installation/chrome-brain.md +17 -7
- package/docs/mega-upgrade-orchestration-plan.md +71 -0
- package/docs/pt/contributing.md +20 -0
- package/docs/research-synthesis-for-upgrade.md +511 -0
- package/docs/security-audit-report.md +306 -0
- package/package.json +20 -8
- package/packages/installer/src/config/configure-environment.js +19 -44
- package/packages/installer/src/detection/detect-project-type.js +181 -63
- package/packages/installer/src/installer/manifest-signature.js +32 -17
- package/packages/installer/src/wizard/i18n.js +12 -0
- package/packages/installer/src/wizard/ide-config-generator.js +8 -39
- package/packages/installer/src/wizard/index.js +119 -14
- package/packages/installer/src/wizard/questions.js +2 -3
- package/packages/installer/tests/integration/environment-configuration.test.js +7 -5
- package/packages/installer/tests/unit/detection/detect-project-type.test.js +138 -1
- package/packages/installer/tests/unit/doctor/doctor-orchestrator.test.js +3 -3
- package/packages/sinapse-install/bin/edmcp.js +0 -0
- package/packages/sinapse-install/bin/sinapse-install.js +0 -0
- package/packages/sinapse-pro-cli/bin/sinapse-pro.js +0 -0
- package/scripts/check-markdown-links.py +353 -353
- package/scripts/coverage-report-summary.js +169 -0
- package/scripts/generate-install-manifest.js +6 -2
- package/scripts/release-readiness.js +169 -0
- package/scripts/test-install-matrix-local.sh +153 -0
- package/scripts/validate-install-docs.js +394 -0
- package/scripts/validate-no-external-refs.js +376 -0
- package/scripts/validate-squad-orqx.js +302 -0
- package/scripts/validate-story-meta.js +263 -0
- package/squads/claude-code-mastery/CHANGELOG.md +1 -1
- package/squads/claude-code-mastery/README.md +2 -2
- package/squads/claude-code-mastery/knowledge-base/claude-code-internals-reference.md +927 -0
- package/squads/claude-code-mastery/squad.yaml +1 -1
- package/squads/squad-artdir/README.md +90 -0
- package/squads/squad-artdir/agents/accessibility-guardian.md +184 -0
- package/squads/squad-artdir/agents/artdir-orqx.md +145 -0
- package/squads/squad-artdir/agents/color-psychologist.md +166 -0
- package/squads/squad-artdir/agents/cro-persuasion.md +161 -0
- package/squads/squad-artdir/agents/design-system-architect.md +100 -0
- package/squads/squad-artdir/agents/ia-architect.md +169 -0
- package/squads/squad-artdir/agents/interaction-designer.md +162 -0
- package/squads/squad-artdir/agents/layout-engineer.md +163 -0
- package/squads/squad-artdir/agents/motion-architect.md +185 -0
- package/squads/squad-artdir/agents/platform-aesthetic-director.md +84 -0
- package/squads/squad-artdir/agents/premium-packaging-strategist.md +107 -0
- package/squads/squad-artdir/agents/product-surface-director.md +86 -0
- package/squads/squad-artdir/agents/type-systemist.md +138 -0
- package/squads/squad-artdir/agents/visual-strategist.md +127 -0
- package/squads/squad-artdir/checklists/seven-pillars-validation-checklist.md +172 -0
- package/squads/squad-artdir/knowledge-base/case-nyo-ia-reference.md +289 -0
- package/squads/squad-artdir/knowledge-base/deliverables-templates.md +457 -0
- package/squads/squad-artdir/knowledge-base/motion-technique-catalog.md +247 -0
- package/squads/squad-artdir/knowledge-base/premium-packaging-principles.md +133 -0
- package/squads/squad-artdir/knowledge-base/psychological-toolkit.md +229 -0
- package/squads/squad-artdir/knowledge-base/saas-art-direction-canon.md +242 -0
- package/squads/squad-artdir/knowledge-base/seven-pillars-framework.md +289 -0
- package/squads/squad-artdir/knowledge-base/ten-pillars-framework.md +221 -0
- package/squads/squad-artdir/package.json +20 -0
- package/squads/squad-artdir/squad.yaml +271 -0
- package/squads/squad-artdir/tasks/audit-conversion.md +97 -0
- package/squads/squad-artdir/tasks/audit-drift-multi-surface.md +55 -0
- package/squads/squad-artdir/tasks/consult-saas-canon.md +54 -0
- package/squads/squad-artdir/tasks/create-art-direction-brief.md +110 -0
- package/squads/squad-artdir/tasks/create-premium-packaging-brief.md +61 -0
- package/squads/squad-artdir/tasks/create-wireflow.md +84 -0
- package/squads/squad-artdir/tasks/design-color-system.md +81 -0
- package/squads/squad-artdir/tasks/design-product-surface.md +60 -0
- package/squads/squad-artdir/tasks/design-token-system.md +58 -0
- package/squads/squad-artdir/tasks/diagnose-visual-language.md +92 -0
- package/squads/squad-artdir/tasks/first-5-minutes-choreography.md +65 -0
- package/squads/squad-artdir/tasks/specify-motion-system.md +84 -0
- package/squads/squad-artdir/tasks/validate-against-pillars.md +143 -0
- package/squads/squad-artdir/templates/art-direction-brief-template.md +215 -0
- package/squads/squad-artdir/workflows/conversion-audit-cycle.yaml +78 -0
- package/squads/squad-artdir/workflows/full-art-direction-cycle.yaml +98 -0
- package/squads/squad-artdir/workflows/saas-platform-art-direction-cycle.yaml +174 -0
- package/squads/squad-brand/knowledge-base/ai-visual-generation-canon.md +234 -0
- package/squads/squad-brand/knowledge-base/archetype-brand-mapping.md +12 -1
- package/squads/squad-brand/knowledge-base/brand-activism-cultural-branding.md +216 -0
- package/squads/squad-brand/knowledge-base/brand-audit-criteria.md +58 -0
- package/squads/squad-brand/knowledge-base/brand-digital-strategy.md +188 -0
- package/squads/squad-brand/knowledge-base/brand-legal-ip.md +222 -0
- package/squads/squad-brand/knowledge-base/brand-naming-framework.md +163 -0
- package/squads/squad-brand/knowledge-base/branding-master-reference.md +1001 -0
- package/squads/squad-brand/knowledge-base/color-psychology.md +25 -12
- package/squads/squad-brand/knowledge-base/employer-personal-branding.md +206 -0
- package/squads/squad-brand/knowledge-base/routing-catalog.md +34 -0
- package/squads/squad-brand/knowledge-base/sonic-branding-principles.md +6 -1
- package/squads/squad-brand/knowledge-base/typography-personality.md +34 -0
- package/squads/squad-brand/squad.yaml +20 -6
- package/squads/squad-claude/knowledge-base/context-window-optimization.md +334 -0
- package/squads/squad-claude/knowledge-base/knowledge-architecture-reference.md +403 -0
- package/squads/squad-claude/knowledge-base/memory-systems-reference.md +412 -0
- package/squads/squad-claude/knowledge-base/obsidian-claude-integration.md +423 -0
- package/squads/squad-claude/knowledge-base/retrieval-augmented-generation.md +320 -0
- package/squads/squad-claude/knowledge-base/skill-creation-patterns.md +380 -0
- package/squads/squad-claude/knowledge-base/swarm-orchestration-patterns.md +411 -0
- package/squads/squad-cloning/knowledge-base/clone-quality-assurance.md +211 -0
- package/squads/squad-cloning/knowledge-base/confidence-scoring.md +51 -0
- package/squads/squad-cloning/knowledge-base/cross-squad-deployment.md +47 -0
- package/squads/squad-cloning/knowledge-base/ethical-guidelines.md +237 -0
- package/squads/squad-cloning/knowledge-base/knowledge-graph-for-clones.md +295 -0
- package/squads/squad-cloning/knowledge-base/memory-architecture-for-clones.md +229 -0
- package/squads/squad-cloning/knowledge-base/multi-agent-deployment-patterns.md +320 -0
- package/squads/squad-cloning/knowledge-base/skill-standard-for-clones.md +262 -0
- package/squads/squad-cloning/knowledge-base/sop-extraction-guide.md +243 -0
- package/squads/squad-commercial/knowledge-base/account-based-selling.md +206 -0
- package/squads/squad-commercial/knowledge-base/ai-as-competitive-infrastructure.md +14 -0
- package/squads/squad-commercial/knowledge-base/ai-in-sales.md +199 -0
- package/squads/squad-commercial/knowledge-base/brazilian-sales-context.md +195 -0
- package/squads/squad-commercial/knowledge-base/customer-success-operations.md +83 -2
- package/squads/squad-commercial/knowledge-base/prospecting-pipeline-generation.md +69 -0
- package/squads/squad-commercial/knowledge-base/sales-enablement-playbook.md +260 -0
- package/squads/squad-commercial/knowledge-base/sales-methodology-comparison.md +185 -0
- package/squads/squad-commercial/knowledge-base/sales-revenue-master-reference.md +1123 -0
- package/squads/squad-content/knowledge-base/ai-native-content-loop.md +220 -0
- package/squads/squad-content/knowledge-base/brazilian-content-context.md +176 -0
- package/squads/squad-content/knowledge-base/competitor-analysis-methods.md +40 -1
- package/squads/squad-content/knowledge-base/content-architecture-taxonomy.md +206 -0
- package/squads/squad-content/knowledge-base/content-formats-encyclopedia.md +58 -1
- package/squads/squad-content/knowledge-base/content-references-bibliography.md +130 -0
- package/squads/squad-content/knowledge-base/content-strategy-master-reference.md +1097 -0
- package/squads/squad-content/knowledge-base/content-tech-stack.md +150 -0
- package/squads/squad-content/knowledge-base/copywriting-formulas-library.md +188 -0
- package/squads/squad-content/knowledge-base/email-newsletter-strategy.md +161 -0
- package/squads/squad-content/knowledge-base/platform-algorithm-intelligence.md +86 -1
- package/squads/squad-content/knowledge-base/signal-intelligence-v2.md +234 -0
- package/squads/squad-content/knowledge-base/social-algorithms-master-reference.md +1007 -0
- package/squads/squad-content/knowledge-base/task-ownership-map.md +235 -0
- package/squads/squad-content/knowledge-base/video-audio-content-playbook.md +218 -0
- package/squads/squad-content/squad.yaml +187 -27
- package/squads/squad-copy/knowledge-base/ai-copy-human-loop-canon.md +235 -0
- package/squads/squad-copy/knowledge-base/ai-copy-production.md +254 -0
- package/squads/squad-copy/knowledge-base/brazilian-copywriting-context.md +242 -0
- package/squads/squad-copy/knowledge-base/email-copywriting-system.md +299 -0
- package/squads/squad-copy/knowledge-base/landing-page-copy-architecture.md +267 -0
- package/squads/squad-copy/knowledge-base/power-words-catalog.md +205 -0
- package/squads/squad-copy/knowledge-base/seo-copywriting.md +255 -0
- package/squads/squad-copy/knowledge-base/video-script-copywriting.md +239 -0
- package/squads/squad-copy/squad.yaml +19 -4
- package/squads/squad-council/knowledge-base/brand-strategy-models.md +193 -0
- package/squads/squad-council/knowledge-base/growth-strategy-models.md +267 -0
- package/squads/squad-council/knowledge-base/innovation-disruption-frameworks.md +193 -0
- package/squads/squad-council/knowledge-base/market-analysis-frameworks.md +240 -0
- package/squads/squad-council/knowledge-base/organizational-leadership-models.md +212 -0
- package/squads/squad-council/knowledge-base/sales-strategy-models.md +215 -0
- package/squads/squad-courses/knowledge-base/course-launch-strategy.md +251 -0
- package/squads/squad-courses/knowledge-base/domain-advocacia-curriculum.md +385 -0
- package/squads/squad-courses/knowledge-base/domain-contabilidade-curriculum.md +266 -0
- package/squads/squad-courses/knowledge-base/platform-comparison.md +68 -0
- package/squads/squad-courses/knowledge-base/video-production-guide.md +70 -0
- package/squads/squad-cybersecurity/knowledge-base/cloud-security-reference.md +363 -0
- package/squads/squad-cybersecurity/knowledge-base/compliance-frameworks.md +273 -0
- package/squads/squad-cybersecurity/knowledge-base/database-security.md +438 -0
- package/squads/squad-cybersecurity/knowledge-base/incident-response-playbook.md +420 -0
- package/squads/squad-cybersecurity/knowledge-base/network-security-reference.md +477 -0
- package/squads/squad-cybersecurity/knowledge-base/penetration-testing-methodology.md +350 -0
- package/squads/squad-cybersecurity/knowledge-base/vulnerability-management.md +349 -0
- package/squads/squad-design/knowledge-base/brazilian-design-context.md +223 -0
- package/squads/squad-design/knowledge-base/component-api-patterns.md +208 -4
- package/squads/squad-design/knowledge-base/cross-surface-token-canon.md +209 -0
- package/squads/squad-design/knowledge-base/design-system-master-reference.md +1302 -0
- package/squads/squad-design/knowledge-base/design-systems-frameworks.md +91 -1
- package/squads/squad-design/knowledge-base/responsive-modern-css.md +96 -4
- package/squads/squad-design/knowledge-base/wcag-aria-reference.md +117 -5
- package/squads/squad-design/knowledge-base/web-performance-reference.md +127 -4
- package/squads/squad-design/squad.yaml +19 -4
- package/squads/squad-finance/knowledge-base/brazilian-taxation.md +263 -0
- package/squads/squad-finance/knowledge-base/contabilidade-master-reference.md +998 -0
- package/squads/squad-finance/knowledge-base/finance-master-reference.md +946 -0
- package/squads/squad-finance/knowledge-base/financial-reporting-analysis.md +316 -0
- package/squads/squad-finance/knowledge-base/fintech-brazilian-context.md +242 -0
- package/squads/squad-finance/knowledge-base/fpa-planning-frameworks.md +286 -0
- package/squads/squad-finance/knowledge-base/ma-and-transactions.md +285 -0
- package/squads/squad-finance/knowledge-base/risk-management.md +233 -0
- package/squads/squad-finance/knowledge-base/startups-venture-capital.md +337 -0
- package/squads/squad-growth/knowledge-base/ai-growth-playbook.md +216 -0
- package/squads/squad-growth/knowledge-base/attribution-models.md +78 -0
- package/squads/squad-growth/knowledge-base/brazilian-growth-context.md +208 -0
- package/squads/squad-growth/knowledge-base/community-led-growth.md +175 -0
- package/squads/squad-growth/knowledge-base/content-marketing-flywheel.md +190 -0
- package/squads/squad-growth/knowledge-base/email-lifecycle-framework.md +192 -0
- package/squads/squad-growth/knowledge-base/growth-frameworks-catalog.md +82 -0
- package/squads/squad-growth/knowledge-base/growth-master-reference.md +1168 -0
- package/squads/squad-growth/knowledge-base/routing-catalog.md +53 -11
- package/squads/squad-paidmedia/knowledge-base/audiences-segmentation-deep.md +285 -0
- package/squads/squad-paidmedia/knowledge-base/creative-strategy-deep.md +294 -0
- package/squads/squad-paidmedia/knowledge-base/google-ads-account-architecture.md +87 -0
- package/squads/squad-paidmedia/knowledge-base/meta-ads-campaign-architecture.md +76 -0
- package/squads/squad-paidmedia/knowledge-base/paid-media-metrics-reference.md +117 -0
- package/squads/squad-paidmedia/knowledge-base/paid-traffic-master-reference.md +1308 -0
- package/squads/squad-paidmedia/knowledge-base/routing-catalog.md +95 -18
- package/squads/squad-paidmedia/knowledge-base/traffic-masters-frameworks.md +71 -0
- package/squads/squad-product/knowledge-base/brazilian-product-context.md +284 -0
- package/squads/squad-product/knowledge-base/discovery-methodology-playbook.md +141 -0
- package/squads/squad-product/knowledge-base/pm-frameworks-reference.md +125 -9
- package/squads/squad-product/knowledge-base/product-analytics-formulas.md +72 -0
- package/squads/squad-product/knowledge-base/product-led-growth-reference.md +155 -13
- package/squads/squad-product/knowledge-base/product-market-fit-framework.md +222 -0
- package/squads/squad-product/knowledge-base/routing-catalog.md +32 -0
- package/squads/squad-research/knowledge-base/agentic-second-brain-reference.md +591 -0
- package/squads/squad-research/knowledge-base/ai-augmented-research.md +212 -0
- package/squads/squad-research/knowledge-base/brazilian-market-research-sources.md +197 -0
- package/squads/squad-research/knowledge-base/community-platforms-reference.md +786 -0
- package/squads/squad-research/knowledge-base/community-research-methods.md +194 -0
- package/squads/squad-research/knowledge-base/mixed-methods-research-design.md +168 -0
- package/squads/squad-research/knowledge-base/network-effects-analysis.md +192 -0
- package/squads/squad-research/knowledge-base/qualitative-research-deep-methods.md +202 -0
- package/squads/squad-research/knowledge-base/quantitative-research-methods.md +208 -0
- package/squads/squad-research/knowledge-base/research-frameworks-encyclopedia.md +40 -0
- package/squads/squad-research/knowledge-base/research-synthesis-frameworks.md +223 -0
- package/squads/squad-storytelling/knowledge-base/brand-mythology-framework.md +236 -0
- package/squads/squad-storytelling/knowledge-base/brazilian-storytelling-context.md +237 -0
- package/squads/squad-storytelling/knowledge-base/data-storytelling.md +232 -0
- package/squads/squad-storytelling/knowledge-base/improv-storytelling.md +226 -0
- package/squads/squad-storytelling/knowledge-base/persuasion-narrative-techniques.md +269 -0
- package/squads/squad-storytelling/knowledge-base/social-movement-narratives.md +191 -0
- package/squads/squad-storytelling/knowledge-base/video-storytelling.md +252 -0
- package/.sinapse-ai/core/registry/service-registry.json +0 -6346
- package/.sinapse-ai/data/registry-update-log.jsonl +0 -1307
- package/.sinapse-ai/manifests/agents.csv +0 -29
- package/.sinapse-ai/manifests/tasks.csv +0 -204
- package/.sinapse-ai/manifests/workers.csv +0 -196
- package/squads/claude-code-mastery/data/swarm-orchestration-patterns.yaml +0 -378
- package/squads/squad-animations/knowledge-base/framer-motion-complete-reference.md +0 -710
- package/squads/squad-animations/knowledge-base/web-animations-api-view-transitions.md +0 -478
- package/squads/squad-growth/tasks/calculate-sample-size.md +0 -121
- package/squads/squad-paidmedia/tasks/calculate-sample-size.md +0 -57
|
@@ -0,0 +1,457 @@
|
|
|
1
|
+
# Deliverables Templates
|
|
2
|
+
|
|
3
|
+
> Templates dos 8 deliverables padrao da squad-artdir.
|
|
4
|
+
> Cada deliverable tem estrutura, conteudo obrigatorio e exemplo.
|
|
5
|
+
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
## Deliverable 1: Art Direction Brief
|
|
9
|
+
|
|
10
|
+
### Template
|
|
11
|
+
|
|
12
|
+
```yaml
|
|
13
|
+
# Art Direction Brief: {Project Name}
|
|
14
|
+
# Generated by: squad-artdir (Canvas)
|
|
15
|
+
# Date: {date}
|
|
16
|
+
|
|
17
|
+
## Project Overview
|
|
18
|
+
project_name: "{name}"
|
|
19
|
+
project_type: landing_page | website | campaign | product_page
|
|
20
|
+
client: "{client name}"
|
|
21
|
+
objective: "{primary conversion objective}"
|
|
22
|
+
|
|
23
|
+
## Audience
|
|
24
|
+
primary:
|
|
25
|
+
description: "{who they are}"
|
|
26
|
+
demographics: "{age, role, industry}"
|
|
27
|
+
psychographics: "{values, motivations, pain points}"
|
|
28
|
+
tech_savviness: low | medium | high
|
|
29
|
+
secondary:
|
|
30
|
+
description: "{secondary audience if exists}"
|
|
31
|
+
|
|
32
|
+
## Positioning
|
|
33
|
+
category: "{market category}"
|
|
34
|
+
competitors_visual: ["{comp1}", "{comp2}", "{comp3}"]
|
|
35
|
+
differentiation: "{how we stand apart visually}"
|
|
36
|
+
brand_voice_visual: "{adjectives: bold, minimal, warm, etc.}"
|
|
37
|
+
|
|
38
|
+
## Visual Language (Pilar 1)
|
|
39
|
+
mood:
|
|
40
|
+
adjectives: ["{adj1}", "{adj2}", "{adj3}", "{adj4}", "{adj5}"]
|
|
41
|
+
references: ["{ref_url_1}", "{ref_url_2}", "{ref_url_3}"]
|
|
42
|
+
territory: "{visual territory description}"
|
|
43
|
+
decisions:
|
|
44
|
+
mode: dark | light | adaptive
|
|
45
|
+
mode_rationale: "{psychological justification}"
|
|
46
|
+
density: sparse | balanced | dense
|
|
47
|
+
density_rationale: "{why this density for this audience}"
|
|
48
|
+
temperature: warm | neutral | cool
|
|
49
|
+
weight: light | medium | heavy
|
|
50
|
+
contrast: subtle | balanced | stark
|
|
51
|
+
movement: static | subtle | kinetic
|
|
52
|
+
|
|
53
|
+
## Color System (Pilar 2)
|
|
54
|
+
accent:
|
|
55
|
+
color: "{hex}"
|
|
56
|
+
name: "{descriptive name}"
|
|
57
|
+
neuropsychological_rationale: "{why this color — brain science}"
|
|
58
|
+
neutral:
|
|
59
|
+
base: "{hex}"
|
|
60
|
+
rationale: "{why}"
|
|
61
|
+
semantic: "{success, warning, error, info hex values}"
|
|
62
|
+
von_restorff_application: "{how accent creates isolation effect}"
|
|
63
|
+
wcag_compliance: "{AAA for CTAs, AA for text — verified}"
|
|
64
|
+
|
|
65
|
+
## Typography (Pilar 3)
|
|
66
|
+
heading_font: "{font name}"
|
|
67
|
+
body_font: "{font name}"
|
|
68
|
+
accent_font: "{font name if any}"
|
|
69
|
+
pairing_rationale: "{why this pairing — positioning signal}"
|
|
70
|
+
type_scale: "Major Third (1.25) | Perfect Fourth (1.333) | {custom}"
|
|
71
|
+
fluid: true | false
|
|
72
|
+
special_treatments: ["{treatment 1}", "{treatment 2}"]
|
|
73
|
+
|
|
74
|
+
## Motion System (Pilar 4)
|
|
75
|
+
philosophy: "{what personality does motion express}"
|
|
76
|
+
primary_lib: GSAP | Framer Motion | CSS | Lenis
|
|
77
|
+
smooth_scroll: true | false
|
|
78
|
+
scroll_driven: true | false
|
|
79
|
+
hero_technique: "{frame sequence | text reveal | parallax | static}"
|
|
80
|
+
stagger_default: "{value}ms"
|
|
81
|
+
easing_default: "{name} ({cubic-bezier})"
|
|
82
|
+
performance_budget: "60fps desktop, 30fps mobile"
|
|
83
|
+
reduced_motion: "{fallback strategy}"
|
|
84
|
+
|
|
85
|
+
## Information Architecture (Pilar 5)
|
|
86
|
+
section_sequence:
|
|
87
|
+
- role: HOOK
|
|
88
|
+
description: "{what this section does cognitively}"
|
|
89
|
+
principle: "{psychological principle}"
|
|
90
|
+
- role: PROMISE
|
|
91
|
+
description: "{...}"
|
|
92
|
+
principle: "{...}"
|
|
93
|
+
# ... continue for all sections
|
|
94
|
+
retention_devices: ["{Zeigarnik loops}", "{progressive disclosure}", "{etc}"]
|
|
95
|
+
|
|
96
|
+
## CRO Patterns (Pilar 6)
|
|
97
|
+
patterns_applied:
|
|
98
|
+
- pattern: "{name}"
|
|
99
|
+
location: "{where in page}"
|
|
100
|
+
principle: "{psychological basis}"
|
|
101
|
+
impact_hypothesis: "{metric: direction, rationale}"
|
|
102
|
+
cta_strategy:
|
|
103
|
+
primary: "{text + position}"
|
|
104
|
+
secondary: "{text + position}"
|
|
105
|
+
sticky: true | false
|
|
106
|
+
|
|
107
|
+
## Layout System (Pilar 7)
|
|
108
|
+
grid: "12-column | custom"
|
|
109
|
+
spacing_base: "4px | 8px"
|
|
110
|
+
max_width: "{value}"
|
|
111
|
+
full_bleed_sections: ["{section 1}", "{section 2}"]
|
|
112
|
+
responsive_strategy: "mobile-first with breakpoints at {values}"
|
|
113
|
+
|
|
114
|
+
## Accessibility (Transversal)
|
|
115
|
+
wcag_target: AA | AAA
|
|
116
|
+
reduced_motion: mandatory
|
|
117
|
+
color_blindness: verified
|
|
118
|
+
keyboard_nav: complete
|
|
119
|
+
screen_reader: tested
|
|
120
|
+
|
|
121
|
+
## Impact Hypotheses
|
|
122
|
+
- metric: "{metric_1}"
|
|
123
|
+
prediction: "{direction}"
|
|
124
|
+
rationale: "{psychological principle}"
|
|
125
|
+
- metric: "{metric_2}"
|
|
126
|
+
prediction: "{direction}"
|
|
127
|
+
rationale: "{psychological principle}"
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
---
|
|
131
|
+
|
|
132
|
+
## Deliverable 2: Design Token System
|
|
133
|
+
|
|
134
|
+
### Template
|
|
135
|
+
|
|
136
|
+
```yaml
|
|
137
|
+
# Design Tokens: {Project Name}
|
|
138
|
+
|
|
139
|
+
tokens:
|
|
140
|
+
color:
|
|
141
|
+
accent:
|
|
142
|
+
50: "{hex}"
|
|
143
|
+
100: "{hex}"
|
|
144
|
+
# ... 200-800
|
|
145
|
+
900: "{hex}"
|
|
146
|
+
neutral:
|
|
147
|
+
0: "#ffffff"
|
|
148
|
+
50: "{hex}"
|
|
149
|
+
# ... 100-900
|
|
150
|
+
950: "{hex}"
|
|
151
|
+
semantic:
|
|
152
|
+
success: "{hex}"
|
|
153
|
+
warning: "{hex}"
|
|
154
|
+
error: "{hex}"
|
|
155
|
+
info: "{hex}"
|
|
156
|
+
surface:
|
|
157
|
+
bg-primary: "{hex}"
|
|
158
|
+
bg-secondary: "{hex}"
|
|
159
|
+
bg-tertiary: "{hex}"
|
|
160
|
+
fg-primary: "{hex}"
|
|
161
|
+
fg-secondary: "{hex}"
|
|
162
|
+
fg-tertiary: "{hex}"
|
|
163
|
+
|
|
164
|
+
typography:
|
|
165
|
+
font-heading: "{family}, {fallback}"
|
|
166
|
+
font-body: "{family}, {fallback}"
|
|
167
|
+
font-accent: "{family}, {fallback}"
|
|
168
|
+
scale:
|
|
169
|
+
5xl: "clamp({min}, {preferred}, {max})"
|
|
170
|
+
4xl: "clamp({min}, {preferred}, {max})"
|
|
171
|
+
# ... 3xl, 2xl, xl, lg, base, sm, xs
|
|
172
|
+
tracking:
|
|
173
|
+
tight: "-0.04em"
|
|
174
|
+
normal: "0"
|
|
175
|
+
wide: "0.08em"
|
|
176
|
+
leading:
|
|
177
|
+
tight: "1.1"
|
|
178
|
+
normal: "1.5"
|
|
179
|
+
relaxed: "1.75"
|
|
180
|
+
|
|
181
|
+
spacing:
|
|
182
|
+
1: "0.25rem" # 4px
|
|
183
|
+
2: "0.5rem" # 8px
|
|
184
|
+
3: "0.75rem" # 12px
|
|
185
|
+
4: "1rem" # 16px
|
|
186
|
+
# ... continue scale
|
|
187
|
+
48: "12rem" # 192px
|
|
188
|
+
|
|
189
|
+
motion:
|
|
190
|
+
duration:
|
|
191
|
+
micro: "200ms"
|
|
192
|
+
entrance: "500ms"
|
|
193
|
+
exit: "300ms"
|
|
194
|
+
page: "500ms"
|
|
195
|
+
ambient: "8000ms"
|
|
196
|
+
easing:
|
|
197
|
+
out: "cubic-bezier(0.22, 1, 0.36, 1)"
|
|
198
|
+
in: "cubic-bezier(0.55, 0, 1, 0.45)"
|
|
199
|
+
inOut: "cubic-bezier(0.76, 0, 0.24, 1)"
|
|
200
|
+
dramatic: "cubic-bezier(0.16, 1, 0.3, 1)"
|
|
201
|
+
bounce: "cubic-bezier(0.34, 1.56, 0.64, 1)"
|
|
202
|
+
stagger: "80ms"
|
|
203
|
+
|
|
204
|
+
layout:
|
|
205
|
+
container-max: "{value}"
|
|
206
|
+
grid-columns: 12
|
|
207
|
+
grid-gutter: "{value}"
|
|
208
|
+
border-radius:
|
|
209
|
+
sm: "4px"
|
|
210
|
+
md: "8px"
|
|
211
|
+
lg: "16px"
|
|
212
|
+
full: "9999px"
|
|
213
|
+
```
|
|
214
|
+
|
|
215
|
+
---
|
|
216
|
+
|
|
217
|
+
## Deliverable 3: Motion Spec
|
|
218
|
+
|
|
219
|
+
### Template
|
|
220
|
+
|
|
221
|
+
```yaml
|
|
222
|
+
# Motion Spec: {Project Name}
|
|
223
|
+
|
|
224
|
+
philosophy: "{what personality motion expresses}"
|
|
225
|
+
libs: ["{primary}", "{secondary}"]
|
|
226
|
+
smooth_scroll:
|
|
227
|
+
enabled: true
|
|
228
|
+
lib: Lenis
|
|
229
|
+
config:
|
|
230
|
+
duration: 1.2
|
|
231
|
+
easing: "expo decay"
|
|
232
|
+
|
|
233
|
+
hero:
|
|
234
|
+
technique: "{name}"
|
|
235
|
+
description: "{what it does}"
|
|
236
|
+
trigger: "{page load | scroll | click}"
|
|
237
|
+
duration: "{value}"
|
|
238
|
+
easing: "{value}"
|
|
239
|
+
|
|
240
|
+
sections:
|
|
241
|
+
- name: "{section name}"
|
|
242
|
+
animations:
|
|
243
|
+
- element: "{selector}"
|
|
244
|
+
type: "{fade | slide | scale | clip-path | etc}"
|
|
245
|
+
direction: "{up | left | right | in}"
|
|
246
|
+
duration: "{value}"
|
|
247
|
+
easing: "{value}"
|
|
248
|
+
stagger: "{value if multiple}"
|
|
249
|
+
trigger: "{scroll enter | click | load}"
|
|
250
|
+
scrub: true | false
|
|
251
|
+
pin: true | false
|
|
252
|
+
|
|
253
|
+
interactions:
|
|
254
|
+
- element: "{selector}"
|
|
255
|
+
state: "{hover | active | focus}"
|
|
256
|
+
properties:
|
|
257
|
+
- property: "{transform | opacity | etc}"
|
|
258
|
+
from: "{value}"
|
|
259
|
+
to: "{value}"
|
|
260
|
+
duration: "{value}"
|
|
261
|
+
easing: "{value}"
|
|
262
|
+
|
|
263
|
+
reduced_motion:
|
|
264
|
+
strategy: "{remove all motion | fade only | instant appear}"
|
|
265
|
+
fallbacks:
|
|
266
|
+
- original: "{animation description}"
|
|
267
|
+
reduced: "{simplified version}"
|
|
268
|
+
|
|
269
|
+
performance:
|
|
270
|
+
fps_target: "60fps desktop, 30fps mobile"
|
|
271
|
+
max_simultaneous: 30
|
|
272
|
+
gpu_only: true
|
|
273
|
+
will_change_strategy: "add before, remove after"
|
|
274
|
+
```
|
|
275
|
+
|
|
276
|
+
---
|
|
277
|
+
|
|
278
|
+
## Deliverable 4: Annotated Wireflow
|
|
279
|
+
|
|
280
|
+
### Template
|
|
281
|
+
|
|
282
|
+
```
|
|
283
|
+
# Annotated Wireflow: {Project Name}
|
|
284
|
+
|
|
285
|
+
For each section:
|
|
286
|
+
|
|
287
|
+
## Section {N}: {Name}
|
|
288
|
+
- **Cognitive Role:** {HOOK | PROMISE | PROOF | QUALIFY | EDUCATE | DEMONSTRATE | COMPARE | OVERCOME | CONVERT | REINFORCE}
|
|
289
|
+
- **Psychological Principle:** {principle name + brief explanation}
|
|
290
|
+
- **Content Elements:** {list of content blocks}
|
|
291
|
+
- **Layout:** {full-bleed | contained | split}
|
|
292
|
+
- **Motion:** {entrance animation + scroll behavior}
|
|
293
|
+
- **CTA:** {present? type? position?}
|
|
294
|
+
- **Transition to Next:** {how this section connects to the next cognitively}
|
|
295
|
+
- **Impact Hypothesis:** {metric + direction + rationale}
|
|
296
|
+
```
|
|
297
|
+
|
|
298
|
+
---
|
|
299
|
+
|
|
300
|
+
## Deliverable 5: Component Library Spec
|
|
301
|
+
|
|
302
|
+
### Template
|
|
303
|
+
|
|
304
|
+
```yaml
|
|
305
|
+
# Component Library Spec: {Project Name}
|
|
306
|
+
|
|
307
|
+
components:
|
|
308
|
+
- name: "{ComponentName}"
|
|
309
|
+
description: "{what it does}"
|
|
310
|
+
variants: ["{variant1}", "{variant2}"]
|
|
311
|
+
states:
|
|
312
|
+
default: "{description}"
|
|
313
|
+
hover: "{description + animation}"
|
|
314
|
+
active: "{description + animation}"
|
|
315
|
+
focus: "{description — WCAG compliant}"
|
|
316
|
+
disabled: "{description}"
|
|
317
|
+
loading: "{description + animation}"
|
|
318
|
+
props:
|
|
319
|
+
- name: "{prop}"
|
|
320
|
+
type: "{type}"
|
|
321
|
+
default: "{value}"
|
|
322
|
+
accessibility:
|
|
323
|
+
role: "{ARIA role}"
|
|
324
|
+
label: "{aria-label strategy}"
|
|
325
|
+
keyboard: "{keyboard interaction}"
|
|
326
|
+
tokens_used: ["{token1}", "{token2}"]
|
|
327
|
+
```
|
|
328
|
+
|
|
329
|
+
---
|
|
330
|
+
|
|
331
|
+
## Deliverable 6: CRO Patterns Map
|
|
332
|
+
|
|
333
|
+
### Template
|
|
334
|
+
|
|
335
|
+
```yaml
|
|
336
|
+
# CRO Patterns Map: {Project Name}
|
|
337
|
+
|
|
338
|
+
patterns:
|
|
339
|
+
- name: "{Pattern Name}"
|
|
340
|
+
location: "{Section N — Name}"
|
|
341
|
+
type: "{social_proof | comparison | scarcity | risk_reversal | cta | form | pricing}"
|
|
342
|
+
principle: "{psychological principle}"
|
|
343
|
+
implementation: "{brief description}"
|
|
344
|
+
impact_hypothesis:
|
|
345
|
+
metric: "{CTR | conversion | scroll_depth | time_on_page | bounce_rate}"
|
|
346
|
+
direction: "{increase | decrease}"
|
|
347
|
+
magnitude: "{estimated % change}"
|
|
348
|
+
rationale: "{why this prediction}"
|
|
349
|
+
priority: high | medium | low
|
|
350
|
+
effort: low | medium | high
|
|
351
|
+
```
|
|
352
|
+
|
|
353
|
+
---
|
|
354
|
+
|
|
355
|
+
## Deliverable 7: Implementation Guide
|
|
356
|
+
|
|
357
|
+
### Template
|
|
358
|
+
|
|
359
|
+
```markdown
|
|
360
|
+
# Implementation Guide: {Project Name}
|
|
361
|
+
|
|
362
|
+
## Tech Stack Recommendations
|
|
363
|
+
- Framework: {Next.js | Astro | etc}
|
|
364
|
+
- Animation: {GSAP | Framer Motion | CSS}
|
|
365
|
+
- Scroll: {Lenis | native}
|
|
366
|
+
- Fonts: {loading strategy}
|
|
367
|
+
- Images: {optimization strategy}
|
|
368
|
+
|
|
369
|
+
## Critical Path (implement in this order)
|
|
370
|
+
1. {Setup + layout + typography}
|
|
371
|
+
2. {Color system + components}
|
|
372
|
+
3. {Content + IA structure}
|
|
373
|
+
4. {Motion + interactions}
|
|
374
|
+
5. {CRO patterns}
|
|
375
|
+
6. {Accessibility pass}
|
|
376
|
+
7. {Performance optimization}
|
|
377
|
+
8. {Testing + validation}
|
|
378
|
+
|
|
379
|
+
## Developer Notes
|
|
380
|
+
- {Specific technical considerations}
|
|
381
|
+
- {Performance gotchas}
|
|
382
|
+
- {Accessibility requirements}
|
|
383
|
+
- {Browser support targets}
|
|
384
|
+
```
|
|
385
|
+
|
|
386
|
+
---
|
|
387
|
+
|
|
388
|
+
## Deliverable 8: Validation Checklist
|
|
389
|
+
|
|
390
|
+
### Template
|
|
391
|
+
|
|
392
|
+
```markdown
|
|
393
|
+
# Validation Checklist: {Project Name}
|
|
394
|
+
|
|
395
|
+
## Pilar 1: Visual Hierarchy
|
|
396
|
+
- [ ] Clear focal point per viewport
|
|
397
|
+
- [ ] Consistent heading hierarchy
|
|
398
|
+
- [ ] Von Restorff applied to CTAs
|
|
399
|
+
- [ ] Reading pattern matches content type
|
|
400
|
+
|
|
401
|
+
## Pilar 2: Color System
|
|
402
|
+
- [ ] Max 1 accent + 1 neutral
|
|
403
|
+
- [ ] WCAG AAA (7:1) on CTAs
|
|
404
|
+
- [ ] WCAG AA (4.5:1) on body text
|
|
405
|
+
- [ ] Semantic colors functional
|
|
406
|
+
- [ ] Color-blindness safe
|
|
407
|
+
|
|
408
|
+
## Pilar 3: Typography
|
|
409
|
+
- [ ] Font pairing justified by positioning
|
|
410
|
+
- [ ] Type scale consistent (modular)
|
|
411
|
+
- [ ] Fluid typography with clamp()
|
|
412
|
+
- [ ] Font loading optimized
|
|
413
|
+
|
|
414
|
+
## Pilar 4: Motion
|
|
415
|
+
- [ ] Every animation has psychological justification
|
|
416
|
+
- [ ] GPU-only properties
|
|
417
|
+
- [ ] 60fps desktop, 30fps+ mobile
|
|
418
|
+
- [ ] prefers-reduced-motion fallbacks
|
|
419
|
+
- [ ] No animation > 5s without user control
|
|
420
|
+
|
|
421
|
+
## Pilar 5: Information Architecture
|
|
422
|
+
- [ ] Section sequence follows cognitive roles
|
|
423
|
+
- [ ] Progressive disclosure implemented
|
|
424
|
+
- [ ] Zeigarnik loops present
|
|
425
|
+
- [ ] Peak moment identified
|
|
426
|
+
- [ ] End moment is strong
|
|
427
|
+
|
|
428
|
+
## Pilar 6: CRO Patterns
|
|
429
|
+
- [ ] Social proof present and verifiable
|
|
430
|
+
- [ ] Multiple CTAs at different intent levels
|
|
431
|
+
- [ ] Risk reversal addresses top objections
|
|
432
|
+
- [ ] Comparison framed favorably
|
|
433
|
+
- [ ] Impact hypotheses documented
|
|
434
|
+
|
|
435
|
+
## Pilar 7: Layout & Spacing
|
|
436
|
+
- [ ] 4px/8px baseline grid
|
|
437
|
+
- [ ] Section spacing creates cognitive breathing
|
|
438
|
+
- [ ] Full-bleed vs contained justified
|
|
439
|
+
- [ ] Responsive breakpoints tested
|
|
440
|
+
- [ ] Max content width enforced
|
|
441
|
+
|
|
442
|
+
## WCAG Compliance
|
|
443
|
+
- [ ] Contrast ratios verified
|
|
444
|
+
- [ ] Keyboard navigation complete
|
|
445
|
+
- [ ] Screen reader tested
|
|
446
|
+
- [ ] Focus states visible
|
|
447
|
+
- [ ] Skip link present
|
|
448
|
+
- [ ] Alt text on all images
|
|
449
|
+
- [ ] Form labels present
|
|
450
|
+
|
|
451
|
+
## Performance
|
|
452
|
+
- [ ] Lighthouse score > 90
|
|
453
|
+
- [ ] FCP < 1.5s
|
|
454
|
+
- [ ] LCP < 2.5s
|
|
455
|
+
- [ ] CLS < 0.1
|
|
456
|
+
- [ ] Total JS < 200KB gzipped
|
|
457
|
+
```
|
|
@@ -0,0 +1,247 @@
|
|
|
1
|
+
# Motion Technique Catalog
|
|
2
|
+
|
|
3
|
+
> Catalogo completo de tecnicas de motion para art direction.
|
|
4
|
+
> Cada tecnica inclui: quando usar, lib recomendada, easing, duracao, performance e principio psicologico.
|
|
5
|
+
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
## Categorias de Motion
|
|
9
|
+
|
|
10
|
+
### 1. Micro-interactions (150-400ms)
|
|
11
|
+
|
|
12
|
+
Respostas imediatas a acoes do usuario. Devem ser quase imperceptiveis conscientemente, mas sentidas como "responsividade".
|
|
13
|
+
|
|
14
|
+
| Tecnica | Duracao | Easing | Lib | Trigger | Principio |
|
|
15
|
+
|---------|---------|--------|-----|---------|-----------|
|
|
16
|
+
| Button hover brighten | 200ms | power2.out | CSS | mouseenter | Feedback (affordance) |
|
|
17
|
+
| Button press scale | 100ms | power1.in | CSS | mousedown | Squash & Stretch |
|
|
18
|
+
| Button release bounce | 200ms | back.out(1.2) | CSS | mouseup | Follow Through |
|
|
19
|
+
| Input focus glow | 200ms | power1.out | CSS | focus | Feedback (state change) |
|
|
20
|
+
| Toggle switch | 250ms | back.out(1.4) | GSAP | click | Slow In/Out |
|
|
21
|
+
| Checkbox draw | 300ms | power2.out | SVG/CSS | change | Timing (confirmation) |
|
|
22
|
+
| Tooltip appear | 200ms | power2.out | CSS | hover 300ms delay | Staging |
|
|
23
|
+
| Icon morph | 300ms | power2.inOut | GSAP | state change | Appeal |
|
|
24
|
+
| Link underline grow | 200ms | power2.out | CSS | mouseenter | Secondary Action |
|
|
25
|
+
| Card hover lift | 250ms | power2.out | CSS | mouseenter | Exaggeration (subtle) |
|
|
26
|
+
|
|
27
|
+
**Performance:** CSS transitions only. Nenhum JS necessario para micro-interactions basicas.
|
|
28
|
+
|
|
29
|
+
### 2. Entrance Animations (300-800ms)
|
|
30
|
+
|
|
31
|
+
Elementos que aparecem no viewport. Devem comunicar "eu cheguei" sem atrasar a leitura.
|
|
32
|
+
|
|
33
|
+
| Tecnica | Duracao | Easing | Lib | Trigger | Principio |
|
|
34
|
+
|---------|---------|--------|-----|---------|-----------|
|
|
35
|
+
| Fade in | 400ms | power2.out | CSS/GSAP | scroll enter | Timing (peso minimo) |
|
|
36
|
+
| Slide up + fade | 600ms | power3.out | GSAP | scroll enter | Slow In/Out |
|
|
37
|
+
| Slide left/right + fade | 600ms | power3.out | GSAP | scroll enter | Staging |
|
|
38
|
+
| Scale up + fade | 500ms | power2.out | GSAP | scroll enter | Squash & Stretch |
|
|
39
|
+
| Stagger children | 400ms + 80ms stagger | power2.out | GSAP | scroll enter | Follow Through |
|
|
40
|
+
| Clip-path reveal | 600ms | power3.out | GSAP | scroll enter | Staging (dramatic) |
|
|
41
|
+
| Text split reveal | 800ms | power3.out | GSAP SplitText | scroll enter | Timing + Staging |
|
|
42
|
+
| Counter increment | 1000ms | power2.out | GSAP | scroll enter | Anticipation (buildup) |
|
|
43
|
+
| Draw SVG path | 800ms | power2.inOut | GSAP DrawSVG | scroll enter | Straight Ahead |
|
|
44
|
+
| Blur to sharp | 500ms | power2.out | CSS/GSAP | scroll enter | Staging (focus) |
|
|
45
|
+
|
|
46
|
+
**Performance:** GSAP ScrollTrigger com `start: "top 80%"` como default trigger. Intersection Observer como fallback.
|
|
47
|
+
|
|
48
|
+
### 3. Scroll-Driven Animations (Scrubbed)
|
|
49
|
+
|
|
50
|
+
Animacoes vinculadas ao scroll position. O usuario controla o ritmo — NUNCA auto-play.
|
|
51
|
+
|
|
52
|
+
| Tecnica | Scrub | Pin | Lib | Principio |
|
|
53
|
+
|---------|-------|-----|-----|-----------|
|
|
54
|
+
| Parallax layers | true | false | GSAP ScrollTrigger | Depth (Solid Drawing) |
|
|
55
|
+
| Pinned section | true | true | GSAP ScrollTrigger | Staging (palco fixo) |
|
|
56
|
+
| Frame sequence | true | true | GSAP ScrollTrigger | Cinema (Straight Ahead) |
|
|
57
|
+
| Horizontal scroll | true | true | GSAP ScrollTrigger | Staging (direcional) |
|
|
58
|
+
| Text scramble on scroll | true | true | GSAP + custom | Anticipation |
|
|
59
|
+
| Progress bar | true | false | CSS/JS | Zeigarnik, goal gradient |
|
|
60
|
+
| Counter scrub | true | false | GSAP | Anchoring (numeros) |
|
|
61
|
+
| Clip-path morph | true | true | GSAP | Staging (reveal) |
|
|
62
|
+
| Opacity scrub | true | false | GSAP/CSS | Progressive disclosure |
|
|
63
|
+
| Scale scrub | true | false | GSAP | Exaggeration |
|
|
64
|
+
|
|
65
|
+
**Performance:** `scrub: true` usa `requestAnimationFrame` internamente. `pin: true` usa `position: fixed` — testar em mobile.
|
|
66
|
+
|
|
67
|
+
### 4. Page Transitions (400-800ms)
|
|
68
|
+
|
|
69
|
+
Transicoes entre paginas ou views. Devem comunicar continuidade, nao interrupacao.
|
|
70
|
+
|
|
71
|
+
| Tecnica | Duracao | Easing | Lib | Principio |
|
|
72
|
+
|---------|---------|--------|-----|-----------|
|
|
73
|
+
| Crossfade | 400ms | power2.inOut | GSAP/Barba | Timing (simples) |
|
|
74
|
+
| Slide + fade | 500ms | power2.inOut | GSAP/Barba | Arcs |
|
|
75
|
+
| Clip-path wipe | 600ms | power3.inOut | GSAP | Staging (dramatic) |
|
|
76
|
+
| Scale out/in | 500ms | power2.inOut | GSAP | Exaggeration |
|
|
77
|
+
| Shared element morph | 600ms | power3.out | GSAP FLIP | Continuity |
|
|
78
|
+
| View Transitions API | 300ms | ease-in-out | Native | Timing (native) |
|
|
79
|
+
| Cover reveal (overlay) | 800ms | power3.inOut | GSAP | Staging |
|
|
80
|
+
| Curtain (split) | 600ms | power2.inOut | GSAP | Appeal |
|
|
81
|
+
|
|
82
|
+
**Performance:** Barba.js para MPA, View Transitions API para suporte nativo, GSAP para SPA custom.
|
|
83
|
+
|
|
84
|
+
### 5. Ambient/Background (3000ms+)
|
|
85
|
+
|
|
86
|
+
Motion continuo que cria atmosfera sem demandar atencao. Deve ser percebido subconscientemente.
|
|
87
|
+
|
|
88
|
+
| Tecnica | Duracao | Loop | Lib | Principio |
|
|
89
|
+
|---------|---------|------|-----|-----------|
|
|
90
|
+
| Gradient shift | 8-15s | infinite | CSS | Appeal (atmosphere) |
|
|
91
|
+
| Noise texture | continuous | infinite | GLSL/Canvas | Appeal (texture) |
|
|
92
|
+
| Particle drift | continuous | infinite | Three.js/Canvas | Appeal (life) |
|
|
93
|
+
| Floating elements | 5-10s | infinite | CSS/GSAP | Secondary Action |
|
|
94
|
+
| Glow pulse | 2-4s | infinite | CSS | Secondary Action |
|
|
95
|
+
| Cursor trail | continuous | n/a | JS | Appeal (interactivity) |
|
|
96
|
+
| Live clock | 1s interval | infinite | JS | Secondary Action |
|
|
97
|
+
| Subtle parallax | continuous | n/a | JS/CSS | Solid Drawing (depth) |
|
|
98
|
+
|
|
99
|
+
**Performance:** Ambient animations DEVEM rodar em GPU. Testar FPS em mobile. Desativar em `prefers-reduced-motion`.
|
|
100
|
+
|
|
101
|
+
---
|
|
102
|
+
|
|
103
|
+
## Easing Reference Completo
|
|
104
|
+
|
|
105
|
+
### REGRA: Nunca usar `linear` para motion de UI
|
|
106
|
+
|
|
107
|
+
Linear e aceitavel APENAS para:
|
|
108
|
+
- Marquee text (scroll continuo)
|
|
109
|
+
- Loading spinner rotation
|
|
110
|
+
- Progress bar fill
|
|
111
|
+
- Ambient gradient shift
|
|
112
|
+
|
|
113
|
+
### Easing por Intencao
|
|
114
|
+
|
|
115
|
+
| Intencao | Easing | CSS cubic-bezier | GSAP |
|
|
116
|
+
|----------|--------|-----------------|------|
|
|
117
|
+
| Entrada natural | power2.out | (0.22, 1, 0.36, 1) | "power2.out" |
|
|
118
|
+
| Entrada dramatica | power3.out | (0.16, 1, 0.3, 1) | "power3.out" |
|
|
119
|
+
| Entrada explosiva | expo.out | (0.19, 1, 0.22, 1) | "expo.out" |
|
|
120
|
+
| Saida suave | power2.in | (0.55, 0, 1, 0.45) | "power2.in" |
|
|
121
|
+
| Saida dramatica | power3.in | (0.7, 0, 0.84, 0) | "power3.in" |
|
|
122
|
+
| Transicao equilibrada | power2.inOut | (0.76, 0, 0.24, 1) | "power2.inOut" |
|
|
123
|
+
| Transicao dramatica | power3.inOut | (0.85, 0, 0.15, 1) | "power3.inOut" |
|
|
124
|
+
| Bounce/overshoot | back.out | (0.34, 1.56, 0.64, 1) | "back.out(1.7)" |
|
|
125
|
+
| Elastic | elastic.out | N/A (spring-based) | "elastic.out(1, 0.3)" |
|
|
126
|
+
| Suave/ambient | sine.inOut | (0.37, 0, 0.63, 1) | "sine.inOut" |
|
|
127
|
+
|
|
128
|
+
### Duration Rules
|
|
129
|
+
|
|
130
|
+
| Categoria | Range | Default |
|
|
131
|
+
|-----------|-------|---------|
|
|
132
|
+
| Micro (hover, click) | 100-300ms | 200ms |
|
|
133
|
+
| Entrance (reveal) | 300-800ms | 500ms |
|
|
134
|
+
| Exit (dismiss) | 200-400ms | 300ms |
|
|
135
|
+
| Page transition | 400-800ms | 500ms |
|
|
136
|
+
| Scroll scrub | viewport-based | N/A |
|
|
137
|
+
| Ambient | 3000-15000ms | 8000ms |
|
|
138
|
+
| Stagger delay | 30-120ms | 80ms |
|
|
139
|
+
|
|
140
|
+
---
|
|
141
|
+
|
|
142
|
+
## Performance Rules
|
|
143
|
+
|
|
144
|
+
### GPU-Only Properties
|
|
145
|
+
|
|
146
|
+
| USAR (GPU composited) | NUNCA USAR (layout thrashing) |
|
|
147
|
+
|----------------------|------------------------------|
|
|
148
|
+
| `transform: translate()` | `top`, `left`, `right`, `bottom` |
|
|
149
|
+
| `transform: scale()` | `width`, `height` |
|
|
150
|
+
| `transform: rotate()` | `margin`, `padding` |
|
|
151
|
+
| `opacity` | `font-size` |
|
|
152
|
+
| `filter` (com cuidado) | `border-width` |
|
|
153
|
+
| `clip-path` (GPU em browsers modernos) | `box-shadow` (layout em alguns browsers) |
|
|
154
|
+
|
|
155
|
+
### will-change Strategy
|
|
156
|
+
|
|
157
|
+
```css
|
|
158
|
+
/* Adicionar ANTES da animacao */
|
|
159
|
+
.element-about-to-animate {
|
|
160
|
+
will-change: transform, opacity;
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
/* Remover APOS a animacao */
|
|
164
|
+
.element-finished-animating {
|
|
165
|
+
will-change: auto;
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
/* NUNCA aplicar globalmente */
|
|
169
|
+
* { will-change: transform; } /* PROIBIDO */
|
|
170
|
+
```
|
|
171
|
+
|
|
172
|
+
### Mobile Performance Budget
|
|
173
|
+
|
|
174
|
+
| Metrica | Budget |
|
|
175
|
+
|---------|--------|
|
|
176
|
+
| Elementos animados simultaneamente | Max 30 |
|
|
177
|
+
| Frame rate minimo | 30fps |
|
|
178
|
+
| DOM nodes animados | Max 50 no viewport |
|
|
179
|
+
| Texture size (Three.js) | Max 1024x1024 mobile |
|
|
180
|
+
| Total JS para animacao | Max 100KB gzipped |
|
|
181
|
+
|
|
182
|
+
### Intersection Observer Pattern
|
|
183
|
+
|
|
184
|
+
```javascript
|
|
185
|
+
// CORRETO: Intersection Observer para trigger
|
|
186
|
+
const observer = new IntersectionObserver((entries) => {
|
|
187
|
+
entries.forEach(entry => {
|
|
188
|
+
if (entry.isIntersecting) {
|
|
189
|
+
animateElement(entry.target);
|
|
190
|
+
observer.unobserve(entry.target); // Uma vez
|
|
191
|
+
}
|
|
192
|
+
});
|
|
193
|
+
}, { threshold: 0.2 });
|
|
194
|
+
|
|
195
|
+
// ERRADO: Scroll event listener
|
|
196
|
+
window.addEventListener('scroll', () => { /* NUNCA */ });
|
|
197
|
+
```
|
|
198
|
+
|
|
199
|
+
---
|
|
200
|
+
|
|
201
|
+
## prefers-reduced-motion Strategy
|
|
202
|
+
|
|
203
|
+
### Abordagem Progressiva
|
|
204
|
+
|
|
205
|
+
```css
|
|
206
|
+
/* Nivel 1: Remover transitions e animations */
|
|
207
|
+
@media (prefers-reduced-motion: reduce) {
|
|
208
|
+
*, *::before, *::after {
|
|
209
|
+
animation-duration: 0.01ms !important;
|
|
210
|
+
animation-iteration-count: 1 !important;
|
|
211
|
+
transition-duration: 0.01ms !important;
|
|
212
|
+
scroll-behavior: auto !important;
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
```
|
|
216
|
+
|
|
217
|
+
```javascript
|
|
218
|
+
// Nivel 2: Desabilitar GSAP ScrollTrigger
|
|
219
|
+
const prefersReduced = window.matchMedia('(prefers-reduced-motion: reduce)').matches;
|
|
220
|
+
|
|
221
|
+
if (prefersReduced) {
|
|
222
|
+
// Mostrar todo conteudo sem animacao
|
|
223
|
+
gsap.globalTimeline.clear();
|
|
224
|
+
ScrollTrigger.getAll().forEach(st => st.kill());
|
|
225
|
+
|
|
226
|
+
// Conteudo visivel imediatamente
|
|
227
|
+
document.querySelectorAll('[data-animate]').forEach(el => {
|
|
228
|
+
el.style.opacity = '1';
|
|
229
|
+
el.style.transform = 'none';
|
|
230
|
+
});
|
|
231
|
+
}
|
|
232
|
+
```
|
|
233
|
+
|
|
234
|
+
### Substituicoes
|
|
235
|
+
|
|
236
|
+
| Com Motion | Sem Motion |
|
|
237
|
+
|-----------|-----------|
|
|
238
|
+
| Slide + fade entrance | Instant appear (opacity 1) |
|
|
239
|
+
| Parallax scroll | Static positioning |
|
|
240
|
+
| Frame sequence | First frame static |
|
|
241
|
+
| Text scramble | Text static visible |
|
|
242
|
+
| Marquee scroll | Static grid of items |
|
|
243
|
+
| Custom cursor | System cursor |
|
|
244
|
+
| Hover scale | Hover color change |
|
|
245
|
+
| Page transition | Instant page swap |
|
|
246
|
+
| Loading spinner | "Loading..." text |
|
|
247
|
+
| Background particles | Static background |
|