Not in the top 1,000 by GitHub stars

chendongqi/OPB-Skills

一套覆盖一个公司完整业务的SKILL,适用ClaudeCode,Codex,OpenCode等工具

History

Review weekly changes to SKILL.md before updating. Dates mark the weeks in which we observed each version; checks apply to the recorded commits.

View weekly changes

skills/brand-pr-brand-manager/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/brand-pr-pr-strategist/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/brand-pr-reputation-monitor/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/business-development-business-negotiator/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/business-development-channel-developer/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/business-development-partnership-manager/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/content-altay-writing/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/content-app-namer/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/content-audio-generator/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/content-content-creator/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/content-notebooklm/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/content-opensource-project-article-writer/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/content-seo-optimizer/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/content-video-script-writer/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/customer-support-customer-service/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/customer-support-technical-support/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/data-analytics-business-intelligence/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/data-analytics-data-analyst/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/data-analytics-user-behavior-analyst/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/design-remotion-generator/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/design-ui-ux-pro-max/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/design-visual-designer/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/finance-cost-analyst/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/finance-financial-planner/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/finance-investment-analyst/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/god-skill-creator/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Local scripts

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/human-resources-compensation-designer/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/human-resources-performance-manager/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/human-resources-recruiter/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/information-security-data-security/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/information-security-security-incident-response/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/information-security-security-strategist/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/infrastructure-devops-cloud-architect/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/infrastructure-devops-devops-engineer/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/infrastructure-devops-system-operations/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/learning-development-knowledge-manager/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/learning-development-learning-planner/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/legal-compliance-compliance-checker/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/legal-compliance-contract-reviewer/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/legal-compliance-ip-manager/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/marketing-ad-copywriter/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/marketing-marketing-strategist/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/operations-event-planner/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/operations-user-operations/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/personal-growth-career-planner/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/personal-growth-goal-manager/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/personal-growth-habit-builder/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/personal-growth-health-manager/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/personal-growth-human3.0/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/personal-growth-planning-assistant/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/personal-growth-review-assistant/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/personal-growth-talent-discovery/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/personal-growth-time-manager/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/product-ai-remake/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/product-ideation-pm/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/product-industry-analyst/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/product-market-researcher/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/product-product-researcher/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/project-management-agile-coach/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/project-management-project-planner/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/quality-quality-auditor/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/quality-quality-improvement/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/quality-quality-monitor/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/quality-quality-risk-manager/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/quality-quality-system-builder/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/rnd-android-performance-analyzer/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/rnd-android-system-architect/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/rnd-anr-analyzer/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/rnd-api-design-principles/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Local scripts

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/rnd-aspice-requirements-reviewer/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/rnd-aspice-sys-to-swe/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/rnd-automotive-issue-analyzer/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/rnd-blog-series-planner/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/rnd-cockpit-architect/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/rnd-code-simplify/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/rnd-frontend-code-review/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/rnd-frontend-design/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/rnd-fullstack-architect/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/rnd-postgresql-table-design/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/rnd-requirements-writer/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/rnd-tech-arch-diagrammer/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/rnd-technical-writer/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/sales-crm-manager/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/sales-sales-forecaster/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/sales-sales-strategist/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/strategic-planning-startup-mentor/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/strategic-planning-startup-simulator/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/testing-performance-tester/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/testing-security-tester/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/testing-test-automation-engineer/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/testing-test-case-writer/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

skills/testing-test-manager/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → d58788214d87

No earlier version was observed for comparison.

Compare on GitHub

View on GitHubAdd to my skills

Verified commit d58788214d878cb6415be96fde8e7f1e46466557

134GitHub stars
2stars in 7 days
92skills in this repository
0commits in 30 days

Heat

2.4
  • Star growth, last 7 daysNot available
  • Star growth, last 24 hoursNot available
  • Rank movement, last 7 daysNot available
  • Commits, last 30 daysNot available
  • Accounts asking about it through MCP, last 7 daysNot available
  • Hot votes this weekNot available

Heat never changes the order by stars, and sponsorship never touches it. How heat works

Stars over time

Oct 25, 2026Nov 3, 2026134

30-day change not yet available: not enough history.

Individual skills in this repository

How it works

brand-pr-brand-manager

When your agent uses it

品牌管理助手 - 专业的品牌战略规划与管理专家。适用场景: (1) 品牌定位与差异化策略制定 (2) 品牌架构设计(主品牌/子品牌/背书品牌) (3) 品牌资产盘点与价值评估 (4) 品牌一致性审计与规范检查 (5) 品牌故事与核心叙事构建 (6) 品牌触点体验设计 (7) 品牌健康度诊断与提升建议 触发关键词:品牌定位、品牌策略、品牌架构、品牌故事、品牌资产、品牌审计、品牌一致性、品牌形象、品牌价值、品牌管理

What it loads into context

Frontmatter

172 tokens

Always available to the agent

SKILL.md

1,495 tokens

When the skill is activated

Reference documents

0 tokens

Loaded on request

Token counts are estimates. Scripts run separately; they are not counted as reference context.

The playbook

  1. 核心工作流程
  2. 输出模板
  3. 最佳实践

Files

  • SKILL.mdcore5,086 bytes

No excerpt is shown for this license. Read the source on GitHub.

View the complete source on GitHub

Skills included

  • brand-pr-brand-manager
  • brand-pr-pr-strategist
  • brand-pr-reputation-monitor
  • business-development-business-negotiator
  • business-development-channel-developer
  • business-development-partnership-manager
  • altay-writing
  • app-namer
  • content-audio-generator
  • content-content-creator
  • notebooklm
  • content-opensource-project-article-writer
  • content-seo-optimizer
  • content-video-script-writer
  • customer-support-customer-service
  • customer-support-technical-support
  • data-analytics-business-intelligence
  • data-analytics-data-analyst
  • data-analytics-user-behavior-analyst
  • remotion-best-practices
  • ui-ux-pro-max
  • design-visual-designer
  • finance-cost-analyst
  • finance-financial-planner
  • finance-investment-analyst
  • skill-creator
  • human-resources-compensation-designer
  • human-resources-performance-manager
  • human-resources-recruiter
  • information-security-data-security
  • information-security-security-incident-response
  • information-security-security-strategist
  • infrastructure-devops-cloud-architect
  • infrastructure-devops-devops-engineer
  • infrastructure-devops-system-operations
  • learning-development-knowledge-manager
  • learning-development-learning-planner
  • legal-compliance-compliance-checker
  • legal-compliance-contract-reviewer
  • legal-compliance-ip-manager
  • marketing-ad-copywriter
  • marketing-marketing-strategist
  • operations-event-planner
  • operations-user-operations
  • personal-growth-career-planner
  • personal-growth-goal-manager
  • personal-growth-habit-builder
  • personal-growth-health-manager
  • personal-growth-human3.0
  • personal-growth-planning-assistant
  • personal-growth-review-assistant
  • strategic-planning-talent-discovery
  • personal-growth-time-manager
  • product-ai-remake
  • product-ideation-pm
  • product-industry-analyst
  • product-market-researcher
  • product-product-researcher
  • project-management-agile-coach
  • project-management-project-planner
  • quality-quality-auditor
  • quality-quality-improvement
  • quality-quality-monitor
  • quality-quality-risk-manager
  • quality-quality-system-builder
  • rnd-android-performance-analyzer
  • rnd-android-system-architect
  • rnd-anr-analyzer
  • api-design-principles
  • rnd-aspice-requirements-reviewer
  • aspice-sys-to-swe
  • rnd-automotive-issue-analyzer
  • rnd-blog-series-planner
  • rnd-cockpit-architect
  • rnd-code-simplify
  • frontend-code-review
  • frontend-design
  • rnd-fullstack-architect
  • postgresql-table-design
  • rnd-requirements-writer
  • rnd-tech-arch-diagrammer
  • rnd-technical-writer
  • sales-crm-manager
  • sales-sales-forecaster
  • sales-sales-strategist
  • strategic-planning-startup-mentor
  • strategic-planning-startup-simulator
  • testing-performance-tester
  • testing-security-tester
  • testing-test-automation-engineer
  • testing-test-case-writer
  • testing-test-manager

Repository facts

License
No license detected
Created
Feb 11, 2026
Last pushed
Feb 11, 2026
Forks
25
Open issues
0
Project activity
Slowing

Before you install

Network or broad shell

Automated signals, not a guarantee

Checked Nov 5, 2026

Not fully analyzed: some files were too long, unreadable or missing. This never lowers the level.

Show 52 notes
  • skills/content-notebooklm/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/content-notebooklm/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/content-notebooklm/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/content-notebooklm/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/content-notebooklm/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/content-notebooklm/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/content-notebooklm/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/content-notebooklm/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/content-notebooklm/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/content-notebooklm/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/content-notebooklm/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/content-notebooklm/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/content-notebooklm/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/design-ui-ux-pro-max/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/design-ui-ux-pro-max/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/design-ui-ux-pro-max/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/design-ui-ux-pro-max/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/design-ui-ux-pro-max/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/design-ui-ux-pro-max/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/design-ui-ux-pro-max/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
Show all 865 signals by file

skills/content-notebooklm/AUTHENTICATION.md

  • Executable scriptline 1
    Executable file
  • Network accessline 14
    Playwright/Patchright has a known bug ([#36139](https://github.com/microsoft/playwright/issues/36139)) where **session cookies** (cookies without an `Expires` attribute) do not persist correctly when using `launch_persistent_context()` with
  • Network accessline 37
    But **Python's Playwright API doesn't support this** ([#14949](https://github.com/microsoft/playwright/issues/14949)):
  • Access to secretsline 117
    [Credential-related source omitted]
  • Network accessline 137
    - [microsoft/playwright#36139](https://github.com/microsoft/playwright/issues/36139) - Session cookies not persisting
  • Network accessline 138
    - [microsoft/playwright#14949](https://github.com/microsoft/playwright/issues/14949) - Storage state with persistent context
  • Network accessline 139
    - [StackOverflow Question](https://stackoverflow.com/questions/79641481/) - Session cookie persistence issue

skills/content-notebooklm/README.md

  • Executable scriptline 1
    Executable file
  • Network accessline 5
    **Let [Claude Code](https://github.com/anthropics/claude-code) chat directly with NotebookLM for source-grounded answers based exclusively on your uploaded documents**
  • Network accessline 7
    [![Python](https://img.shields.io/badge/Python-3.8+-blue.svg)](https://www.python.org/)
  • Network accessline 8
    [![Claude Code Skill](https://img.shields.io/badge/Claude%20Code-Skill-purple.svg)](https://www.anthropic.com/news/skills)
  • Network accessline 9
    [![Based on](https://img.shields.io/badge/Based%20on-NotebookLM%20MCP-green.svg)](https://github.com/PleasePrompto/notebooklm-mcp)
  • Network accessline 10
    [![GitHub](https://img.shields.io/github/stars/PleasePrompto/notebooklm-skill?style=social)](https://github.com/PleasePrompto/notebooklm-skill)
  • Network accessline 14
    [Installation](#installation) • [Quick Start](#quick-start) • [Why NotebookLM](#why-notebooklm-not-local-rag) • [How It Works](#how-it-works) • [MCP Alternative](https://github.com/PleasePrompto/notebooklm-mcp)
  • Network accessline 22
    **This skill works ONLY with local [Claude Code](https://github.com/anthropics/claude-code) installations, NOT in the web UI.**
  • Network accessline 24
    The web UI runs skills in a sandbox without network access, which this skill requires for browser automation. You must use [Claude Code](https://github.com/anthropics/claude-code) locally on your machine.
  • Network accessline 30
    When you tell [Claude Code](https://github.com/anthropics/claude-code) to "search through my local documentation", here's what happens:
  • Network accessline 38
    This Claude Code Skill lets [Claude Code](https://github.com/anthropics/claude-code) chat directly with [**NotebookLM**](https://notebooklm.google/) — Google's **source-grounded knowledge base** powered by Gemini 2.5 that provides intellige
  • Network accessline 75
    # 2. Clone this repository cd ~/.claude/skills git clone https://github.com/PleasePrompto/notebooklm-skill notebooklm
  • Network accessline 77
    git clone https://github.com/PleasePrompto/notebooklm-skill notebooklm
  • Network accessline 113
    Go to [notebooklm.google.com](https://notebooklm.google.com) → Create notebook → Upload your docs:
  • Network accessline 147
    This is a **Claude Code Skill** - a local folder containing instructions and scripts that Claude Code can use when needed. Unlike the [MCP server version](https://github.com/PleasePrompto/notebooklm-mcp), this runs directly in Claude Code w
  • Access to secretsline 269
    [Credential-related source omitted]
  • Dangerous shell operationline 347
    rm -rf .venv
  • Network accessline 377
    This skill is inspired by my [**NotebookLM MCP Server**](https://github.com/PleasePrompto/notebooklm-mcp) and provides an alternative implementation as a Claude Code Skill:
  • Network accessline 382
    If you need: - **Persistent sessions** → Use the [MCP Server](https://github.com/PleasePrompto/notebooklm-mcp)
  • Network accessline 383
    - **Persistent sessions** → Use the [MCP Server](https://github.com/PleasePrompto/notebooklm-mcp)
  • Network accessline 384
    - **Multiple tool support** (Codex, Cursor) → Use the [MCP Server](https://github.com/PleasePrompto/notebooklm-mcp)
  • Network accessline 398
    # Get started in 30 seconds cd ~/.claude/skills git clone https://github.com/PleasePrompto/notebooklm-skill notebooklm
  • Network accessline 399
    cd ~/.claude/skills git clone https://github.com/PleasePrompto/notebooklm-skill notebooklm # Open Claude Code: "What are my skills?"
  • Network accessline 400
    git clone https://github.com/PleasePrompto/notebooklm-skill notebooklm
  • Network accessline 408
    Built as a Claude Code Skill adaptation of my [NotebookLM MCP Server](https://github.com/PleasePrompto/notebooklm-mcp)

skills/content-notebooklm/SKILL.md

  • Executable scriptline 1
    Executable file
  • Network accessline 12
    Trigger when user: - Mentions NotebookLM explicitly - Shares NotebookLM URL (`https://notebooklm.google.com/notebook/...`)
  • Network accessline 13
    - Mentions NotebookLM explicitly - Shares NotebookLM URL (`https://notebooklm.google.com/notebook/...`) - Asks to query their notebooks/documentation
  • Network accessline 14
    - Shares NotebookLM URL (`https://notebooklm.google.com/notebook/...`)
  • Network accessline 91
    # Add notebook to library (ALL parameters are REQUIRED!) python scripts/run.py notebook_manager.py add \   --url "https://notebooklm.google.com/notebook/..." \
  • Network accessline 92
    python scripts/run.py notebook_manager.py add    --url "https://notebooklm.google.com/notebook/..."
  • Network accessline 93
    --url "https://notebooklm.google.com/notebook/..." \
  • Network accessline 121
    # Query with notebook URL directly python scripts/run.py ask_question.py --question "..." --notebook-url "https://..."
  • Network accessline 122
    python scripts/run.py ask_question.py --question "..." --notebook-url "https://..."
  • Access to secretsline 196
    [Credential-related source omitted]

skills/content-notebooklm/references/api_reference.md

  • Executable scriptline 1
    Executable file
  • Network accessline 29
    # With direct URL python scripts/run.py ask_question.py --question "..." --notebook-url "https://..."
  • Network accessline 30
    python scripts/run.py ask_question.py --question "..." --notebook-url "https://..."
  • Network accessline 50
    # Then add with discovered info python scripts/run.py notebook_manager.py add \   --url "https://notebooklm.google.com/notebook/..." \
  • Network accessline 51
    python scripts/run.py notebook_manager.py add    --url "https://notebooklm.google.com/notebook/..."
  • Network accessline 52
    --url "https://notebooklm.google.com/notebook/..." \
  • Network accessline 57
    # Direct add (when you know the content) python scripts/run.py notebook_manager.py add \   --url "https://notebooklm.google.com/notebook/..." \
  • Network accessline 58
    python scripts/run.py notebook_manager.py add    --url "https://notebooklm.google.com/notebook/..."
  • Network accessline 59
    --url "https://notebooklm.google.com/notebook/..." \
  • Access to secretsline 191
    [Credential-related source omitted]

skills/content-notebooklm/references/troubleshooting.md

  • Executable scriptline 1
    Executable file
  • Network accessline 146
    # Add notebook if missing python scripts/run.py notebook_manager.py add \   --url "https://notebooklm.google.com/..." \
  • Network accessline 147
    python scripts/run.py notebook_manager.py add    --url "https://notebooklm.google.com/..."
  • Network accessline 148
    --url "https://notebooklm.google.com/..." \
  • Network accessline 208
    # Use proxy if needed export HTTP_PROXY=http://proxy:port
  • Network accessline 209
    export HTTP_PROXY=http://proxy:port
  • Network accessline 210
    export HTTPS_PROXY=http://proxy:port
  • Dangerous shell operationline 226
    rm ~/.claude/skills/notebooklm/data/library.json
  • Dangerous shell operationline 291
    rm -rf .venv
  • Dangerous shell operationline 307
    rm -rf .venv

skills/content-notebooklm/references/usage_patterns.md

  • Executable scriptline 1
    Executable file
  • Network accessline 29
    # Ask: "What topics should I tag it with?" python scripts/run.py notebook_manager.py add \   --url "https://notebooklm.google.com/notebook/..." \
  • Network accessline 30
    python scripts/run.py notebook_manager.py add    --url "https://notebooklm.google.com/notebook/..."
  • Network accessline 31
    --url "https://notebooklm.google.com/notebook/..." \

skills/content-notebooklm/requirements.txt

  • Executable scriptline 1
    Executable file

skills/content-notebooklm/scripts/__init__.py

  • Executable scriptline 1
    #!/usr/bin/env python3

skills/content-notebooklm/scripts/ask_question.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Network accessline 7
    - Persistent browser profile (user_data_dir) for fingerprint consistency - Manual cookie injection from state.json for session cookies (Playwright bug workaround) See: https://github.com/microsoft/playwright/issues/36139
  • Network accessline 8
    - Manual cookie injection from state.json for session cookies (Playwright bug workaround) See: https://github.com/microsoft/playwright/issues/36139 """
  • Network accessline 9
    See: https://github.com/microsoft/playwright/issues/36139
  • Network accessline 80
    page.wait_for_url(re.compile(r"^https://notebooklm\.google\.com/"), timeout=10000)

skills/content-notebooklm/scripts/auth_manager.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Network accessline 8
    - Persistent browser profile (user_data_dir) for fingerprint consistency - Manual cookie injection from state.json for session cookies (Playwright bug workaround) See: https://github.com/microsoft/playwright/issues/36139
  • Network accessline 9
    - Manual cookie injection from state.json for session cookies (Playwright bug workaround) See: https://github.com/microsoft/playwright/issues/36139 """
  • Network accessline 10
    See: https://github.com/microsoft/playwright/issues/36139
  • Network accessline 113
    page = context.new_page()             page.goto("https://notebooklm.google.com", wait_until="domcontentloaded")
  • Network accessline 114
    page.goto("https://notebooklm.google.com", wait_until="domcontentloaded")
  • Network accessline 128
    timeout_ms = int(timeout_minutes * 60 * 1000)                 page.wait_for_url(re.compile(r"^https://notebooklm\.google\.com/"), timeout=timeout_ms)
  • Network accessline 129
    page.wait_for_url(re.compile(r"^https://notebooklm\.google\.com/"), timeout=timeout_ms)
  • Network accessline 259
    page = context.new_page()             page.goto("https://notebooklm.google.com", wait_until="domcontentloaded", timeout=30000)
  • Network accessline 260
    page.goto("https://notebooklm.google.com", wait_until="domcontentloaded", timeout=30000)

skills/content-notebooklm/scripts/browser_session.py

  • Executable scriptline 1
    #!/usr/bin/env python3

skills/content-notebooklm/scripts/browser_utils.py

  • Executable scriptline 1
    Executable file
  • Access to secretsline 41
    [Credential-related source omitted]

skills/content-notebooklm/scripts/cleanup_manager.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Instruction override signalline 260
    '--force',         action='store_true',         help='Skip confirmation prompt'
  • Instruction override signalline 261
    action='store_true',         help='Skip confirmation prompt'     )
  • Instruction override signalline 262
    help='Skip confirmation prompt'

skills/content-notebooklm/scripts/config.py

  • Executable scriptline 1
    Executable file

skills/content-notebooklm/scripts/notebook_manager.py

  • Executable scriptline 1
    #!/usr/bin/env python3

skills/content-notebooklm/scripts/run.py

  • Executable scriptline 1
    #!/usr/bin/env python3

skills/content-notebooklm/scripts/setup_environment.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Network accessline 70
    # Install Chrome for Patchright (not Chromium!)                 # Using real Chrome ensures cross-platform reliability and consistent browser fingerprinting                 # See: https://github.com/Kaliiiiiiiiii-Vinyzu/patchright-python#an
  • Network accessline 72
    # See: https://github.com/Kaliiiiiiiiii-Vinyzu/patchright-python#anti-detection

skills/content-opensource-project-article-writer/references/article-template.md

  • Network accessline 204
    *欢迎来我中的[个人主页](https://home.wonlab.top)找到更多有用的知识和有趣的产品*

skills/design-remotion-generator/rules/assets.md

  • Network accessline 71
    <Img src="https://example.com/image.png" />
  • Network accessline 72
    <Video src="https://remotion.media/video.mp4" />

skills/design-remotion-generator/rules/assets/charts-bar-chart.tsx

  • Executable scriptline 1
    Executable file

skills/design-remotion-generator/rules/assets/text-animations-typewriter.tsx

  • Executable scriptline 1
    Executable file

skills/design-remotion-generator/rules/assets/text-animations-word-highlight.tsx

  • Executable scriptline 1
    Executable file

skills/design-remotion-generator/rules/audio.md

  • Network accessline 38
    <Audio src="https://remotion.media/audio.mp3" />

skills/design-remotion-generator/rules/calculate-metadata.md

  • Network accessline 13
    <Composition id="MyComp" component={MyComponent} durationInFrames={300} fps={30} width={1920} height={1080} defaultProps={{videoSrc: 'https://remotion.media/video.mp4'}} calculateMetadata={calculateMetadata} />
  • Network accessline 79
    const calculateMetadata: CalculateMetadataFunction<Props> = async ({props, abortSignal}) => {   const response = await fetch(props.dataUrl, {signal: abortSignal});
  • Network accessline 80
    const response = await fetch(props.dataUrl, {signal: abortSignal});

skills/design-remotion-generator/rules/can-decode.md

  • Network accessline 50
    const src = "https://remotion.media/video.mp4";

skills/design-remotion-generator/rules/compositions.md

  • Network accessline 99
    const calculateMetadata: CalculateMetadataFunction<MyCompositionProps> = async ({props, abortSignal}) => {   const data = await fetch(`https://api.example.com/video/${props.videoId}`, {
  • Network accessline 100
    const data = await fetch(`https://api.example.com/video/${props.videoId}`, {

skills/design-remotion-generator/rules/extract-frames.md

  • Network accessline 108
    await extractFrames({   src: "https://remotion.media/video.mp4",
  • Network accessline 109
    src: "https://remotion.media/video.mp4",
  • Network accessline 131
    await extractFrames({   src: "https://remotion.media/video.mp4",
  • Network accessline 132
    src: "https://remotion.media/video.mp4",
  • Network accessline 170
    try {   await extractFrames({     src: "https://remotion.media/video.mp4",
  • Network accessline 171
    await extractFrames({     src: "https://remotion.media/video.mp4",     timestampsInSeconds: [0, 1, 2, 3, 4],
  • Network accessline 172
    src: "https://remotion.media/video.mp4",
  • Network accessline 208
    await Promise.race([     extractFrames({       src: "https://remotion.media/video.mp4",
  • Network accessline 209
    extractFrames({       src: "https://remotion.media/video.mp4",       timestampsInSeconds: [0, 1, 2, 3, 4],
  • Network accessline 210
    src: "https://remotion.media/video.mp4",

skills/design-remotion-generator/rules/get-audio-duration.md

  • Network accessline 33
    const duration = await getAudioDuration("https://remotion.media/audio.mp3");

skills/design-remotion-generator/rules/get-video-dimensions.md

  • Network accessline 40
    const dimensions = await getVideoDimensions("https://remotion.media/video.mp4");

skills/design-remotion-generator/rules/get-video-duration.md

  • Network accessline 33
    const duration = await getVideoDuration("https://remotion.media/video.mp4");

skills/design-remotion-generator/rules/gifs.md

  • Network accessline 25
    <AnimatedImage src="https://example.com/animation.gif" width={500} height={500} />

skills/design-remotion-generator/rules/images.md

  • Network accessline 57
    <Img src="https://example.com/image.png" />

skills/design-remotion-generator/rules/import-srt-captions.md

  • Network accessline 39
    const fetchCaptions = useCallback(async () => {     try {       const response = await fetch(staticFile('subtitles.srt'));
  • Network accessline 40
    try {       const response = await fetch(staticFile('subtitles.srt'));       const text = await response.text();
  • Network accessline 41
    const response = await fetch(staticFile('subtitles.srt'));
  • Network accessline 63
    Remote URLs are also supported - you can `fetch()` a remote file via URL instead of using `staticFile()`.

skills/design-remotion-generator/rules/lottie.md

  • Network accessline 41
    useEffect(() => {     fetch('https://assets4.lottiefiles.com/packages/lf20_zyquagfl.json')
  • Network accessline 42
    fetch('https://assets4.lottiefiles.com/packages/lf20_zyquagfl.json')

skills/design-remotion-generator/rules/maps.md

  • Network accessline 8
    Maps can be added to a Remotion video with Mapbox.   The [Mapbox documentation](https://docs.mapbox.com/mapbox-gl-js/api/) has the API reference.
  • Network accessline 9
    The [Mapbox documentation](https://docs.mapbox.com/mapbox-gl-js/api/) has the API reference.
  • Network accessline 41
    The user needs to create a free Mapbox account and create an access token by visiting https://console.mapbox.com/account/access-tokens/.
  • Access to secretsline 45
    [Credential-related source omitted]
  • Access to secretsline 68
    [Credential-related source omitted]
  • Possible obfuscationline 85
    style: '<U+2060>mapbox://styles/mapbox/standard',

skills/design-remotion-generator/rules/tailwind.md

  • Network accessline 11
    Tailwind must be installed and enabled first in a Remotion project - fetch  https://www.remotion.dev/docs/tailwind using WebFetch for instructions.

skills/design-remotion-generator/rules/transcribe-captions.md

  • Network accessline 12
    - `@remotion/install-whisper-cpp` - Transcribe locally on a server using Whisper.cpp. Fast and free, but requires server infrastructure.   https://remotion.dev/docs/install-whisper-cpp
  • Network accessline 13
    https://remotion.dev/docs/install-whisper-cpp
  • Network accessline 15
    - `@remotion/whisper-web` - Transcribe in the browser using WebAssembly. No server needed and free, but slower due to WASM overhead.   https://remotion.dev/docs/whisper-web
  • Network accessline 16
    https://remotion.dev/docs/whisper-web
  • Network accessline 18
    - `@remotion/openai-whisper` - Use OpenAI Whisper API for cloud-based transcription. Fast and no server needed, but requires payment.   https://remotion.dev/docs/openai-whisper/openai-whisper-api-to-captions
  • Network accessline 19
    https://remotion.dev/docs/openai-whisper/openai-whisper-api-to-captions

skills/design-remotion-generator/rules/videos.md

  • Network accessline 36
    <Video src="https://remotion.media/video.mp4" />

skills/design-ui-ux-pro-max/SKILL.md

  • Dangerous shell operationline 111
    sudo apt update && sudo apt install python3

skills/design-ui-ux-pro-max/data/react-performance.csv

  • Network accessline 1
    No,Category,Issue,Keywords,Platform,Description,Do,Don't,Code Example Good,Code Example Bad,Severity 1,Async Waterfall,Defer Await,async await defer branch,React/Next.js,Move await into branches where actually used to avoid blocking unused 
  • Network accessline 2
    1,Async Waterfall,Defer Await,async await defer branch,React/Next.js,Move await into branches where actually used to avoid blocking unused code paths,Move await operations into branches where they're needed,Await at top of function blocking
  • Network accessline 3
    2,Async Waterfall,Promise.all Parallel,promise all parallel concurrent,React/Next.js,Execute independent async operations concurrently using Promise.all(),Use Promise.all() for independent operations,Sequential await for independent operati
  • Network accessline 4
    3,Async Waterfall,Dependency Parallelization,better-all dependency parallel,React/Next.js,Use better-all for operations with partial dependencies to maximize parallelism,Use better-all to start each task at earliest possible moment,Wait for
  • Network accessline 15
    14,Server,Parallel Fetching,parallel fetch component composition,React/Next.js,Restructure components to parallelize data fetching in RSC,Use component composition for parallel fetches,Sequential fetches in parent component,"<Header /><Side
  • Network accessline 16
    15,Server,After Non-blocking,after non-blocking logging,React/Next.js,Use Next.js after() to schedule work after response is sent,Use after() for logging/analytics,Block response for non-critical operations,"after(async () => { await logAct
  • Network accessline 17
    16,Client,SWR Deduplication,swr dedup cache revalidate,React/Next.js,Use SWR for automatic request deduplication and caching,Use useSWR for client data fetching,Manual fetch in useEffect,"const { data } = useSWR('/api/users', fetcher)","use

skills/design-ui-ux-pro-max/data/stacks/flutter.csv

  • Network accessline 1
    No,Category,Guideline,Description,Do,Don't,Code Good,Code Bad,Severity,Docs URL 1,Widgets,Use StatelessWidget when possible,Immutable widgets are simpler,StatelessWidget for static UI,StatefulWidget for everything,class MyWidget extends Sta
  • Network accessline 2
    1,Widgets,Use StatelessWidget when possible,Immutable widgets are simpler,StatelessWidget for static UI,StatefulWidget for everything,class MyWidget extends StatelessWidget,class MyWidget extends StatefulWidget (static),Medium,https://api.f
  • Network accessline 3
    2,Widgets,Keep widgets small,Single responsibility principle,Extract widgets into smaller pieces,Large build methods,Column(children: [Header() Content()]),500+ line build method,Medium, 3,Widgets,Use const constructors,Compile-time constan
  • Network accessline 4
    3,Widgets,Use const constructors,Compile-time constants for performance,const MyWidget() when possible,Non-const for static widgets,const Text('Hello'),Text('Hello') for literals,High,https://dart.dev/guides/language/language-tour#constant-
  • Network accessline 5
    4,Widgets,Prefer composition over inheritance,Combine widgets using children,Compose widgets,Extend widget classes,Container(child: MyContent()),class MyContainer extends Container,Medium, 5,State,Use setState correctly,Minimal state in Sta
  • Network accessline 6
    5,State,Use setState correctly,Minimal state in StatefulWidget,setState for UI state changes,setState for business logic,setState(() { _counter++; }),Complex logic in setState,Medium,https://api.flutter.dev/flutter/widgets/State/setState.ht
  • Network accessline 7
    6,State,Avoid setState in build,Never call setState during build,setState in callbacks only,setState in build method,onPressed: () => setState(() {}),build() { setState(); },High, 7,State,Use state management for complex apps,Provider River
  • Network accessline 8
    7,State,Use state management for complex apps,Provider Riverpod BLoC,State management for shared state,setState for global state,Provider.of<MyState>(context),Global setState calls,Medium, 8,State,Prefer Riverpod or Provider,Recommended sta
  • Network accessline 9
    8,State,Prefer Riverpod or Provider,Recommended state solutions,Riverpod for new projects,InheritedWidget manually,ref.watch(myProvider),Custom InheritedWidget,Medium,https://riverpod.dev/
  • Network accessline 10
    9,State,Dispose resources,Clean up controllers and subscriptions,dispose() for cleanup,Memory leaks from subscriptions,@override void dispose() { controller.dispose(); },No dispose implementation,High, 10,Layout,Use Column and Row,Basic lay
  • Network accessline 11
    10,Layout,Use Column and Row,Basic layout widgets,Column Row for linear layouts,Stack for simple layouts,"Column(children: [Text(), Button()])",Stack for vertical list,Medium,https://api.flutter.dev/flutter/widgets/Column-class.html
  • Network accessline 12
    11,Layout,Use Expanded and Flexible,Control flex behavior,Expanded to fill space,Fixed sizes in flex containers,Expanded(child: Container()),Container(width: 200) in Row,Medium, 12,Layout,Use SizedBox for spacing,Consistent spacing,SizedBox
  • Network accessline 13
    12,Layout,Use SizedBox for spacing,Consistent spacing,SizedBox for gaps,Container for spacing only,SizedBox(height: 16),Container(height: 16),Low, 13,Layout,Use LayoutBuilder for responsive,Respond to constraints,LayoutBuilder for adaptive 
  • Network accessline 14
    13,Layout,Use LayoutBuilder for responsive,Respond to constraints,LayoutBuilder for adaptive layouts,Fixed sizes for responsive,LayoutBuilder(builder: (context constraints) {}),Container(width: 375),Medium,https://api.flutter.dev/flutter/wi
  • Network accessline 15
    14,Layout,Avoid deep nesting,Keep widget tree shallow,Extract deeply nested widgets,10+ levels of nesting,Extract widget to method or class,Column(Row(Column(Row(...)))),Medium, 15,Lists,Use ListView.builder,Lazy list building,ListView.buil
  • Network accessline 16
    15,Lists,Use ListView.builder,Lazy list building,ListView.builder for long lists,ListView with children for large lists,"ListView.builder(itemCount: 100, itemBuilder: ...)",ListView(children: items.map(...).toList()),High,https://api.flutte
  • Network accessline 17
    16,Lists,Provide itemExtent when known,Skip measurement,itemExtent for fixed height items,No itemExtent for uniform lists,ListView.builder(itemExtent: 50),ListView.builder without itemExtent,Medium, 17,Lists,Use keys for stateful items,Pres
  • Network accessline 18
    17,Lists,Use keys for stateful items,Preserve widget state,Key for stateful list items,No key for dynamic lists,ListTile(key: ValueKey(item.id)),ListTile without key,High, 18,Lists,Use SliverList for custom scroll,Custom scroll effects,Cust
  • Network accessline 19
    18,Lists,Use SliverList for custom scroll,Custom scroll effects,CustomScrollView with Slivers,Nested ListViews,CustomScrollView(slivers: [SliverList()]),ListView inside ListView,Medium,https://api.flutter.dev/flutter/widgets/SliverList-clas
  • Network accessline 20
    19,Navigation,Use Navigator 2.0 or GoRouter,Declarative routing,go_router for navigation,Navigator.push for complex apps,GoRouter(routes: [...]),Navigator.push everywhere,Medium,https://pub.dev/packages/go_router
  • Network accessline 21
    20,Navigation,Use named routes,Organized navigation,Named routes for clarity,Anonymous routes,Navigator.pushNamed(context '/home'),Navigator.push(context MaterialPageRoute()),Low, 21,Navigation,Handle back button (PopScope),Android back beh
  • Network accessline 22
    21,Navigation,Handle back button (PopScope),Android back behavior and predictive back (Android 14+),Use PopScope widget (WillPopScope is deprecated),Use WillPopScope,"PopScope(canPop: false, onPopInvoked: (didPop) => ...)",WillPopScope(onWi
  • Network accessline 23
    22,Navigation,Pass typed arguments,Type-safe route arguments,Typed route arguments,Dynamic arguments,MyRoute(id: '123'),arguments: {'id': '123'},Medium, 23,Async,Use FutureBuilder,Async UI building,FutureBuilder for async data,setState for 
  • Network accessline 24
    23,Async,Use FutureBuilder,Async UI building,FutureBuilder for async data,setState for async,FutureBuilder(future: fetchData()),fetchData().then((d) => setState()),Medium,https://api.flutter.dev/flutter/widgets/FutureBuilder-class.html
  • Network accessline 25
    24,Async,Use StreamBuilder,Stream UI building,StreamBuilder for streams,Manual stream subscription,StreamBuilder(stream: myStream),stream.listen in initState,Medium,https://api.flutter.dev/flutter/widgets/StreamBuilder-class.html
  • Network accessline 26
    25,Async,Handle loading and error states,Complete async UI states,ConnectionState checks,Only success state,if (snapshot.connectionState == ConnectionState.waiting),No loading indicator,High, 26,Async,Cancel subscriptions,Clean up stream su
  • Network accessline 27
    26,Async,Cancel subscriptions,Clean up stream subscriptions,Cancel in dispose,Memory leaks,subscription.cancel() in dispose,No subscription cleanup,High, 27,Theming,Use ThemeData,Consistent theming,ThemeData for app theme,Hardcoded colors,T
  • Network accessline 28
    27,Theming,Use ThemeData,Consistent theming,ThemeData for app theme,Hardcoded colors,Theme.of(context).primaryColor,Color(0xFF123456) everywhere,Medium,https://api.flutter.dev/flutter/material/ThemeData-class.html
  • Network accessline 30
    29,Theming,Access theme via context,Dynamic theme access,Theme.of(context),Static theme reference,Theme.of(context).textTheme.bodyLarge,TextStyle(fontSize: 16),Medium, 30,Theming,Support dark mode,Respect system theme,darkTheme in MaterialA
  • Network accessline 31
    30,Theming,Support dark mode,Respect system theme,darkTheme in MaterialApp,Light theme only,"MaterialApp(theme: light, darkTheme: dark)",MaterialApp(theme: light),Medium, 31,Animation,Use implicit animations,Simple animations,AnimatedContai
  • Network accessline 32
    31,Animation,Use implicit animations,Simple animations,AnimatedContainer AnimatedOpacity,Explicit for simple transitions,AnimatedContainer(duration: Duration()),AnimationController for fade,Low,https://api.flutter.dev/flutter/widgets/Animat
  • Network accessline 33
    32,Animation,Use AnimationController for complex,Fine-grained control,AnimationController with Ticker,Implicit for complex sequences,AnimationController(vsync: this),AnimatedContainer for staggered,Medium, 33,Animation,Dispose AnimationCont
  • Network accessline 34
    33,Animation,Dispose AnimationControllers,Clean up animation resources,dispose() for controllers,Memory leaks,controller.dispose() in dispose,No controller disposal,High, 34,Animation,Use Hero for transitions,Shared element transitions,Hero
  • Network accessline 35
    34,Animation,Use Hero for transitions,Shared element transitions,Hero for navigation animations,Manual shared element,Hero(tag: 'image' child: Image()),Custom shared element animation,Low,https://api.flutter.dev/flutter/widgets/Hero-class.h
  • Network accessline 36
    35,Forms,Use Form widget,Form validation,Form with GlobalKey,Individual validation,Form(key: _formKey child: ...),TextField without Form,Medium,https://api.flutter.dev/flutter/widgets/Form-class.html
  • Network accessline 40
    39,Performance,Use const widgets,Reduce rebuilds,const for static widgets,No const for literals,const Icon(Icons.add),Icon(Icons.add),High, 40,Performance,Avoid rebuilding entire tree,Minimal rebuild scope,Isolate changing widgets,setState 
  • Network accessline 41
    40,Performance,Avoid rebuilding entire tree,Minimal rebuild scope,Isolate changing widgets,setState on parent,Consumer only around changing widget,setState on root widget,High, 41,Performance,Use RepaintBoundary,Isolate repaints,RepaintBoun
  • Network accessline 42
    41,Performance,Use RepaintBoundary,Isolate repaints,RepaintBoundary for animations,Full screen repaints,RepaintBoundary(child: AnimatedWidget()),Animation without boundary,Medium,https://api.flutter.dev/flutter/widgets/RepaintBoundary-class
  • Network accessline 43
    42,Performance,Profile with DevTools,Measure before optimizing,Flutter DevTools profiling,Guess at performance,DevTools performance tab,Optimize without measuring,Medium,https://docs.flutter.dev/tools/devtools
  • Network accessline 44
    43,Accessibility,Use Semantics widget,Screen reader support,Semantics for accessibility,Missing accessibility info,Semantics(label: 'Submit button'),GestureDetector without semantics,High,https://api.flutter.dev/flutter/widgets/Semantics-cl
  • Network accessline 45
    44,Accessibility,Support large fonts,MediaQuery text scaling,MediaQuery.textScaleFactor,Fixed font sizes,style: Theme.of(context).textTheme,TextStyle(fontSize: 14),High, 45,Accessibility,Test with screen readers,TalkBack and VoiceOver,Test 
  • Network accessline 46
    45,Accessibility,Test with screen readers,TalkBack and VoiceOver,Test accessibility regularly,Skip accessibility testing,Regular TalkBack testing,No screen reader testing,High, 46,Testing,Use widget tests,Test widget behavior,WidgetTester f
  • Network accessline 47
    46,Testing,Use widget tests,Test widget behavior,WidgetTester for UI tests,Unit tests only,testWidgets('...' (tester) async {}),Only test() for UI,Medium,https://docs.flutter.dev/testing
  • Network accessline 50
    49,Platform,Use Platform checks,Platform-specific code,Platform.isIOS Platform.isAndroid,Same code for all platforms,if (Platform.isIOS) {},Hardcoded iOS behavior,Medium, 50,Platform,Use kIsWeb for web,Web platform detection,kIsWeb for web 
  • Network accessline 51
    50,Platform,Use kIsWeb for web,Web platform detection,kIsWeb for web checks,Platform for web,if (kIsWeb) {},Platform.isWeb (doesn't exist),Medium, 51,Packages,Use pub.dev packages,Community packages,Popular maintained packages,Custom implem
  • Network accessline 52
    51,Packages,Use pub.dev packages,Community packages,Popular maintained packages,Custom implementations,cached_network_image,Custom image cache,Medium,https://pub.dev/

skills/design-ui-ux-pro-max/data/stacks/html-tailwind.csv

  • Network accessline 1
    No,Category,Guideline,Description,Do,Don't,Code Good,Code Bad,Severity,Docs URL 1,Animation,Use Tailwind animate utilities,Built-in animations are optimized and respect reduced-motion,Use animate-pulse animate-spin animate-ping,Custom @keyf
  • Network accessline 2
    1,Animation,Use Tailwind animate utilities,Built-in animations are optimized and respect reduced-motion,Use animate-pulse animate-spin animate-ping,Custom @keyframes for simple effects,animate-pulse,@keyframes pulse {...},Medium,https://tai
  • Network accessline 3
    2,Animation,Limit bounce animations,Continuous bounce is distracting and causes motion sickness,Use animate-bounce sparingly on CTAs only,Multiple bounce animations on page,Single CTA with animate-bounce,5+ elements with animate-bounce,High
  • Network accessline 4
    3,Animation,Transition duration,Use appropriate transition speeds for UI feedback,duration-150 to duration-300 for UI,duration-1000 or longer for UI elements,transition-all duration-200,transition-all duration-1000,Medium,https://tailwindcs
  • Network accessline 5
    4,Animation,Hover transitions,Add smooth transitions on hover state changes,Add transition class with hover states,Instant hover changes without transition,hover:bg-gray-100 transition-colors,hover:bg-gray-100 (no transition),Low, 5,Z-Index
  • Network accessline 6
    5,Z-Index,Use Tailwind z-* scale,Consistent stacking context with predefined scale,z-0 z-10 z-20 z-30 z-40 z-50,Arbitrary z-index values,z-50 for modals,z-[9999],Medium,https://tailwindcss.com/docs/z-index
  • Network accessline 7
    6,Z-Index,Fixed elements z-index,Fixed navigation and modals need explicit z-index,z-50 for nav z-40 for dropdowns,Relying on DOM order for stacking,fixed top-0 z-50,fixed top-0 (no z-index),High, 7,Z-Index,Negative z-index for backgrounds,
  • Network accessline 8
    7,Z-Index,Negative z-index for backgrounds,Use negative z-index for decorative backgrounds,z-[-1] for background elements,Positive z-index for backgrounds,-z-10 for decorative,z-10 for background,Low, 8,Layout,Container max-width,Limit cont
  • Network accessline 9
    8,Layout,Container max-width,Limit content width for readability,max-w-7xl mx-auto for main content,Full-width content on large screens,max-w-7xl mx-auto px-4,w-full (no max-width),Medium,https://tailwindcss.com/docs/container
  • Network accessline 10
    9,Layout,Responsive padding,Adjust padding for different screen sizes,px-4 md:px-6 lg:px-8,Same padding all sizes,px-4 sm:px-6 lg:px-8,px-8 (same all sizes),Medium, 10,Layout,Grid gaps,Use consistent gap utilities for spacing,gap-4 gap-6 ga
  • Network accessline 11
    10,Layout,Grid gaps,Use consistent gap utilities for spacing,gap-4 gap-6 gap-8,Margins on individual items,grid gap-6,grid with mb-4 on each item,Medium,https://tailwindcss.com/docs/gap
  • Network accessline 12
    11,Layout,Flexbox alignment,Use flex utilities for alignment,items-center justify-between,Multiple nested wrappers,flex items-center justify-between,Nested divs for alignment,Low, 12,Images,Aspect ratio,Maintain consistent image aspect rati
  • Network accessline 13
    12,Images,Aspect ratio,Maintain consistent image aspect ratios,aspect-video aspect-square,No aspect ratio on containers,aspect-video rounded-lg,No aspect control,Medium,https://tailwindcss.com/docs/aspect-ratio
  • Network accessline 14
    13,Images,Object fit,Control image scaling within containers,object-cover object-contain,Stretched distorted images,object-cover w-full h-full,No object-fit,Medium,https://tailwindcss.com/docs/object-fit
  • Network accessline 15
    14,Images,Lazy loading,Defer loading of off-screen images,loading='lazy' on images,All images eager load,<img loading='lazy'>,<img> without lazy,High, 15,Images,Responsive images,Serve appropriate image sizes,srcset and sizes attributes,Sam
  • Network accessline 16
    15,Images,Responsive images,Serve appropriate image sizes,srcset and sizes attributes,Same large image all devices,srcset with multiple sizes,4000px image everywhere,High, 16,Typography,Prose plugin,Use @tailwindcss/typography for rich text
  • Network accessline 17
    16,Typography,Prose plugin,Use @tailwindcss/typography for rich text,prose prose-lg for article content,Custom styles for markdown,prose prose-lg max-w-none,Custom text styling,Medium,https://tailwindcss.com/docs/typography-plugin
  • Network accessline 18
    17,Typography,Line height,Use appropriate line height for readability,leading-relaxed for body text,Default tight line height,leading-relaxed (1.625),leading-none or leading-tight,Medium,https://tailwindcss.com/docs/line-height
  • Network accessline 19
    18,Typography,Font size scale,Use consistent text size scale,text-sm text-base text-lg text-xl,Arbitrary font sizes,text-lg,text-[17px],Low,https://tailwindcss.com/docs/font-size
  • Network accessline 20
    19,Typography,Text truncation,Handle long text gracefully,truncate or line-clamp-*,Overflow breaking layout,line-clamp-2,No overflow handling,Medium,https://tailwindcss.com/docs/text-overflow
  • Network accessline 21
    20,Colors,Opacity utilities,Use color opacity utilities,bg-black/50 text-white/80,Separate opacity class,bg-black/50,bg-black opacity-50,Low,https://tailwindcss.com/docs/background-color
  • Network accessline 22
    21,Colors,Dark mode,Support dark mode with dark: prefix,dark:bg-gray-900 dark:text-white,No dark mode support,dark:bg-gray-900,Only light theme,Medium,https://tailwindcss.com/docs/dark-mode
  • Network accessline 23
    22,Colors,Semantic colors,Use semantic color naming in config,primary secondary danger success,Generic color names in components,bg-primary,bg-blue-500 everywhere,Medium, 23,Spacing,Consistent spacing scale,Use Tailwind spacing scale consis
  • Network accessline 24
    23,Spacing,Consistent spacing scale,Use Tailwind spacing scale consistently,p-4 m-6 gap-8,Arbitrary pixel values,p-4 (1rem),p-[15px],Low,https://tailwindcss.com/docs/customizing-spacing
  • Network accessline 25
    24,Spacing,Negative margins,Use sparingly for overlapping effects,-mt-4 for overlapping elements,Negative margins for layout fixing,-mt-8 for card overlap,-m-2 to fix spacing issues,Medium, 25,Spacing,Space between,Use space-y-* for vertica
  • Network accessline 26
    25,Spacing,Space between,Use space-y-* for vertical lists,space-y-4 on flex/grid column,Margin on each child,space-y-4,Each child has mb-4,Low,https://tailwindcss.com/docs/space
  • Network accessline 29
    28,Forms,Disabled states,Clear disabled styling,disabled:opacity-50 disabled:cursor-not-allowed,No disabled indication,disabled:opacity-50,Same style as enabled,Medium, 29,Forms,Placeholder styling,Style placeholder text appropriately,place
  • Network accessline 30
    29,Forms,Placeholder styling,Style placeholder text appropriately,placeholder:text-gray-400,Dark placeholder text,placeholder:text-gray-400,Default dark placeholder,Low, 30,Responsive,Mobile-first approach,Start with mobile styles and add b
  • Network accessline 31
    30,Responsive,Mobile-first approach,Start with mobile styles and add breakpoints,Default mobile + md: lg: xl:,Desktop-first approach,text-sm md:text-base,text-base max-md:text-sm,Medium,https://tailwindcss.com/docs/responsive-design
  • Network accessline 32
    31,Responsive,Breakpoint testing,Test at standard breakpoints,320 375 768 1024 1280 1536,Only test on development device,Test all breakpoints,Single device testing,High, 32,Responsive,Hidden/shown utilities,Control visibility per breakpoint
  • Network accessline 33
    32,Responsive,Hidden/shown utilities,Control visibility per breakpoint,hidden md:block,Different content per breakpoint,hidden md:flex,Separate mobile/desktop components,Low,https://tailwindcss.com/docs/display
  • Network accessline 39
    38,Cards,Card hover states,Interactive cards should have hover feedback,hover:shadow-lg transition-shadow,No hover on clickable cards,hover:shadow-xl transition-shadow,Static cards that are clickable,Medium, 39,Cards,Card spacing,Consistent
  • Network accessline 40
    39,Cards,Card spacing,Consistent internal card spacing,space-y-4 for card content,Inconsistent internal spacing,space-y-4 or p-6,Mixed mb-2 mb-4 mb-6,Low, 40,Accessibility,Screen reader text,Provide context for screen readers,sr-only for hi
  • Network accessline 41
    40,Accessibility,Screen reader text,Provide context for screen readers,sr-only for hidden labels,Missing context for icons,<span class='sr-only'>Close menu</span>,No label for icon button,High,https://tailwindcss.com/docs/screen-readers
  • Network accessline 42
    41,Accessibility,Focus visible,Show focus only for keyboard users,focus-visible:ring-2,Focus on all interactions,focus-visible:ring-2,focus:ring-2 (shows on click too),Medium, 42,Accessibility,Reduced motion,Respect user motion preferences,
  • Network accessline 43
    42,Accessibility,Reduced motion,Respect user motion preferences,motion-reduce:animate-none,Ignore motion preferences,motion-reduce:transition-none,No reduced motion support,High,https://tailwindcss.com/docs/hover-focus-and-other-states#pref
  • Network accessline 44
    43,Performance,Configure content paths,Tailwind needs to know where classes are used,Use 'content' array in config,Use deprecated 'purge' option (v2),"content: ['./src/**/*.{js,ts,jsx,tsx}']",purge: [...],High,https://tailwindcss.com/docs/c
  • Network accessline 45
    44,Performance,JIT mode,Use JIT for faster builds and smaller bundles,JIT enabled (default in v3),Full CSS in development,Tailwind v3 defaults,Tailwind v2 without JIT,Medium, 45,Performance,Avoid @apply bloat,Use @apply sparingly,Direct uti
  • Network accessline 46
    45,Performance,Avoid @apply bloat,Use @apply sparingly,Direct utilities in HTML,Heavy @apply usage,class='px-4 py-2 rounded',@apply px-4 py-2 rounded;,Low,https://tailwindcss.com/docs/reusing-styles
  • Network accessline 47
    46,Plugins,Official plugins,Use official Tailwind plugins,@tailwindcss/forms typography aspect-ratio,Custom implementations,@tailwindcss/forms,Custom form reset CSS,Medium,https://tailwindcss.com/docs/plugins
  • Network accessline 48
    47,Plugins,Custom utilities,Create utilities for repeated patterns,Custom utility in config,Repeated arbitrary values,Custom shadow utility,"shadow-[0_4px_20px_rgba(0,0,0,0.1)] everywhere",Medium, 48,Layout,Container Queries,Use @container 
  • Network accessline 49
    48,Layout,Container Queries,Use @container for component-based responsiveness,Use @container and @lg: etc.,Media queries for component internals,@container @lg:grid-cols-2,@media (min-width: ...) inside component,Medium,https://github.com/t
  • Network accessline 50
    49,Interactivity,Group and Peer,Style based on parent/sibling state,group-hover peer-checked,JS for simple state interactions,group-hover:text-blue-500,onMouseEnter={() => setHover(true)},Low,https://tailwindcss.com/docs/hover-focus-and-oth
  • Network accessline 51
    50,Customization,Arbitrary Values,Use [] for one-off values,w-[350px] for specific needs,Creating config for single use,top-[117px] (if strictly needed),style={{ top: '117px' }},Low,https://tailwindcss.com/docs/adding-custom-styles#using-ar
  • Network accessline 52
    51,Colors,Theme color variables,Define colors in Tailwind theme and use directly,bg-primary text-success border-cta,bg-[var(--color-primary)] text-[var(--color-success)],bg-primary,bg-[var(--color-primary)],Medium,https://tailwindcss.com/do
  • Network accessline 53
    52,Colors,Use bg-linear-to-* for gradients,Tailwind v4 uses bg-linear-to-* syntax for gradients,bg-linear-to-r bg-linear-to-b,bg-gradient-to-* (deprecated in v4),bg-linear-to-r from-blue-500 to-purple-500,bg-gradient-to-r from-blue-500 to-p
  • Network accessline 54
    53,Layout,Use shrink-0 shorthand,Shorter class name for flex-shrink-0,shrink-0 shrink,flex-shrink-0 flex-shrink,shrink-0,flex-shrink-0,Low,https://tailwindcss.com/docs/flex-shrink
  • Network accessline 55
    54,Layout,Use size-* for square dimensions,Single utility for equal width and height,size-4 size-8 size-12,Separate h-* w-* for squares,size-6,h-6 w-6,Low,https://tailwindcss.com/docs/size

skills/design-ui-ux-pro-max/data/stacks/jetpack-compose.csv

  • Network accessline 1
    No,Category,Guideline,Description,Do,Don't,Code Good,Code Bad,Severity,Docs URL 1,Composable,Pure UI composables,Composable functions should only render UI,Accept state and callbacks,Calling usecase/repo,Pure UI composable,Business logic in
  • Network accessline 2
    1,Composable,Pure UI composables,Composable functions should only render UI,Accept state and callbacks,Calling usecase/repo,Pure UI composable,Business logic in UI,High,https://developer.android.com/jetpack/compose/mental-model
  • Network accessline 3
    2,Composable,Small composables,Each composable has single responsibility,Split into components,Huge composable,Reusable UI,Monolithic UI,Medium, 3,Composable,Stateless by default,Prefer stateless composables,Hoist state,Local mutable state,
  • Network accessline 4
    3,Composable,Stateless by default,Prefer stateless composables,Hoist state,Local mutable state,Stateless UI,Hidden state,High,https://developer.android.com/jetpack/compose/state#state-hoisting
  • Network accessline 5
    4,State,Single source of truth,UI state comes from one source,StateFlow from VM,Multiple states,Unified UiState,Scattered state,High,https://developer.android.com/topic/architecture/ui-layer
  • Network accessline 6
    5,State,Model UI State,Use sealed interface/data class,UiState.Loading,Boolean flags,Explicit state,Flag hell,High, 6,State,remember only UI state,remember for UI-only state,"Scroll, animation",Business state,Correct remember,Misuse remembe
  • Network accessline 7
    6,State,remember only UI state,remember for UI-only state,"Scroll, animation",Business state,Correct remember,Misuse remember,High,https://developer.android.com/jetpack/compose/state
  • Network accessline 8
    7,State,rememberSaveable,Persist state across config,rememberSaveable,remember,State survives,State lost,High,https://developer.android.com/jetpack/compose/state#restore-ui-state
  • Network accessline 9
    8,State,derivedStateOf,Optimize recomposition,derivedStateOf,Recompute always,Optimized,Jank,Medium,https://developer.android.com/jetpack/compose/performance
  • Network accessline 10
    9,SideEffect,LaunchedEffect keys,Use correct keys,LaunchedEffect(id),LaunchedEffect(Unit),Scoped effect,Infinite loop,High,https://developer.android.com/jetpack/compose/side-effects
  • Network accessline 11
    10,SideEffect,rememberUpdatedState,Avoid stale lambdas,rememberUpdatedState,Capture directly,Safe callback,Stale state,Medium,https://developer.android.com/jetpack/compose/side-effects
  • Network accessline 12
    11,SideEffect,DisposableEffect,Clean up resources,onDispose,No cleanup,No leak,Memory leak,High, 12,Architecture,Unidirectional data flow,UI → VM → State,onEvent,Two-way binding,Predictable flow,Hard debug,High,https://developer.android.com
  • Network accessline 13
    12,Architecture,Unidirectional data flow,UI → VM → State,onEvent,Two-way binding,Predictable flow,Hard debug,High,https://developer.android.com/topic/architecture
  • Network accessline 14
    13,Architecture,No business logic in UI,Logic belongs to VM,Collect state,Call repo,Clean UI,Fat UI,High, 14,Architecture,Expose immutable state,Expose StateFlow,asStateFlow,Mutable exposed,Safe API,State mutation,High, 15,Lifecycle,Lifecyc
  • Network accessline 15
    14,Architecture,Expose immutable state,Expose StateFlow,asStateFlow,Mutable exposed,Safe API,State mutation,High, 15,Lifecycle,Lifecycle-aware collect,Use collectAsStateWithLifecycle,Lifecycle aware,collectAsState,No leak,Leak,High,https://
  • Network accessline 16
    15,Lifecycle,Lifecycle-aware collect,Use collectAsStateWithLifecycle,Lifecycle aware,collectAsState,No leak,Leak,High,https://developer.android.com/jetpack/compose/lifecycle
  • Network accessline 17
    16,Navigation,Event-based navigation,VM emits navigation event,"VM: Channel + receiveAsFlow(), V: Collect with Dispatchers.Main.immediate",Nav in UI,Decoupled nav,Using State / SharedFlow for navigation -> event is replayed and navigation f
  • Network accessline 18
    17,Navigation,Typed routes,Use sealed routes,sealed class Route,String routes,Type-safe,Runtime crash,Medium, 18,Performance,Stable parameters,Prefer immutable/stable params,@Immutable,Mutable params,Stable recomposition,Extra recomposition
  • Network accessline 19
    18,Performance,Stable parameters,Prefer immutable/stable params,@Immutable,Mutable params,Stable recomposition,Extra recomposition,High,https://developer.android.com/jetpack/compose/performance
  • Network accessline 21
    20,Performance,Avoid heavy work,No heavy computation in UI,Precompute in VM,Compute in UI,Smooth UI,Jank,High, 21,Performance,Remember expensive objects,remember heavy objects,remember,Recreate each recomposition,Efficient,Wasteful,Medium, 
  • Network accessline 22
    21,Performance,Remember expensive objects,remember heavy objects,remember,Recreate each recomposition,Efficient,Wasteful,Medium, 22,Theming,Design system,Centralized theme,Material3 tokens,Hardcoded values,Consistent UI,Inconsistent,High,ht
  • Network accessline 23
    22,Theming,Design system,Centralized theme,Material3 tokens,Hardcoded values,Consistent UI,Inconsistent,High,https://developer.android.com/jetpack/compose/themes
  • Network accessline 24
    23,Theming,Dark mode support,Theme-based colors,colorScheme,Fixed color,Adaptive UI,Broken dark,Medium, 24,Layout,Prefer Modifier over extra layouts,Use Modifier to adjust layout instead of adding wrapper composables,Use Modifier.padding(),
  • Network accessline 25
    24,Layout,Prefer Modifier over extra layouts,Use Modifier to adjust layout instead of adding wrapper composables,Use Modifier.padding(),Wrap content with extra Box,Padding via modifier,Box just for padding,High,https://developer.android.com
  • Network accessline 27
    26,Layout,Use Row/Column for linear layout,Linear layouts are simpler and more performant,Use Row / Column,Custom layout for simple cases,Row/Column usage,Over-engineered layout,High, 27,Layout,Use Box only for overlapping content,Box shoul
  • Network accessline 28
    27,Layout,Use Box only for overlapping content,Box should be used only when children overlap,Stack elements,Use Box as Column,Proper overlay,Misused Box,Medium, 28,Layout,Prefer LazyColumn over Column scroll,Lazy layouts are virtualized and
  • Network accessline 29
    28,Layout,Prefer LazyColumn over Column scroll,Lazy layouts are virtualized and efficient,LazyColumn,Column.verticalScroll(),Lazy list,Scrollable Column,High,https://developer.android.com/jetpack/compose/lists
  • Network accessline 30
    29,Layout,Avoid nested scroll containers,Nested scrolling causes UX & performance issues,Single scroll container,Scroll inside scroll,One scroll per screen,Nested scroll,High, 30,Layout,Avoid fillMaxSize by default,fillMaxSize may break par
  • Network accessline 31
    30,Layout,Avoid fillMaxSize by default,fillMaxSize may break parent constraints,Use exact size,Fill max everywhere,Constraint-aware size,Overfilled layout,Medium, 31,Layout,Avoid intrinsic size unless necessary,Intrinsic measurement is expe
  • Network accessline 32
    31,Layout,Avoid intrinsic size unless necessary,Intrinsic measurement is expensive,Explicit sizing,IntrinsicSize.Min,Predictable layout,Expensive measure,High,https://developer.android.com/jetpack/compose/layout/intrinsics
  • Network accessline 34
    33,Layout,Extract reusable layout patterns,Repeated layouts should be shared,Create layout composable,Copy-paste layouts,Reusable scaffold,Duplicated layout,High, 34,Theming,No hardcoded text style,Use typography,MaterialTheme.typography,Ha
  • Network accessline 35
    34,Theming,No hardcoded text style,Use typography,MaterialTheme.typography,Hardcode sp,Scalable,Inconsistent,Medium, 35,Testing,Stateless UI testing,Composable easy to test,Pass state,Hidden state,Testable,Hard test,High,https://developer.a
  • Network accessline 36
    35,Testing,Stateless UI testing,Composable easy to test,Pass state,Hidden state,Testable,Hard test,High,https://developer.android.com/jetpack/compose/testing
  • Network accessline 37
    36,Testing,Use testTag,Stable UI selectors,Modifier.testTag,Find by text,Stable tests,Flaky tests,Medium, 37,Preview,Multiple previews,Preview multiple states,@Preview,Single preview,Better dev UX,Misleading,Low,https://developer.android.co
  • Network accessline 38
    37,Preview,Multiple previews,Preview multiple states,@Preview,Single preview,Better dev UX,Misleading,Low,https://developer.android.com/jetpack/compose/tooling/preview
  • Network accessline 39
    38,DI,Inject VM via Hilt,Use hiltViewModel,@HiltViewModel,Manual VM,Clean DI,Coupling,High,https://developer.android.com/training/dependency-injection/hilt-jetpack
  • Network accessline 40
    39,DI,No DI in UI,Inject in VM,Constructor inject,Inject composable,Proper scope,Wrong scope,High, 40,Accessibility,Content description,Accessible UI,contentDescription,Ignore a11y,Inclusive,A11y fail,Medium,https://developer.android.com/je
  • Network accessline 41
    40,Accessibility,Content description,Accessible UI,contentDescription,Ignore a11y,Inclusive,A11y fail,Medium,https://developer.android.com/jetpack/compose/accessibility
  • Network accessline 42
    41,Accessibility,Semantics,Use semantics API,Modifier.semantics,None,Testable a11y,Invisible,Medium, 42,Animation,Compose animation APIs,Use animate*AsState,AnimatedVisibility,Manual anim,Smooth,Jank,Medium,https://developer.android.com/jet
  • Network accessline 43
    42,Animation,Compose animation APIs,Use animate*AsState,AnimatedVisibility,Manual anim,Smooth,Jank,Medium,https://developer.android.com/jetpack/compose/animation
  • Network accessline 44
    43,Animation,Avoid animation logic in VM,Animation is UI concern,Animate in UI,Animate in VM,Correct layering,Mixed concern,Low, 44,Modularization,Feature-based UI modules,UI per feature,:feature:ui,God module,Scalable,Tight coupling,High,h
  • Network accessline 45
    44,Modularization,Feature-based UI modules,UI per feature,:feature:ui,God module,Scalable,Tight coupling,High,https://developer.android.com/topic/modularization
  • Network accessline 47
    46,State,Snapshot state only,Use Compose state,mutableStateOf,Custom observable,Compose aware,Buggy UI,Medium, 47,State,Avoid mutable collections,Immutable list/map,PersistentList,MutableList,Stable UI,Silent bug,High, 48,Lifecycle,Remember
  • Network accessline 48
    47,State,Avoid mutable collections,Immutable list/map,PersistentList,MutableList,Stable UI,Silent bug,High, 48,Lifecycle,RememberCoroutineScope usage,Only for UI jobs,UI coroutine,Long jobs,Scoped job,Leak,Medium,https://developer.android.c
  • Network accessline 49
    48,Lifecycle,RememberCoroutineScope usage,Only for UI jobs,UI coroutine,Long jobs,Scoped job,Leak,Medium,https://developer.android.com/jetpack/compose/side-effects#remembercoroutinescope
  • Network accessline 50
    49,Interop,Interop View carefully,Use AndroidView,Isolated usage,Mix everywhere,Safe interop,Messy UI,Low,https://developer.android.com/jetpack/compose/interop
  • Network accessline 51
    50,Interop,Avoid legacy patterns,No LiveData in UI,StateFlow,LiveData,Modern stack,Legacy debt,Medium, 51,Debug,Use layout inspector,Inspect recomposition,Tools,Blind debug,Fast debug,Guessing,Low,https://developer.android.com/studio/debug/
  • Network accessline 52
    51,Debug,Use layout inspector,Inspect recomposition,Tools,Blind debug,Fast debug,Guessing,Low,https://developer.android.com/studio/debug/layout-inspector

skills/design-ui-ux-pro-max/data/stacks/nextjs.csv

  • Network accessline 1
    No,Category,Guideline,Description,Do,Don't,Code Good,Code Bad,Severity,Docs URL 1,Routing,Use App Router for new projects,App Router is the recommended approach in Next.js 14+,app/ directory with page.tsx,pages/ for new projects,app/dashboa
  • Network accessline 2
    1,Routing,Use App Router for new projects,App Router is the recommended approach in Next.js 14+,app/ directory with page.tsx,pages/ for new projects,app/dashboard/page.tsx,pages/dashboard.tsx,Medium,https://nextjs.org/docs/app
  • Network accessline 3
    2,Routing,Use file-based routing,Create routes by adding files in app directory,page.tsx for routes layout.tsx for layouts,Manual route configuration,app/blog/[slug]/page.tsx,Custom router setup,Medium,https://nextjs.org/docs/app/building-y
  • Network accessline 4
    3,Routing,Colocate related files,Keep components styles tests with their routes,Component files alongside page.tsx,Separate components folder,app/dashboard/_components/,components/dashboard/,Low, 4,Routing,Use route groups for organization,
  • Network accessline 5
    4,Routing,Use route groups for organization,Group routes without affecting URL,Parentheses for route groups,Nested folders affecting URL,(marketing)/about/page.tsx,marketing/about/page.tsx,Low,https://nextjs.org/docs/app/building-your-appli
  • Network accessline 6
    5,Routing,Handle loading states,Use loading.tsx for route loading UI,loading.tsx alongside page.tsx,Manual loading state management,app/dashboard/loading.tsx,useState for loading in page,Medium,https://nextjs.org/docs/app/building-your-appl
  • Network accessline 7
    6,Routing,Handle errors with error.tsx,Catch errors at route level,error.tsx with reset function,try/catch in every component,app/dashboard/error.tsx,try/catch in page component,High,https://nextjs.org/docs/app/building-your-application/rou
  • Network accessline 8
    7,Rendering,Use Server Components by default,Server Components reduce client JS bundle,Keep components server by default,Add 'use client' unnecessarily,export default function Page(),('use client') for static content,High,https://nextjs.org
  • Network accessline 9
    8,Rendering,Mark Client Components explicitly,'use client' for interactive components,Add 'use client' only when needed,Server Component with hooks/events,('use client') for onClick useState,No directive with useState,High,https://nextjs.or
  • Network accessline 10
    9,Rendering,Push Client Components down,Keep Client Components as leaf nodes,Client wrapper for interactive parts only,Mark page as Client Component,<InteractiveButton/> in Server Page,('use client') on page.tsx,High, 10,Rendering,Use strea
  • Network accessline 11
    10,Rendering,Use streaming for better UX,Stream content with Suspense boundaries,Suspense for slow data fetches,Wait for all data before render,<Suspense><SlowComponent/></Suspense>,await allData then render,Medium,https://nextjs.org/docs/a
  • Network accessline 12
    11,Rendering,Choose correct rendering strategy,SSG for static SSR for dynamic ISR for semi-static,generateStaticParams for known paths,SSR for static content,export const revalidate = 3600,fetch without cache config,Medium, 12,DataFetching,
  • Network accessline 13
    12,DataFetching,Fetch data in Server Components,Fetch directly in async Server Components,async function Page() { const data = await fetch() },useEffect for initial data,const data = await fetch(url),useEffect(() => fetch(url)),High,https:/
  • Network accessline 14
    13,DataFetching,Configure caching explicitly (Next.js 15+),Next.js 15 changed defaults to uncached for fetch,Explicitly set cache: 'force-cache' for static data,Assume default is cached (it's not in Next.js 15),fetch(url { cache: 'force-cac
  • Network accessline 15
    14,DataFetching,Deduplicate fetch requests,React and Next.js dedupe same requests,Same fetch call in multiple components,Manual request deduplication,Multiple components fetch same URL,Custom cache layer,Low, 15,DataFetching,Use Server Acti
  • Network accessline 16
    15,DataFetching,Use Server Actions for mutations,Server Actions for form submissions,action={serverAction} in forms,API route for every mutation,<form action={createPost}>,<form onSubmit={callApiRoute}>,Medium,https://nextjs.org/docs/app/bu
  • Network accessline 17
    16,DataFetching,Revalidate data appropriately,Use revalidatePath/revalidateTag after mutations,Revalidate after Server Action,'use client' with manual refetch,revalidatePath('/posts'),router.refresh() everywhere,Medium,https://nextjs.org/do
  • Network accessline 18
    17,Images,Use next/image for optimization,Automatic image optimization and lazy loading,<Image> component for all images,<img> tags directly,<Image src={} alt={} width={} height={}>,<img src={}/>,High,https://nextjs.org/docs/app/building-yo
  • Network accessline 19
    18,Images,Provide width and height,Prevent layout shift with dimensions,width and height props or fill,Missing dimensions,<Image width={400} height={300}/>,<Image src={url}/>,High, 19,Images,Use fill for responsive images,Fill container wit
  • Network accessline 20
    19,Images,Use fill for responsive images,Fill container with object-fit,fill prop with relative parent,Fixed dimensions for responsive,"<Image fill className=""object-cover""/>",<Image width={window.width}/>,Medium, 20,Images,Configure remo
  • Network accessline 21
    20,Images,Configure remote image domains,Whitelist external image sources,remotePatterns in next.config.js,Allow all domains,remotePatterns: [{ hostname: 'cdn.example.com' }],domains: ['*'],High,https://nextjs.org/docs/app/api-reference/com
  • Network accessline 22
    21,Images,Use priority for LCP images,Mark above-fold images as priority,priority prop on hero images,All images with priority,<Image priority src={hero}/>,<Image priority/> on every image,Medium, 22,Fonts,Use next/font for fonts,Self-hoste
  • Network accessline 23
    22,Fonts,Use next/font for fonts,Self-hosted fonts with zero layout shift,next/font/google or next/font/local,External font links,import { Inter } from 'next/font/google',"<link href=""fonts.googleapis.com""/>",Medium,https://nextjs.org/doc
  • Network accessline 24
    23,Fonts,Apply font to layout,Set font in root layout for consistency,className on body in layout.tsx,Font in individual pages,<body className={inter.className}>,Each page imports font,Low, 24,Fonts,Use variable fonts,Variable fonts reduce 
  • Network accessline 25
    24,Fonts,Use variable fonts,Variable fonts reduce bundle size,Single variable font file,Multiple font weights as files,Inter({ subsets: ['latin'] }),Inter_400 Inter_500 Inter_700,Low, 25,Metadata,Use generateMetadata for dynamic,Generate me
  • Network accessline 26
    25,Metadata,Use generateMetadata for dynamic,Generate metadata based on params,export async function generateMetadata(),Hardcoded metadata everywhere,generateMetadata({ params }),export const metadata = {},Medium,https://nextjs.org/docs/app
  • Network accessline 27
    26,Metadata,Include OpenGraph images,Add OG images for social sharing,opengraph-image.tsx or og property,Missing social preview images,opengraph: { images: ['/og.png'] },No OG configuration,Medium, 27,Metadata,Use metadata API,Export metada
  • Network accessline 28
    27,Metadata,Use metadata API,Export metadata object for static metadata,export const metadata = {},Manual head tags,export const metadata = { title: 'Page' },<head><title>Page</title></head>,Medium, 28,API,Use Route Handlers for APIs,app/ap
  • Network accessline 29
    28,API,Use Route Handlers for APIs,app/api routes for API endpoints,app/api/users/route.ts,pages/api for new projects,export async function GET(request),export default function handler,Medium,https://nextjs.org/docs/app/building-your-applic
  • Network accessline 31
    30,API,Handle HTTP methods explicitly,Export named functions for methods,Export GET POST PUT DELETE,Single handler for all methods,export async function POST(),switch(req.method),Low, 31,API,Validate request body,Validate input before proce
  • Network accessline 32
    31,API,Validate request body,Validate input before processing,Zod or similar for validation,Trust client input,const body = schema.parse(await req.json()),const body = await req.json(),High, 32,Middleware,Use middleware for auth,Protect rou
  • Network accessline 33
    32,Middleware,Use middleware for auth,Protect routes with middleware.ts,middleware.ts at root,Auth check in every page,export function middleware(request),if (!session) redirect in page,Medium,https://nextjs.org/docs/app/building-your-appli
  • Network accessline 34
    33,Middleware,Match specific paths,Configure middleware matcher,config.matcher for specific routes,Run middleware on all routes,matcher: ['/dashboard/:path*'],No matcher config,Medium, 34,Middleware,Keep middleware edge-compatible,Middlewar
  • Network accessline 35
    34,Middleware,Keep middleware edge-compatible,Middleware runs on Edge runtime,Edge-compatible code only,Node.js APIs in middleware,Edge-compatible auth check,fs.readFile in middleware,High, 35,Environment,Use NEXT_PUBLIC prefix,Client-acces
  • Network accessline 36
    [Credential-related source omitted]
  • Access to secretsline 36
    [Credential-related source omitted]
  • Network accessline 37
    36,Environment,Validate env vars,Check required env vars exist,Validate on startup,Undefined env at runtime,if (!process.env.DATABASE_URL) throw,process.env.DATABASE_URL (might be undefined),High, 37,Environment,Use .env.local for secrets,L
  • Network accessline 38
    [Credential-related source omitted]
  • Access to secretsline 38
    [Credential-related source omitted]
  • Network accessline 39
    38,Performance,Analyze bundle size,Use @next/bundle-analyzer,Bundle analyzer in dev,Ship large bundles blindly,ANALYZE=true npm run build,No bundle analysis,Medium,https://nextjs.org/docs/app/building-your-application/optimizing/bundle-anal
  • Network accessline 40
    39,Performance,Use dynamic imports,Code split with next/dynamic,dynamic() for heavy components,Import everything statically,const Chart = dynamic(() => import('./Chart')),import Chart from './Chart',Medium,https://nextjs.org/docs/app/buildi
  • Network accessline 41
    40,Performance,Avoid layout shifts,Reserve space for dynamic content,Skeleton loaders aspect ratios,Content popping in,"<Skeleton className=""h-48""/>",No placeholder for async content,High, 41,Performance,Use Partial Prerendering,Combine s
  • Network accessline 42
    41,Performance,Use Partial Prerendering,Combine static and dynamic in one route,Static shell with Suspense holes,Full dynamic or static pages,Static header + dynamic content,Entire page SSR,Low,https://nextjs.org/docs/app/building-your-appl
  • Network accessline 43
    42,Link,Use next/link for navigation,Client-side navigation with prefetching,"<Link href=""""> for internal links",<a> for internal navigation,"<Link href=""/about"">About</Link>","<a href=""/about"">About</a>",High,https://nextjs.org/docs/
  • Network accessline 44
    43,Link,Prefetch strategically,Control prefetching behavior,prefetch={false} for low-priority,Prefetch all links,<Link prefetch={false}>,Default prefetch on every link,Low, 44,Link,Use scroll option appropriately,Control scroll behavior on 
  • Network accessline 45
    44,Link,Use scroll option appropriately,Control scroll behavior on navigation,scroll={false} for tabs pagination,Always scroll to top,<Link scroll={false}>,Manual scroll management,Low, 45,Config,Use next.config.js correctly,Configure Next.
  • Network accessline 46
    45,Config,Use next.config.js correctly,Configure Next.js behavior,Proper config options,Deprecated or wrong options,images: { remotePatterns: [] },images: { domains: [] },Medium,https://nextjs.org/docs/app/api-reference/next-config-js
  • Network accessline 47
    46,Config,Enable strict mode,Catch potential issues early,reactStrictMode: true,Strict mode disabled,reactStrictMode: true,reactStrictMode: false,Medium, 47,Config,Configure redirects and rewrites,Use config for URL management,redirects() r
  • Network accessline 48
    47,Config,Configure redirects and rewrites,Use config for URL management,redirects() rewrites() in config,Manual redirect handling,redirects: async () => [...],res.redirect in pages,Medium,https://nextjs.org/docs/app/api-reference/next-conf
  • Network accessline 49
    48,Deployment,Use Vercel for easiest deploy,Vercel optimized for Next.js,Deploy to Vercel,Self-host without knowledge,vercel deploy,Complex Docker setup for simple app,Low,https://nextjs.org/docs/app/building-your-application/deploying
  • Network accessline 50
    49,Deployment,Configure output for self-hosting,Set output option for deployment target,output: 'standalone' for Docker,Default output for containers,output: 'standalone',No output config for Docker,Medium,https://nextjs.org/docs/app/buildi
  • Network accessline 51
    50,Security,Sanitize user input,Never trust user input,Escape sanitize validate all input,Direct interpolation of user data,DOMPurify.sanitize(userInput),dangerouslySetInnerHTML={{ __html: userInput }},High, 51,Security,Use CSP headers,Cont
  • Network accessline 52
    51,Security,Use CSP headers,Content Security Policy for XSS protection,Configure CSP in next.config.js,No security headers,headers() with CSP,No CSP configuration,High,https://nextjs.org/docs/app/building-your-application/configuring/conten

skills/design-ui-ux-pro-max/data/stacks/nuxt-ui.csv

  • Network accessline 1
    No,Category,Guideline,Description,Do,Don't,Code Good,Code Bad,Severity,Docs URL 1,Installation,Add Nuxt UI module,Install and configure Nuxt UI in your Nuxt project,pnpm add @nuxt/ui and add to modules,Manual component imports,"modules: ['@
  • Network accessline 2
    1,Installation,Add Nuxt UI module,Install and configure Nuxt UI in your Nuxt project,pnpm add @nuxt/ui and add to modules,Manual component imports,"modules: ['@nuxt/ui']","import { UButton } from '@nuxt/ui'",High,https://ui.nuxt.com/docs/ge
  • Network accessline 3
    2,Installation,Import Tailwind and Nuxt UI CSS,Required CSS imports in main.css file,@import tailwindcss and @import @nuxt/ui,Skip CSS imports,"@import ""tailwindcss""; @import ""@nuxt/ui"";",No CSS imports,High,https://ui.nuxt.com/docs/get
  • Network accessline 4
    3,Installation,Wrap app with UApp component,UApp provides global configs for Toast Tooltip and overlays,<UApp> wrapper in app.vue,Skip UApp wrapper,<UApp><NuxtPage/></UApp>,<NuxtPage/> without wrapper,High,https://ui.nuxt.com/docs/component
  • Network accessline 5
    4,Components,Use U prefix for components,All Nuxt UI components use U prefix by default,UButton UInput UModal,Button Input Modal,<UButton>Click</UButton>,<Button>Click</Button>,Medium,https://ui.nuxt.com/docs/getting-started/installation/nu
  • Network accessline 6
    5,Components,Use semantic color props,Use semantic colors like primary secondary error,color="primary" color="error",Hardcoded colors,"<UButton color=""primary"">","<UButton class=""bg-green-500"">",Medium,https://ui.nuxt.com/docs/getting-s
  • Network accessline 7
    6,Components,Use variant prop for styling,Nuxt UI provides solid outline soft subtle ghost link variants,variant="soft" variant="outline",Custom button classes,"<UButton variant=""soft"">","<UButton class=""border bg-transparent"">",Medium,
  • Network accessline 8
    7,Components,Use size prop consistently,Components support xs sm md lg xl sizes,size="sm" size="lg",Arbitrary sizing classes,"<UButton size=""lg"">","<UButton class=""text-xl px-6"">",Low,https://ui.nuxt.com/docs/components/button
  • Network accessline 9
    8,Icons,Use icon prop with Iconify format,Nuxt UI supports Iconify icons via icon prop,icon="lucide:home" icon="heroicons:user",i-lucide-home format,"<UButton icon=""lucide:home"">","<UButton icon=""i-lucide-home"">",Medium,https://ui.nuxt.
  • Network accessline 10
    9,Icons,Use leadingIcon and trailingIcon,Position icons with dedicated props for clarity,leadingIcon="lucide:plus" trailingIcon="lucide:arrow-right",Manual icon positioning,"<UButton leadingIcon=""lucide:plus"">","<UButton><Icon name=""luci
  • Network accessline 11
    10,Theming,Configure colors in app.config.ts,Runtime color configuration without restart,ui.colors.primary in app.config.ts,Hardcoded colors in components,"defineAppConfig({ ui: { colors: { primary: 'blue' } } })","<UButton class=""bg-blue-
  • Network accessline 12
    11,Theming,Use @theme directive for custom colors,Define design tokens in CSS with Tailwind @theme,@theme { --color-brand-500: #xxx },Inline color definitions,@theme { --color-brand-500: #ef4444; },:style="{ color: '#ef4444' }",Medium,https
  • Network accessline 13
    12,Theming,Extend semantic colors in nuxt.config,Register new colors like tertiary in theme.colors,theme.colors array in ui config,Use undefined colors,"ui: { theme: { colors: ['primary', 'tertiary'] } }","<UButton color=""tertiary""> witho
  • Network accessline 14
    13,Forms,Use UForm with schema validation,UForm supports Zod Yup Joi Valibot schemas,:schema prop with validation schema,Manual form validation,"<UForm :schema=""schema"" :state=""state"">",Manual @blur validation,High,https://ui.nuxt.com/d
  • Network accessline 15
    14,Forms,Use UFormField for field wrapper,Provides label error message and validation display,UFormField with name prop,Manual error handling,"<UFormField name=""email"" label=""Email"">",<div><label>Email</label><UInput/><span>error</span>
  • Network accessline 16
    15,Forms,Handle form submit with @submit,UForm emits submit event with validated data,@submit handler on UForm,@click on submit button,"<UForm @submit=""onSubmit"">","<UButton @click=""onSubmit"">",Medium,https://ui.nuxt.com/docs/components
  • Network accessline 17
    16,Forms,Use validateOn prop for validation timing,Control when validation triggers (blur change input),validateOn="['blur']" for performance,Always validate on input,"<UForm :validateOn=""['blur', 'change']"">","<UForm> (validates on every
  • Network accessline 18
    17,Overlays,Use v-model:open for overlay control,Modal Slideover Drawer use v-model:open,v-model:open for controlled state,Manual show/hide logic,"<UModal v-model:open=""isOpen"">",<UModal v-if="isOpen">,Medium,https://ui.nuxt.com/docs/comp
  • Network accessline 19
    18,Overlays,Use useOverlay composable for programmatic overlays,Open overlays programmatically without template refs,useOverlay().open(MyModal),Template ref and manual control,"const overlay = useOverlay(); overlay.open(MyModal, { props })"
  • Network accessline 20
    19,Overlays,Use title and description props,Built-in header support for overlays,title="Confirm" description="Are you sure?",Manual header content,"<UModal title=""Confirm"" description=""Are you sure?"">","<UModal><template #header><h2>Con
  • Network accessline 21
    20,Dashboard,Use UDashboardSidebar for navigation,Provides collapsible resizable sidebar with mobile support,UDashboardSidebar with header default footer slots,Custom sidebar implementation,<UDashboardSidebar><template #header>...</template
  • Network accessline 22
    21,Dashboard,Use UDashboardGroup for layout,Wraps dashboard components with sidebar state management,UDashboardGroup > UDashboardSidebar + UDashboardPanel,Manual layout flex containers,<UDashboardGroup><UDashboardSidebar/><UDashboardPanel/>
  • Network accessline 23
    22,Dashboard,Use UDashboardNavbar for top navigation,Responsive navbar with mobile menu support,UDashboardNavbar in dashboard layout,Custom navbar implementation,<UDashboardNavbar :links="navLinks"/>,<nav class="border-b">,Low,https://ui.nu
  • Network accessline 24
    23,Tables,Use UTable with data and columns props,Powered by TanStack Table with built-in features,:data and :columns props,Manual table markup,"<UTable :data=""users"" :columns=""columns""/>","<table><tr v-for=""user in users"">",High,https
  • Network accessline 25
    24,Tables,Define columns with accessorKey,Column definitions use accessorKey for data binding,accessorKey: 'email' in column def,String column names only,"{ accessorKey: 'email', header: 'Email' }","['name', 'email']",Medium,https://ui.nuxt
  • Network accessline 26
    25,Tables,Use cell slot for custom rendering,Customize cell content with scoped slots,#cell-columnName slot,Override entire table,<template #cell-status="{ row }">,Manual column render function,Medium,https://ui.nuxt.com/docs/components/tab
  • Network accessline 27
    26,Tables,Enable sorting with sortable column option,Add sortable: true to column definition,sortable: true in column,Manual sort implementation,"{ accessorKey: 'name', sortable: true }",@click="sortBy('name')",Low,https://ui.nuxt.com/docs/
  • Network accessline 28
    27,Navigation,Use UNavigationMenu for nav links,Horizontal or vertical navigation with dropdown support,UNavigationMenu with items array,Manual nav with v-for,"<UNavigationMenu :items=""navItems""/>","<nav><a v-for=""item in items"">",Mediu
  • Network accessline 29
    28,Navigation,Use UBreadcrumb for page hierarchy,Automatic breadcrumb with NuxtLink support,:items array with label and to,Manual breadcrumb links,"<UBreadcrumb :items=""breadcrumbs""/>","<nav><span v-for=""crumb in crumbs"">",Low,https://u
  • Network accessline 30
    29,Navigation,Use UTabs for tabbed content,Tab navigation with content panels,UTabs with items containing slot content,Manual tab state,"<UTabs :items=""tabs""/>","<div><button @click=""tab=1"">",Medium,https://ui.nuxt.com/docs/components/t
  • Network accessline 31
    30,Feedback,Use useToast for notifications,Composable for toast notifications,useToast().add({ title description }),Alert components for toasts,"const toast = useToast(); toast.add({ title: 'Saved' })",<UAlert v-if="showSuccess">,High,https
  • Network accessline 32
    31,Feedback,Use UAlert for inline messages,Static alert messages with icon and actions,UAlert with title description color,Toast for static messages,"<UAlert title=""Warning"" color=""warning""/>",useToast for inline alerts,Medium,https://u
  • Network accessline 33
    32,Feedback,Use USkeleton for loading states,Placeholder content during data loading,USkeleton with appropriate size,Spinner for content loading,<USkeleton class="h-4 w-32"/>,<UIcon name="lucide:loader" class="animate-spin"/>,Low,https://ui
  • Network accessline 34
    33,Color Mode,Use UColorModeButton for theme toggle,Built-in light/dark mode toggle button,UColorModeButton component,Manual color mode logic,<UColorModeButton/>,"<button @click=""toggleColorMode"">",Low,https://ui.nuxt.com/docs/components/
  • Network accessline 35
    34,Color Mode,Use UColorModeSelect for theme picker,Dropdown to select system light or dark mode,UColorModeSelect component,Custom select for theme,<UColorModeSelect/>,"<USelect v-model=""colorMode"" :items=""modes""/>",Low,https://ui.nuxt.
  • Network accessline 36
    35,Customization,Use ui prop for component styling,Override component styles via ui prop,ui prop with slot class overrides,Global CSS overrides,"<UButton :ui=""{ base: 'rounded-full' }""/>",<UButton class="!rounded-full"/>,Medium,https://ui
  • Network accessline 37
    36,Customization,Configure default variants in nuxt.config,Set default color and size for all components,theme.defaultVariants in ui config,Repeat props on every component,"ui: { theme: { defaultVariants: { color: 'neutral' } } }","<UButton
  • Network accessline 38
    37,Customization,Use app.config.ts for theme overrides,Runtime theme customization,defineAppConfig with ui key,nuxt.config for runtime values,"defineAppConfig({ ui: { button: { defaultVariants: { size: 'sm' } } } })","nuxt.config ui.button.
  • Network accessline 39
    38,Performance,Enable component detection,Tree-shake unused component CSS,experimental.componentDetection: true,Include all component CSS,"ui: { experimental: { componentDetection: true } }","ui: {} (includes all CSS)",Low,https://ui.nuxt.c
  • Network accessline 40
    39,Performance,Use UTable virtualize for large data,Enable virtualization for 1000+ rows,:virtualize prop on UTable,Render all rows,"<UTable :data=""largeData"" virtualize/>","<UTable :data=""largeData""/>",Medium,https://ui.nuxt.com/docs/c
  • Network accessline 41
    40,Accessibility,Use semantic component props,Components have built-in ARIA support,Use title description label props,Skip accessibility props,"<UModal title=""Settings"">","<UModal><h2>Settings</h2>",Medium,https://ui.nuxt.com/docs/compone
  • Network accessline 42
    41,Accessibility,Use UFormField for form accessibility,Automatic label-input association,UFormField wraps inputs,Manual id and for attributes,"<UFormField label=""Email""><UInput/></UFormField>","<label for=""email"">Email</label><UInput id
  • Network accessline 43
    42,Content,Use UContentToc for table of contents,Automatic TOC with active heading highlight,UContentToc with :links,Manual TOC implementation,"<UContentToc :links=""toc""/>","<nav><a v-for=""heading in headings"">",Low,https://ui.nuxt.com/
  • Network accessline 44
    43,Content,Use UContentSearch for docs search,Command palette for documentation search,UContentSearch with Nuxt Content,Custom search implementation,<UContentSearch/>,<UCommandPalette :groups="searchResults"/>,Low,https://ui.nuxt.com/docs/c
  • Network accessline 45
    44,AI/Chat,Use UChatMessages for chat UI,Designed for Vercel AI SDK integration,UChatMessages with messages array,Custom chat message list,"<UChatMessages :messages=""messages""/>","<div v-for=""msg in messages"">",Medium,https://ui.nuxt.co
  • Network accessline 46
    45,AI/Chat,Use UChatPrompt for input,Enhanced textarea for AI prompts,UChatPrompt with v-model,Basic textarea,<UChatPrompt v-model="prompt"/>,<UTextarea v-model="prompt"/>,Medium,https://ui.nuxt.com/docs/components/chat-prompt
  • Network accessline 47
    46,Editor,Use UEditor for rich text,TipTap-based editor with toolbar support,UEditor with v-model:content,Custom TipTap setup,"<UEditor v-model:content=""content""/>",Manual TipTap initialization,Medium,https://ui.nuxt.com/docs/components/e
  • Network accessline 48
    47,Links,Use to prop for navigation,UButton and ULink support NuxtLink to prop,to="/dashboard" for internal links,href for internal navigation,"<UButton to=""/dashboard"">","<UButton href=""/dashboard"">",Medium,https://ui.nuxt.com/docs/com
  • Network accessline 49
    48,Links,Use external prop for outside links,Explicitly mark external links,target="_blank" with external URLs,Forget rel="noopener","<UButton to=""https://example.com"" target=""_blank"">","<UButton href=""https://..."">",Low,https://ui.nu
  • Network accessline 50
    49,Loading,Use loadingAuto on buttons,Automatic loading state from @click promise,loadingAuto prop on UButton,Manual loading state,"<UButton loadingAuto @click=""async () => await save()"">","<UButton :loading=""isLoading"" @click=""save"">
  • Network accessline 51
    50,Loading,Use UForm loadingAuto,Auto-disable form during submit,loadingAuto on UForm (default true),Manual form disabled state,"<UForm @submit=""handleSubmit"">","<UForm :disabled=""isSubmitting"">",Low,https://ui.nuxt.com/docs/components/

skills/design-ui-ux-pro-max/data/stacks/nuxtjs.csv

  • Network accessline 1
    No,Category,Guideline,Description,Do,Don't,Code Good,Code Bad,Severity,Docs URL 1,Routing,Use file-based routing,Create routes by adding files in pages directory,pages/ directory with index.vue,Manual route configuration,pages/dashboard/ind
  • Network accessline 2
    1,Routing,Use file-based routing,Create routes by adding files in pages directory,pages/ directory with index.vue,Manual route configuration,pages/dashboard/index.vue,Custom router setup,Medium,https://nuxt.com/docs/getting-started/routing
  • Network accessline 3
    2,Routing,Use dynamic route parameters,Create dynamic routes with bracket syntax,[id].vue for dynamic params,Hardcoded routes for dynamic content,pages/posts/[id].vue,pages/posts/post1.vue,Medium,https://nuxt.com/docs/getting-started/routin
  • Network accessline 4
    3,Routing,Use catch-all routes,Handle multiple path segments with [...slug],[...slug].vue for catch-all,Multiple nested dynamic routes,pages/[...slug].vue,pages/[a]/[b]/[c].vue,Low,https://nuxt.com/docs/getting-started/routing
  • Network accessline 5
    4,Routing,Define page metadata with definePageMeta,Set page-level configuration and middleware,definePageMeta for layout middleware title,Manual route meta configuration,"definePageMeta({ layout: 'admin', middleware: 'auth' })",router.befor
  • Network accessline 6
    5,Routing,Use validate for route params,Validate dynamic route parameters before rendering,validate function in definePageMeta,Manual validation in setup,"definePageMeta({ validate: (route) => /^\d+$/.test(route.params.id) })",if (!valid) n
  • Network accessline 7
    6,Rendering,Use SSR by default,Server-side rendering is enabled by default,Keep ssr: true (default),Disable SSR unnecessarily,ssr: true (default),ssr: false for all pages,High,https://nuxt.com/docs/guide/concepts/rendering
  • Network accessline 8
    7,Rendering,Use .client suffix for client-only components,Mark components to render only on client,ComponentName.client.vue suffix,v-if with process.client check,Comments.client.vue,<div v-if="process.client"><Comments/></div>,Medium,https:
  • Network accessline 9
    8,Rendering,Use .server suffix for server-only components,Mark components to render only on server,ComponentName.server.vue suffix,Manual server check,HeavyMarkdown.server.vue,v-if="process.server",Low,https://nuxt.com/docs/guide/directory-
  • Network accessline 10
    9,DataFetching,Use useFetch for simple data fetching,Wrapper around useAsyncData for URL fetching,useFetch for API calls,$fetch in onMounted,"const { data } = await useFetch('/api/posts')","onMounted(async () => { data.value = await $fetch(
  • Network accessline 11
    10,DataFetching,Use useAsyncData for complex fetching,Fine-grained control over async data,useAsyncData for CMS or custom fetching,useFetch for non-URL data sources,"const { data } = await useAsyncData('posts', () => cms.getPosts())","const
  • Network accessline 12
    11,DataFetching,Use $fetch for non-reactive requests,$fetch for event handlers and non-component code,$fetch in event handlers or server routes,useFetch in click handlers,"async function submit() { await $fetch('/api/submit', { method: 'POS
  • Network accessline 13
    12,DataFetching,Use lazy option for non-blocking fetch,Defer data fetching for better initial load,lazy: true for below-fold content,Blocking fetch for non-critical data,"useFetch('/api/comments', { lazy: true })",await useFetch('/api/comme
  • Network accessline 14
    13,DataFetching,Use server option to control fetch location,Choose where data is fetched,server: false for client-only data,Server fetch for user-specific client data,"useFetch('/api/user-preferences', { server: false })",useFetch for local
  • Network accessline 15
    14,DataFetching,Use pick to reduce payload size,Select only needed fields from response,pick option for large responses,Fetching entire objects when few fields needed,"useFetch('/api/user', { pick: ['id', 'name'] })",useFetch('/api/user') t
  • Network accessline 16
    15,DataFetching,Use transform for data manipulation,Transform data before storing in state,transform option for data shaping,Manual transformation after fetch,"useFetch('/api/posts', { transform: (posts) => posts.map(p => p.title) })",const
  • Network accessline 17
    16,DataFetching,Handle loading and error states,Always handle pending and error states,Check status pending error refs,Ignoring loading states,"<div v-if=""status === 'pending'"">Loading...</div>",No loading indicator,High,https://nuxt.com/
  • Network accessline 18
    17,Lifecycle,Avoid side effects in script setup root,Move side effects to lifecycle hooks,Side effects in onMounted,setInterval in root script setup,"onMounted(() => { interval = setInterval(...) })","<script setup>setInterval(...)</script>
  • Network accessline 19
    18,Lifecycle,Use onMounted for DOM access,Access DOM only after component is mounted,onMounted for DOM manipulation,Direct DOM access in setup,"onMounted(() => { document.getElementById('el') })","<script setup>document.getElementById('el')
  • Network accessline 20
    19,Lifecycle,Use nextTick for post-render access,Wait for DOM updates before accessing elements,await nextTick() after state changes,Immediate DOM access after state change,"count.value++; await nextTick(); el.value.focus()","count.value++;
  • Network accessline 21
    20,Lifecycle,Use onPrehydrate for pre-hydration logic,Run code before Nuxt hydrates the page,onPrehydrate for client setup,onMounted for hydration-critical code,"onPrehydrate(() => { console.log(window) })",onMounted for pre-hydration needs
  • Network accessline 22
    21,Server,Use server/api for API routes,Create API endpoints in server/api directory,server/api/users.ts for /api/users,Manual Express setup,server/api/hello.ts -> /api/hello,app.get('/api/hello'),High,https://nuxt.com/docs/guide/directory-
  • Network accessline 23
    22,Server,Use defineEventHandler for handlers,Define server route handlers,defineEventHandler for all handlers,export default function,"export default defineEventHandler((event) => { return { hello: 'world' } })","export default function(re
  • Network accessline 24
    23,Server,Use server/routes for non-api routes,Routes without /api prefix,server/routes for custom paths,server/api for non-api routes,server/routes/sitemap.xml.ts,server/api/sitemap.xml.ts,Medium,https://nuxt.com/docs/guide/directory-struc
  • Network accessline 25
    24,Server,Use getQuery and readBody for input,Access query params and request body,getQuery(event) readBody(event),Direct event access,"const { id } = getQuery(event)",event.node.req.query,Medium,https://nuxt.com/docs/guide/directory-struct
  • Network accessline 26
    25,Server,Validate server input,Always validate input in server handlers,Zod or similar for validation,Trust client input,"const body = await readBody(event); schema.parse(body)",const body = await readBody(event),High,https://nuxt.com/docs
  • Network accessline 27
    26,State,Use useState for shared reactive state,SSR-friendly shared state across components,useState for cross-component state,ref for shared state,"const count = useState('count', () => 0)",const count = ref(0) in composable,High,https://n
  • Network accessline 28
    27,State,Use unique keys for useState,Prevent state conflicts with unique keys,Descriptive unique keys for each state,Generic or duplicate keys,"useState('user-preferences', () => ({}))",useState('data') in multiple places,Medium,https://nu
  • Network accessline 29
    28,State,Use Pinia for complex state,Pinia for advanced state management,@pinia/nuxt for complex apps,Custom state management,useMainStore() with Pinia,Custom reactive store implementation,Medium,https://nuxt.com/docs/getting-started/state-
  • Network accessline 30
    29,State,Use callOnce for one-time async operations,Ensure async operations run only once,callOnce for store initialization,Direct await in component,"await callOnce(store.fetch)",await store.fetch() on every render,Medium,https://nuxt.com/
  • Network accessline 31
    30,SEO,Use useSeoMeta for SEO tags,Type-safe SEO meta tag management,useSeoMeta for meta tags,useHead for simple meta,"useSeoMeta({ title: 'Home', ogTitle: 'Home', description: '...' })","useHead({ meta: [{ name: 'description', content: '..
  • Network accessline 32
    31,SEO,Use reactive values in useSeoMeta,Dynamic SEO tags with refs or getters,Computed getters for dynamic values,Static values for dynamic content,"useSeoMeta({ title: () => post.value.title })","useSeoMeta({ title: post.value.title })",M
  • Network accessline 33
    32,SEO,Use useHead for non-meta head elements,Scripts styles links in head,useHead for scripts and links,useSeoMeta for scripts,"useHead({ script: [{ src: '/analytics.js' }] })","useSeoMeta({ script: '...' })",Medium,https://nuxt.com/docs/a
  • Network accessline 34
    33,SEO,Include OpenGraph tags,Add OG tags for social sharing,ogTitle ogDescription ogImage,Missing social preview,"useSeoMeta({ ogImage: '/og.png', twitterCard: 'summary_large_image' })",No OG configuration,Medium,https://nuxt.com/docs/api/
  • Network accessline 35
    34,Middleware,Use defineNuxtRouteMiddleware,Define route middleware properly,defineNuxtRouteMiddleware wrapper,export default function,"export default defineNuxtRouteMiddleware((to, from) => {})","export default function(to, from) {}",High,
  • Network accessline 36
    35,Middleware,Use navigateTo for redirects,Redirect in middleware with navigateTo,return navigateTo('/login'),router.push in middleware,"if (!auth) return navigateTo('/login')","if (!auth) router.push('/login')",High,https://nuxt.com/docs/a
  • Network accessline 37
    36,Middleware,Reference middleware in definePageMeta,Apply middleware to specific pages,middleware array in definePageMeta,Global middleware for page-specific,definePageMeta({ middleware: ['auth'] }),Global auth check for one page,Medium,ht
  • Network accessline 38
    37,Middleware,Use .global suffix for global middleware,Apply middleware to all routes,auth.global.ts for app-wide auth,Manual middleware on every page,middleware/auth.global.ts,middleware: ['auth'] on every page,Medium,https://nuxt.com/docs
  • Network accessline 39
    38,ErrorHandling,Use createError for errors,Create errors with proper status codes,createError with statusCode,throw new Error,"throw createError({ statusCode: 404, statusMessage: 'Not Found' })",throw new Error('Not Found'),High,https://nu
  • Network accessline 40
    39,ErrorHandling,Use NuxtErrorBoundary for local errors,Handle errors within component subtree,NuxtErrorBoundary for component errors,Global error page for local errors,"<NuxtErrorBoundary @error=""log""><template #error=""{ error }"">",err
  • Network accessline 41
    40,ErrorHandling,Use clearError to recover from errors,Clear error state and optionally redirect,clearError({ redirect: '/' }),Manual error state reset,clearError({ redirect: '/home' }),error.value = null,Medium,https://nuxt.com/docs/api/ut
  • Network accessline 42
    41,ErrorHandling,Use short statusMessage,Keep statusMessage brief for security,Short generic messages,Detailed error info in statusMessage,"createError({ statusCode: 400, statusMessage: 'Bad Request' })","createError({ statusMessage: 'Inval
  • Network accessline 43
    42,Link,Use NuxtLink for internal navigation,Client-side navigation with prefetching,<NuxtLink to> for internal links,<a href> for internal links,<NuxtLink to="/about">About</NuxtLink>,<a href="/about">About</a>,High,https://nuxt.com/docs/a
  • Network accessline 44
    43,Link,Configure prefetch behavior,Control when prefetching occurs,prefetchOn for interaction-based,Default prefetch for low-priority,"<NuxtLink prefetch-on=""interaction"">",Always default prefetch,Low,https://nuxt.com/docs/api/components
  • Network accessline 45
    44,Link,Use useRouter for programmatic navigation,Navigate programmatically,useRouter().push() for navigation,Direct window.location,"const router = useRouter(); router.push('/dashboard')",window.location.href = '/dashboard',Medium,https://
  • Network accessline 46
    45,Link,Use navigateTo in composables,Navigate outside components,navigateTo() in middleware or plugins,useRouter in non-component code,return navigateTo('/login'),router.push in middleware,Medium,https://nuxt.com/docs/api/utils/navigate-to
  • Network accessline 47
    46,AutoImports,Leverage auto-imports,Use auto-imported composables directly,Direct use of ref computed useFetch,Manual imports for Nuxt composables,"const count = ref(0)","import { ref } from 'vue'; const count = ref(0)",Medium,https://nuxt
  • Network accessline 48
    47,AutoImports,Use #imports for explicit imports,Explicit imports when needed,#imports for clarity or disabled auto-imports,"import from 'vue' when auto-import enabled","import { ref } from '#imports'","import { ref } from 'vue'",Low,https:
  • Network accessline 49
    48,AutoImports,Configure third-party auto-imports,Add external package auto-imports,imports.presets in nuxt.config,Manual imports everywhere,"imports: { presets: [{ from: 'vue-i18n', imports: ['useI18n'] }] }",import { useI18n } everywhere,
  • Network accessline 50
    49,Plugins,Use defineNuxtPlugin,Define plugins properly,defineNuxtPlugin wrapper,export default function,"export default defineNuxtPlugin((nuxtApp) => {})","export default function(ctx) {}",High,https://nuxt.com/docs/guide/directory-structu
  • Network accessline 51
    50,Plugins,Use provide for injection,Provide helpers across app,return { provide: {} } for type safety,nuxtApp.provide without types,"return { provide: { hello: (name) => `Hello ${name}!` } }","nuxtApp.provide('hello', fn)",Medium,https://n
  • Network accessline 52
    51,Plugins,Use .client or .server suffix,Control plugin execution environment,plugin.client.ts for client-only,if (process.client) checks,analytics.client.ts,"if (process.client) { // analytics }",Medium,https://nuxt.com/docs/guide/director
  • Network accessline 53
    [Credential-related source omitted]
  • Access to secretsline 53
    [Credential-related source omitted]
  • Network accessline 54
    [Credential-related source omitted]
  • Access to secretsline 54
    [Credential-related source omitted]
  • Network accessline 55
    54,Environment,Access public config with useRuntimeConfig,Get public config in components,useRuntimeConfig().public,Direct process.env access,const config = useRuntimeConfig(); config.public.apiBase,process.env.NUXT_PUBLIC_API_BASE,High,htt
  • Network accessline 56
    55,Environment,Keep secrets in private config,Server-only secrets in runtimeConfig root,runtimeConfig.apiSecret (server only),Secrets in public config,runtimeConfig: { dbPassword: '' },runtimeConfig: { public: { dbPassword: '' } },High,http
  • Network accessline 57
    56,Performance,Use Lazy prefix for code splitting,Lazy load components with Lazy prefix,<LazyComponent> for below-fold,Eager load all components,<LazyMountainsList v-if="show"/>,<MountainsList/> for hidden content,Medium,https://nuxt.com/do
  • Network accessline 58
    57,Performance,Use useLazyFetch for non-blocking data,Alias for useFetch with lazy: true,useLazyFetch for secondary data,useFetch for all requests,"const { data } = useLazyFetch('/api/comments')",await useFetch for comments section,Medium,h
  • Network accessline 59
    58,Performance,Use lazy hydration for interactivity,Delay component hydration until needed,LazyComponent with hydration strategy,Immediate hydration for all,<LazyModal hydrate-on-visible/>,<Modal/> in footer,Low,https://nuxt.com/docs/guide/

skills/design-ui-ux-pro-max/data/stacks/react-native.csv

  • Network accessline 1
    No,Category,Guideline,Description,Do,Don't,Code Good,Code Bad,Severity,Docs URL 1,Components,Use functional components,Hooks-based components are standard,Functional components with hooks,Class components,const App = () => { },class App ext
  • Network accessline 2
    1,Components,Use functional components,Hooks-based components are standard,Functional components with hooks,Class components,const App = () => { },class App extends Component,Medium,https://reactnative.dev/docs/intro-react
  • Network accessline 4
    3,Components,Use TypeScript,Type safety for props and state,TypeScript for new projects,JavaScript without types,const Button: FC<Props> = () => { },const Button = (props) => { },Medium, 4,Components,Colocate component files,Keep related fi
  • Network accessline 5
    4,Components,Colocate component files,Keep related files together,Component folder with styles,Flat structure,components/Button/index.tsx styles.ts,components/Button.tsx styles/button.ts,Low, 5,Styling,Use StyleSheet.create,Optimized style 
  • Network accessline 6
    5,Styling,Use StyleSheet.create,Optimized style objects,StyleSheet for all styles,Inline style objects,StyleSheet.create({ container: {} }),style={{ margin: 10 }},High,https://reactnative.dev/docs/stylesheet
  • Network accessline 7
    6,Styling,Avoid inline styles,Prevent object recreation,Styles in StyleSheet,Inline style objects in render,style={styles.container},"style={{ margin: 10, padding: 5 }}",Medium, 7,Styling,Use flexbox for layout,React Native uses flexbox,fle
  • Network accessline 8
    7,Styling,Use flexbox for layout,React Native uses flexbox,flexDirection alignItems justifyContent,Absolute positioning everywhere,flexDirection: 'row',position: 'absolute' everywhere,Medium,https://reactnative.dev/docs/flexbox
  • Network accessline 9
    8,Styling,Handle platform differences,Platform-specific styles,Platform.select or .ios/.android files,Same styles for both platforms,"Platform.select({ ios: {}, android: {} })",Hardcoded iOS values,Medium,https://reactnative.dev/docs/platfo
  • Network accessline 10
    9,Styling,Use responsive dimensions,Scale for different screens,Dimensions or useWindowDimensions,Fixed pixel values,useWindowDimensions(),width: 375,Medium, 10,Navigation,Use React Navigation,Standard navigation library,React Navigation fo
  • Network accessline 11
    10,Navigation,Use React Navigation,Standard navigation library,React Navigation for routing,Manual navigation management,createStackNavigator(),Custom navigation state,Medium,https://reactnavigation.org/
  • Network accessline 12
    11,Navigation,Type navigation params,Type-safe navigation,Typed navigation props,Untyped navigation,"navigation.navigate<RootStackParamList>('Home', { id })","navigation.navigate('Home', { id })",Medium, 12,Navigation,Use deep linking,Suppo
  • Network accessline 13
    12,Navigation,Use deep linking,Support URL-based navigation,Configure linking prop,No deep link support,linking: { prefixes: [] },No linking configuration,Medium,https://reactnavigation.org/docs/deep-linking/
  • Network accessline 17
    16,State,Use context sparingly,Context for global state,Context for theme auth locale,Context for frequently changing data,ThemeContext for app theme,Context for list item data,Medium, 17,State,Consider Zustand or Redux,External state manag
  • Network accessline 18
    17,State,Consider Zustand or Redux,External state management,Zustand for simple Redux for complex,useState for global state,create((set) => ({ })),Prop drilling global state,Medium, 18,Lists,Use FlatList for long lists,Virtualized list rend
  • Network accessline 19
    18,Lists,Use FlatList for long lists,Virtualized list rendering,FlatList for 50+ items,ScrollView with map,<FlatList data={items} />,<ScrollView>{items.map()}</ScrollView>,High,https://reactnative.dev/docs/flatlist
  • Network accessline 26
    25,Performance,Use useMemo for expensive ops,Cache expensive calculations,useMemo for heavy computations,Recalculate every render,"useMemo(() => expensive(), [deps])",const result = expensive(),Medium, 26,Performance,Avoid anonymous functio
  • Network accessline 27
    26,Performance,Avoid anonymous functions in JSX,Prevent re-renders,Named handlers or useCallback,Inline arrow functions,onPress={handlePress},onPress={() => doSomething()},Medium, 27,Performance,Use Hermes engine,Improved startup and memory
  • Network accessline 28
    27,Performance,Use Hermes engine,Improved startup and memory,Enable Hermes in build,JavaScriptCore for new projects,hermes_enabled: true,hermes_enabled: false,Medium,https://reactnative.dev/docs/hermes
  • Network accessline 29
    28,Images,Use expo-image,Modern performant image component for React Native,"Use expo-image for caching, blurring, and performance",Use default Image for heavy lists or unmaintained libraries,<Image source={url} cachePolicy='memory-disk' />
  • Network accessline 31
    30,Images,Use resizeMode,Control image scaling,resizeMode cover contain,Stretch images,"resizeMode=""cover""",No resizeMode,Low, 31,Forms,Use controlled inputs,State-controlled form fields,value + onChangeText,Uncontrolled inputs,<TextInput
  • Network accessline 32
    31,Forms,Use controlled inputs,State-controlled form fields,value + onChangeText,Uncontrolled inputs,<TextInput value={text} onChangeText={setText} />,<TextInput defaultValue={text} />,Medium, 32,Forms,Handle keyboard,Manage keyboard visibi
  • Network accessline 33
    32,Forms,Handle keyboard,Manage keyboard visibility,KeyboardAvoidingView,Content hidden by keyboard,"<KeyboardAvoidingView behavior=""padding"">",No keyboard handling,High,https://reactnative.dev/docs/keyboardavoidingview
  • Network accessline 34
    33,Forms,Use proper keyboard types,Appropriate keyboard for input,keyboardType for input type,Default keyboard for all,"keyboardType=""email-address""","keyboardType=""default"" for email",Low, 34,Touch,Use Pressable,Modern touch handling,P
  • Network accessline 35
    34,Touch,Use Pressable,Modern touch handling,Pressable for touch interactions,TouchableOpacity for new code,<Pressable onPress={} />,<TouchableOpacity onPress={} />,Low,https://reactnative.dev/docs/pressable
  • Network accessline 36
    35,Touch,Provide touch feedback,Visual feedback on press,Ripple or opacity change,No feedback on press,android_ripple={{ color: 'gray' }},No press feedback,Medium, 36,Touch,Set hitSlop for small targets,Increase touch area,hitSlop for icons
  • Network accessline 37
    36,Touch,Set hitSlop for small targets,Increase touch area,hitSlop for icons and small buttons,Tiny touch targets,hitSlop={{ top: 10 bottom: 10 }},44x44 with no hitSlop,Medium, 37,Animation,Use Reanimated,High-performance animations,react-n
  • Network accessline 38
    37,Animation,Use Reanimated,High-performance animations,react-native-reanimated,Animated API for complex,useSharedValue useAnimatedStyle,Animated.timing for gesture,Medium,https://docs.swmansion.com/react-native-reanimated/
  • Network accessline 39
    38,Animation,Run on UI thread,worklets for smooth animation,Run animations on UI thread,JS thread animations,runOnUI(() => {}),Animated on JS thread,High, 39,Animation,Use gesture handler,Native gesture recognition,react-native-gesture-hand
  • Network accessline 40
    39,Animation,Use gesture handler,Native gesture recognition,react-native-gesture-handler,JS-based gesture handling,<GestureDetector>,<View onTouchMove={} />,Medium,https://docs.swmansion.com/react-native-gesture-handler/ 40,Async,Handle loa
  • Network accessline 42
    41,Async,Handle errors gracefully,Error boundaries and fallbacks,Error UI for failed requests,Crash on error,{error ? <ErrorView /> : <Content />},No error handling,High, 42,Async,Cancel async operations,Cleanup on unmount,AbortController o
  • Network accessline 43
    42,Async,Cancel async operations,Cleanup on unmount,AbortController or cleanup,Memory leaks from async,useEffect cleanup,No cleanup for subscriptions,High, 43,Accessibility,Add accessibility labels,Describe UI elements,accessibilityLabel fo
  • Network accessline 44
    43,Accessibility,Add accessibility labels,Describe UI elements,accessibilityLabel for all interactive,Missing labels,"accessibilityLabel=""Submit form""",<Pressable> without label,High,https://reactnative.dev/docs/accessibility
  • Network accessline 45
    44,Accessibility,Use accessibility roles,Semantic meaning,accessibilityRole for elements,Wrong roles,"accessibilityRole=""button""",No role for button,Medium, 45,Accessibility,Support screen readers,Test with TalkBack/VoiceOver,Test with sc
  • Network accessline 46
    45,Accessibility,Support screen readers,Test with TalkBack/VoiceOver,Test with screen readers,Skip accessibility testing,Regular TalkBack testing,No screen reader testing,High, 46,Testing,Use React Native Testing Library,Component testing,r
  • Network accessline 47
    46,Testing,Use React Native Testing Library,Component testing,render and fireEvent,Enzyme or manual testing,render(<Component />),shallow(<Component />),Medium,https://callstack.github.io/react-native-testing-library/
  • Network accessline 48
    47,Testing,Test on real devices,Real device behavior,Test on iOS and Android devices,Simulator only,Device testing in CI,Simulator only testing,High, 48,Testing,Use Detox for E2E,End-to-end testing,Detox for critical flows,Manual E2E testin
  • Network accessline 49
    48,Testing,Use Detox for E2E,End-to-end testing,Detox for critical flows,Manual E2E testing,detox test,Manual testing only,Medium,https://wix.github.io/Detox/
  • Network accessline 50
    49,Native,Use native modules carefully,Bridge has overhead,Batch native calls,Frequent bridge crossing,Batch updates,Call native on every keystroke,High, 50,Native,Use Expo when possible,Simplified development,Expo for standard features,Bar
  • Network accessline 51
    50,Native,Use Expo when possible,Simplified development,Expo for standard features,Bare RN for simple apps,expo install package,react-native link package,Low,https://docs.expo.dev/
  • Network accessline 52
    51,Native,Handle permissions,Request permissions properly,Check and request permissions,Assume permissions granted,PermissionsAndroid.request(),Access without permission check,High,https://reactnative.dev/docs/permissionsandroid

skills/design-ui-ux-pro-max/data/stacks/react.csv

  • Network accessline 1
    No,Category,Guideline,Description,Do,Don't,Code Good,Code Bad,Severity,Docs URL 1,State,Use useState for local state,Simple component state should use useState hook,useState for form inputs toggles counters,Class components this.state,"cons
  • Network accessline 2
    1,State,Use useState for local state,Simple component state should use useState hook,useState for form inputs toggles counters,Class components this.state,"const [count, setCount] = useState(0)",this.state = { count: 0 },Medium,https://reac
  • Network accessline 3
    2,State,Lift state up when needed,Share state between siblings by lifting to parent,Lift shared state to common ancestor,Prop drilling through many levels,Parent holds state passes down,Deep prop chains,Medium,https://react.dev/learn/sharin
  • Network accessline 4
    3,State,Use useReducer for complex state,Complex state logic benefits from reducer pattern,useReducer for state with multiple sub-values,Multiple useState for related values,useReducer with action types,5+ useState calls that update togethe
  • Network accessline 5
    4,State,Avoid unnecessary state,Derive values from existing state when possible,Compute derived values in render,Store derivable values in state,const total = items.reduce(...),"const [total, setTotal] = useState(0)",High,https://react.dev/
  • Network accessline 6
    5,State,Initialize state lazily,Use function form for expensive initial state,useState(() => computeExpensive()),useState(computeExpensive()),useState(() => JSON.parse(data)),useState(JSON.parse(data)),Medium,https://react.dev/reference/rea
  • Network accessline 7
    6,Effects,Clean up effects,Return cleanup function for subscriptions timers,Return cleanup function in useEffect,No cleanup for subscriptions,useEffect(() => { sub(); return unsub; }),useEffect(() => { subscribe(); }),High,https://react.dev
  • Network accessline 8
    7,Effects,Specify dependencies correctly,Include all values used inside effect in deps array,All referenced values in dependency array,Empty deps with external references,[value] when using value in effect,[] when using props/state in effec
  • Network accessline 9
    8,Effects,Avoid unnecessary effects,Don't use effects for transforming data or events,Transform data during render handle events directly,useEffect for derived state or event handling,const filtered = items.filter(...),useEffect(() => setFi
  • Network accessline 10
    9,Effects,Use refs for non-reactive values,Store values that don't trigger re-renders in refs,useRef for interval IDs DOM elements,useState for values that don't need render,const intervalRef = useRef(null),"const [intervalId, setIntervalId
  • Network accessline 11
    10,Rendering,Use keys properly,Stable unique keys for list items,Use stable IDs as keys,Array index as key for dynamic lists,key={item.id},key={index},High,https://react.dev/learn/rendering-lists#keeping-list-items-in-order-with-key
  • Network accessline 12
    11,Rendering,Memoize expensive calculations,Use useMemo for costly computations,useMemo for expensive filtering/sorting,Recalculate every render,"useMemo(() => expensive(), [deps])",const result = expensiveCalc(),Medium,https://react.dev/re
  • Network accessline 13
    12,Rendering,Memoize callbacks passed to children,Use useCallback for functions passed as props,useCallback for handlers passed to memoized children,New function reference every render,"useCallback(() => {}, [deps])",const handler = () => {
  • Network accessline 14
    13,Rendering,Use React.memo wisely,Wrap components that render often with same props,memo for pure components with stable props,memo everything or nothing,memo(ExpensiveList),memo(SimpleButton),Low,https://react.dev/reference/react/memo
  • Network accessline 15
    14,Rendering,Avoid inline object/array creation in JSX,Create objects outside render or memoize,Define style objects outside component,Inline objects in props,<div style={styles.container}>,<div style={{ margin: 10 }}>,Medium, 15,Components
  • Network accessline 16
    15,Components,Keep components small and focused,Single responsibility for each component,One concern per component,Large multi-purpose components,<UserAvatar /><UserName />,<UserCard /> with 500 lines,Medium, 16,Components,Use composition o
  • Network accessline 17
    16,Components,Use composition over inheritance,Compose components using children and props,Use children prop for flexibility,Inheritance hierarchies,<Card>{content}</Card>,class SpecialCard extends Card,Medium,https://react.dev/learn/thinki
  • Network accessline 18
    17,Components,Colocate related code,Keep related components and hooks together,Related files in same directory,Flat structure with many files,components/User/UserCard.tsx,components/UserCard.tsx + hooks/useUser.ts,Low, 18,Components,Use fra
  • Network accessline 19
    18,Components,Use fragments to avoid extra DOM,Fragment or <> for multiple elements without wrapper,<> for grouping without DOM node,Extra div wrappers,<>{items.map(...)}</>,<div>{items.map(...)}</div>,Low,https://react.dev/reference/react/
  • Network accessline 20
    19,Props,Destructure props,Destructure props for cleaner component code,Destructure in function signature,props.name props.value throughout,"function User({ name, age })",function User(props),Low, 20,Props,Provide default props values,Use d
  • Network accessline 21
    20,Props,Provide default props values,Use default parameters or defaultProps,Default values in destructuring,Undefined checks throughout,function Button({ size = 'md' }),if (size === undefined) size = 'md',Low, 21,Props,Avoid prop drilling,
  • Network accessline 22
    21,Props,Avoid prop drilling,Use context or composition for deeply nested data,Context for global data composition for UI,Passing props through 5+ levels,<UserContext.Provider>,<A user={u}><B user={u}><C user={u}>,Medium,https://react.dev/l
  • Network accessline 23
    22,Props,Validate props with TypeScript,Use TypeScript interfaces for prop types,interface Props { name: string },PropTypes or no validation,interface ButtonProps { onClick: () => void },Button.propTypes = {},Medium, 23,Events,Use synthetic
  • Network accessline 24
    23,Events,Use synthetic events correctly,React normalizes events across browsers,e.preventDefault() e.stopPropagation(),Access native event unnecessarily,onClick={(e) => e.preventDefault()},onClick={(e) => e.nativeEvent.preventDefault()},Lo
  • Network accessline 25
    24,Events,Avoid binding in render,Use arrow functions in class or hooks,Arrow functions in functional components,bind in render or constructor,const handleClick = () => {},this.handleClick.bind(this),Medium, 25,Events,Pass event handlers no
  • Network accessline 26
    25,Events,Pass event handlers not call results,Pass function reference not invocation,onClick={handleClick},onClick={handleClick()} causing immediate call,onClick={handleClick},onClick={handleClick()},High, 26,Forms,Controlled components fo
  • Network accessline 27
    26,Forms,Controlled components for forms,Use state to control form inputs,value + onChange for inputs,Uncontrolled inputs with refs,<input value={val} onChange={setVal}>,<input ref={inputRef}>,Medium,https://react.dev/reference/react-dom/co
  • Network accessline 28
    27,Forms,Handle form submission properly,Prevent default and handle in submit handler,onSubmit with preventDefault,onClick on submit button only,<form onSubmit={handleSubmit}>,<button onClick={handleSubmit}>,Medium, 28,Forms,Debounce rapid 
  • Network accessline 29
    28,Forms,Debounce rapid input changes,Debounce search/filter inputs,useDeferredValue or debounce for search,Filter on every keystroke,useDeferredValue(searchTerm),useEffect filtering on every change,Medium,https://react.dev/reference/react/
  • Network accessline 30
    29,Hooks,Follow rules of hooks,Only call hooks at top level and in React functions,Hooks at component top level,Hooks in conditions loops or callbacks,"const [x, setX] = useState()","if (cond) { const [x, setX] = useState() }",High,https://
  • Network accessline 31
    30,Hooks,Custom hooks for reusable logic,Extract shared stateful logic to custom hooks,useCustomHook for reusable patterns,Duplicate hook logic across components,const { data } = useFetch(url),Duplicate useEffect/useState in components,Medi
  • Network accessline 32
    31,Hooks,Name custom hooks with use prefix,Custom hooks must start with use,useFetch useForm useAuth,fetchData or getData for hook,function useFetch(url),function fetchData(url),High, 32,Context,Use context for global data,Context for theme
  • Network accessline 33
    32,Context,Use context for global data,Context for theme auth locale,Context for app-wide state,Context for frequently changing data,<ThemeContext.Provider>,Context for form field values,Medium,https://react.dev/learn/passing-data-deeply-wi
  • Network accessline 34
    33,Context,Split contexts by concern,Separate contexts for different domains,ThemeContext + AuthContext,One giant AppContext,<ThemeProvider><AuthProvider>,<AppProvider value={{theme user...}}>,Medium, 34,Context,Memoize context values,Preve
  • Network accessline 35
    34,Context,Memoize context values,Prevent unnecessary re-renders with useMemo,useMemo for context value object,New object reference every render,"value={useMemo(() => ({...}), [])}","value={{ user, theme }}",High, 35,Performance,Use React D
  • Network accessline 36
    35,Performance,Use React DevTools Profiler,Profile to identify performance bottlenecks,Profile before optimizing,Optimize without measuring,React DevTools Profiler,Guessing at bottlenecks,Medium,https://react.dev/learn/react-developer-tools
  • Network accessline 37
    36,Performance,Lazy load components,Use React.lazy for code splitting,lazy() for routes and heavy components,Import everything upfront,const Page = lazy(() => import('./Page')),import Page from './Page',Medium,https://react.dev/reference/re
  • Network accessline 38
    37,Performance,Virtualize long lists,Use windowing for lists over 100 items,react-window or react-virtual,Render thousands of DOM nodes,<VirtualizedList items={items}/>,{items.map(i => <Item />)},High, 38,Performance,Batch state updates,Rea
  • Network accessline 39
    38,Performance,Batch state updates,React 18 auto-batches but be aware,Let React batch related updates,Manual batching with flushSync,setA(1); setB(2); // batched,flushSync(() => setA(1)),Low,https://react.dev/learn/queueing-a-series-of-stat
  • Network accessline 40
    39,ErrorHandling,Use error boundaries,Catch JavaScript errors in component tree,ErrorBoundary wrapping sections,Let errors crash entire app,<ErrorBoundary><App/></ErrorBoundary>,No error handling,High,https://react.dev/reference/react/Compo
  • Network accessline 41
    40,ErrorHandling,Handle async errors,Catch errors in async operations,try/catch in async handlers,Unhandled promise rejections,try { await fetch() } catch(e) {},await fetch() // no catch,High,
  • Network accessline 42
    41,Testing,Test behavior not implementation,Test what user sees and does,Test renders and interactions,Test internal state or methods,expect(screen.getByText('Hello')),expect(component.state.name),Medium,https://testing-library.com/docs/rea
  • Network accessline 43
    42,Testing,Use testing-library queries,Use accessible queries,getByRole getByLabelText,getByTestId for everything,getByRole('button'),getByTestId('submit-btn'),Medium,https://testing-library.com/docs/queries/about#priority
  • Network accessline 44
    43,Accessibility,Use semantic HTML,Proper HTML elements for their purpose,button for clicks nav for navigation,div with onClick for buttons,<button onClick={...}>,<div onClick={...}>,High,https://react.dev/reference/react-dom/components#all
  • Network accessline 51
    50,TypeScript,Use generics for reusable components,Generic components for flexible typing,Generic props for list components,Union types for flexibility,<List<T> items={T[]}>,<List items={any[]}>,Medium, 51,Patterns,Container/Presentational 
  • Network accessline 52
    51,Patterns,Container/Presentational split,Separate data logic from UI,Container fetches presentational renders,Mixed data and UI in one,<UserContainer><UserView/></UserContainer>,<User /> with fetch and render,Low, 52,Patterns,Render props
  • Network accessline 53
    52,Patterns,Render props for flexibility,Share code via render prop pattern,Render prop for customizable rendering,Duplicate logic across components,<DataFetcher render={data => ...}/>,Copy paste fetch logic,Low,https://react.dev/reference/

skills/design-ui-ux-pro-max/data/stacks/shadcn.csv

  • Network accessline 1
    No,Category,Guideline,Description,Do,Don't,Code Good,Code Bad,Severity,Docs URL 1,Setup,Use CLI for installation,Install components via shadcn CLI for proper setup,npx shadcn@latest add component-name,Manual copy-paste from docs,npx shadcn@
  • Network accessline 2
    1,Setup,Use CLI for installation,Install components via shadcn CLI for proper setup,npx shadcn@latest add component-name,Manual copy-paste from docs,npx shadcn@latest add button,Copy component code manually,High,https://ui.shadcn.com/docs/c
  • Network accessline 3
    2,Setup,Initialize project properly,Run init command to set up components.json and globals.css,npx shadcn@latest init before adding components,Skip init and add components directly,npx shadcn@latest init,npx shadcn@latest add button (withou
  • Network accessline 4
    3,Setup,Configure path aliases,Set up proper import aliases in tsconfig and components.json,Use @/components/ui path aliases,Relative imports like ../../components,import { Button } from "@/components/ui/button",import { Button } from "../.
  • Network accessline 5
    4,Theming,Use CSS variables for colors,Define colors as CSS variables in globals.css for theming,CSS variables in :root and .dark,Hardcoded color values in components,bg-primary text-primary-foreground,bg-blue-500 text-white,High,https://ui
  • Network accessline 6
    5,Theming,Follow naming convention,Use semantic color names with foreground pattern,primary/primary-foreground secondary/secondary-foreground,Generic color names,--primary --primary-foreground,--blue --light-blue,Medium,https://ui.shadcn.co
  • Network accessline 7
    6,Theming,Support dark mode,Include .dark class styles for all custom CSS,Define both :root and .dark color schemes,Only light mode colors,.dark { --background: 240 10% 3.9%; },No .dark class styles,High,https://ui.shadcn.com/docs/dark-mode
  • Network accessline 8
    7,Components,Use component variants,Leverage cva variants for consistent styling,Use variant prop for different styles,Inline conditional classes,<Button variant="destructive">,<Button className={isError ? "bg-red-500" : "bg-blue-500"}>,Med
  • Network accessline 9
    8,Components,Compose with className,Add custom classes via className prop for overrides,Extend with className for one-off customizations,Modify component source directly,<Button className="w-full">,Edit button.tsx to add w-full,Medium,https
  • Network accessline 10
    9,Components,Use size variants consistently,Apply size prop for consistent sizing across components,size="sm" size="lg" for sizing,Mix size classes inconsistently,<Button size="lg">,<Button className="text-lg px-8 py-4">,Medium,https://ui.s
  • Network accessline 11
    10,Components,Prefer compound components,Use provided sub-components for complex UI,Card + CardHeader + CardContent pattern,Single component with many props,<Card><CardHeader><CardTitle>,<Card title="x" content="y" footer="z">,Medium,https:
  • Network accessline 12
    11,Dialog,Use Dialog for modal content,Dialog component for overlay modal windows,Dialog for confirmations forms details,Alert for modal content,<Dialog><DialogContent>,<Alert> styled as modal,High,https://ui.shadcn.com/docs/components/dial
  • Network accessline 13
    12,Dialog,Handle dialog state properly,Use open and onOpenChange for controlled dialogs,Controlled state with useState,Uncontrolled with default open only,"<Dialog open={open} onOpenChange={setOpen}>","<Dialog defaultOpen={true}>",Medium,ht
  • Network accessline 14
    13,Dialog,Include proper dialog structure,Use DialogHeader DialogTitle DialogDescription,Complete semantic structure,Missing title or description,<DialogHeader><DialogTitle><DialogDescription>,<DialogContent><p>Content</p></DialogContent>,H
  • Network accessline 15
    14,Sheet,Use Sheet for side panels,Sheet component for slide-out panels and drawers,Sheet for navigation filters settings,Dialog for side content,<Sheet side="right">,<Dialog> with slide animation,Medium,https://ui.shadcn.com/docs/component
  • Network accessline 16
    15,Sheet,Specify sheet side,Set side prop for sheet slide direction,Explicit side="left" or side="right",Default side without consideration,<Sheet><SheetContent side="left">,<Sheet><SheetContent>,Low,https://ui.shadcn.com/docs/components/sh
  • Network accessline 17
    16,Form,Use Form with react-hook-form,Integrate Form component with react-hook-form for validation,useForm + Form + FormField pattern,Custom form handling without Form,<Form {...form}><FormField control={form.control}>,<form onSubmit={handl
  • Network accessline 18
    17,Form,Use FormField for inputs,Wrap inputs in FormField for proper labeling and errors,FormField + FormItem + FormLabel + FormControl,Input without FormField wrapper,<FormField><FormItem><FormLabel><FormControl><Input>,<Input onChange={..
  • Network accessline 19
    18,Form,Display form messages,Use FormMessage for validation error display,FormMessage after FormControl,Custom error text without FormMessage,<FormControl><Input/></FormControl><FormMessage/>,<Input/>{error && <span>{error}</span>},Medium,
  • Network accessline 20
    19,Form,Use Zod for validation,Define form schema with Zod for type-safe validation,zodResolver with form schema,Manual validation logic,zodResolver(formSchema),validate: (values) => { if (!values.email) },Medium,https://ui.shadcn.com/docs/
  • Network accessline 21
    20,Select,Use Select for dropdowns,Select component for option selection,Select for choosing from list,Native select element,<Select><SelectTrigger><SelectContent>,<select><option>,Medium,https://ui.shadcn.com/docs/components/select
  • Network accessline 22
    21,Select,Structure Select properly,Include Trigger Value Content and Items,Complete Select structure,Missing SelectValue or SelectContent,<SelectTrigger><SelectValue/></SelectTrigger><SelectContent><SelectItem>,<Select><option>,High,https:
  • Network accessline 23
    22,Command,Use Command for search,Command component for searchable lists and palettes,Command for command palette search,Input with custom dropdown,<Command><CommandInput><CommandList>,<Input><div className="dropdown">,Medium,https://ui.sha
  • Network accessline 24
    23,Command,Group command items,Use CommandGroup for categorized items,CommandGroup with heading for sections,Flat list without grouping,<CommandGroup heading="Suggestions"><CommandItem>,<CommandItem> without groups,Low,https://ui.shadcn.com
  • Network accessline 25
    24,Table,Use Table for data display,Table component for structured data,Table for tabular data display,Div grid for table-like layouts,<Table><TableHeader><TableBody><TableRow>,<div className="grid">,Medium,https://ui.shadcn.com/docs/compon
  • Network accessline 26
    25,Table,Include proper table structure,Use TableHeader TableBody TableRow TableCell,Semantic table structure,Missing thead or tbody,<TableHeader><TableRow><TableHead>,<Table><TableRow> without header,High,https://ui.shadcn.com/docs/compone
  • Network accessline 27
    26,DataTable,Use DataTable for complex tables,Combine Table with TanStack Table for features,DataTable pattern for sorting filtering pagination,Custom table implementation,useReactTable + Table components,Custom sort filter pagination logic
  • Network accessline 28
    27,Tabs,Use Tabs for content switching,Tabs component for tabbed interfaces,Tabs for related content sections,Custom tab implementation,<Tabs><TabsList><TabsTrigger><TabsContent>,<div onClick={() => setTab(...)},Medium,https://ui.shadcn.com
  • Network accessline 29
    28,Tabs,Set default tab value,Specify defaultValue for initial tab,defaultValue on Tabs component,No default leaving first tab,<Tabs defaultValue="account">,<Tabs> without defaultValue,Low,https://ui.shadcn.com/docs/components/tabs
  • Network accessline 30
    29,Accordion,Use Accordion for collapsible,Accordion for expandable content sections,Accordion for FAQ settings panels,Custom collapse implementation,<Accordion><AccordionItem><AccordionTrigger>,<div onClick={() => setOpen(!open)}>,Medium,h
  • Network accessline 31
    30,Accordion,Choose accordion type,Use type="single" or type="multiple" appropriately,type="single" for one open type="multiple" for many,Default type without consideration,<Accordion type="single" collapsible>,<Accordion> without type,Low,
  • Network accessline 32
    31,Toast,Use Sonner for toasts,Sonner integration for toast notifications,toast() from sonner for notifications,Custom toast implementation,toast("Event created"),setShowToast(true),Medium,https://ui.shadcn.com/docs/components/sonner
  • Network accessline 33
    32,Toast,Add Toaster to layout,Include Toaster component in root layout,<Toaster /> in app layout,Toaster in individual pages,app/layout.tsx: <Toaster />,page.tsx: <Toaster />,High,https://ui.shadcn.com/docs/components/sonner
  • Network accessline 34
    33,Toast,Use toast variants,Apply toast.success toast.error for context,Semantic toast methods,Generic toast for all messages,toast.success("Saved!") toast.error("Failed"),toast("Saved!") toast("Failed"),Medium,https://ui.shadcn.com/docs/co
  • Network accessline 35
    34,Popover,Use Popover for floating content,Popover for dropdown menus and floating panels,Popover for contextual actions,Absolute positioned divs,<Popover><PopoverTrigger><PopoverContent>,<div className="relative"><div className="absolute"
  • Network accessline 36
    35,Popover,Handle popover alignment,Use align and side props for positioning,Explicit alignment configuration,Default alignment for all,<PopoverContent align="start" side="bottom">,<PopoverContent>,Low,https://ui.shadcn.com/docs/components/
  • Network accessline 37
    36,DropdownMenu,Use DropdownMenu for actions,DropdownMenu for action lists and context menus,DropdownMenu for user menu actions,Popover for action lists,<DropdownMenu><DropdownMenuTrigger><DropdownMenuContent>,<Popover> for menu actions,Med
  • Network accessline 38
    37,DropdownMenu,Group menu items,Use DropdownMenuGroup and DropdownMenuSeparator,Organized menu with separators,Flat list of items,<DropdownMenuGroup><DropdownMenuItem><DropdownMenuSeparator>,<DropdownMenuItem> without organization,Low,http
  • Network accessline 39
    38,Tooltip,Use Tooltip for hints,Tooltip for icon buttons and truncated text,Tooltip for additional context,Title attribute for tooltips,<Tooltip><TooltipTrigger><TooltipContent>,<button title="Delete">,Medium,https://ui.shadcn.com/docs/com
  • Network accessline 40
    39,Tooltip,Add TooltipProvider,Wrap app or section in TooltipProvider,TooltipProvider at app level,TooltipProvider per tooltip,<TooltipProvider><App/></TooltipProvider>,<Tooltip><TooltipProvider>,High,https://ui.shadcn.com/docs/components/t
  • Network accessline 41
    40,Skeleton,Use Skeleton for loading,Skeleton component for loading placeholders,Skeleton matching content layout,Spinner for content loading,<Skeleton className="h-4 w-[200px]"/>,<Spinner/> for card loading,Medium,https://ui.shadcn.com/doc
  • Network accessline 42
    41,Skeleton,Match skeleton dimensions,Size skeleton to match loaded content,Skeleton same size as expected content,Generic skeleton size,<Skeleton className="h-12 w-12 rounded-full"/>,<Skeleton/> without sizing,Medium,https://ui.shadcn.com/
  • Network accessline 43
    42,AlertDialog,Use AlertDialog for confirms,AlertDialog for destructive action confirmation,AlertDialog for delete confirmations,Dialog for confirmations,<AlertDialog><AlertDialogTrigger><AlertDialogContent>,<Dialog> for delete confirmation
  • Network accessline 44
    43,AlertDialog,Include action buttons,Use AlertDialogAction and AlertDialogCancel,Standard confirm/cancel pattern,Custom buttons in AlertDialog,<AlertDialogCancel>Cancel</AlertDialogCancel><AlertDialogAction>,<Button>Cancel</Button><Button>
  • Network accessline 45
    44,Sidebar,Use Sidebar for navigation,Sidebar component for app navigation,Sidebar for main app navigation,Custom sidebar implementation,<SidebarProvider><Sidebar><SidebarContent>,<div className="w-64 fixed">,Medium,https://ui.shadcn.com/do
  • Network accessline 46
    45,Sidebar,Wrap in SidebarProvider,Use SidebarProvider for sidebar state management,SidebarProvider at layout level,Sidebar without provider,<SidebarProvider><Sidebar></SidebarProvider>,<Sidebar> without provider,High,https://ui.shadcn.com/
  • Network accessline 47
    46,Sidebar,Use SidebarTrigger,Include SidebarTrigger for mobile toggle,SidebarTrigger for responsive toggle,Custom toggle button,<SidebarTrigger/>,<Button onClick={() => toggleSidebar()}>,Medium,https://ui.shadcn.com/docs/components/sidebar
  • Network accessline 48
    47,Chart,Use Chart for data viz,Chart component with Recharts integration,Chart component for dashboards,Direct Recharts without wrapper,<ChartContainer config={chartConfig}>,<ResponsiveContainer><BarChart>,Medium,https://ui.shadcn.com/docs
  • Network accessline 49
    48,Chart,Define chart config,Create chartConfig for consistent theming,chartConfig with color definitions,Inline colors in charts,"{ desktop: { label: ""Desktop"", color: ""#2563eb"" } }",<Bar fill="#2563eb"/>,Medium,https://ui.shadcn.com/d
  • Network accessline 50
    49,Chart,Use ChartTooltip,Apply ChartTooltip for interactive charts,ChartTooltip with ChartTooltipContent,Recharts Tooltip directly,<ChartTooltip content={<ChartTooltipContent/>}/>,<Tooltip/> from recharts,Low,https://ui.shadcn.com/docs/com
  • Network accessline 51
    50,Blocks,Use blocks for scaffolding,Start from shadcn blocks for common layouts,npx shadcn@latest add dashboard-01,Build dashboard from scratch,npx shadcn@latest add login-01,Custom login page from scratch,Medium,https://ui.shadcn.com/bloc
  • Network accessline 52
    51,Blocks,Customize block components,Modify copied block code to fit needs,Edit block files after installation,Use blocks without modification,Customize dashboard-01 layout,Use dashboard-01 as-is,Low,https://ui.shadcn.com/blocks
  • Network accessline 53
    52,A11y,Use semantic components,Shadcn components have built-in ARIA,Rely on component accessibility,Override ARIA attributes,<Button> has button role,<div role="button">,High,https://ui.shadcn.com/docs/components/button
  • Network accessline 54
    53,A11y,Maintain focus management,Dialog Sheet handle focus automatically,Let components manage focus,Custom focus handling,<Dialog> traps focus,document.querySelector().focus(),High,https://ui.shadcn.com/docs/components/dialog
  • Network accessline 55
    54,A11y,Provide labels,Use FormLabel and aria-label appropriately,FormLabel for form inputs,Placeholder as only label,<FormLabel>Email</FormLabel><Input/>,<Input placeholder="Email"/>,High,https://ui.shadcn.com/docs/components/form
  • Network accessline 56
    55,Performance,Import components individually,Import only needed components,Named imports from component files,Import all from index,import { Button } from "@/components/ui/button",import { Button Card Dialog } from "@/components/ui",Medium
  • Network accessline 57
    56,Performance,Lazy load dialogs,Dynamic import for heavy dialog content,React.lazy for dialog content,Import all dialogs upfront,const HeavyContent = lazy(() => import('./Heavy')),import HeavyContent from './Heavy',Medium, 57,Customization
  • Network accessline 58
    57,Customization,Extend variants with cva,Add new variants using class-variance-authority,Extend buttonVariants for new styles,Inline classes for variants,"variants: { size: { xl: ""h-14 px-8"" } }",className="h-14 px-8",Medium,https://ui.s
  • Network accessline 59
    58,Customization,Create custom components,Build new components following shadcn patterns,Use cn() and cva for custom components,Different patterns for custom,const Custom = ({ className }) => <div className={cn("base" className)}>,const Cus
  • Network accessline 60
    59,Patterns,Use asChild for composition,asChild prop for component composition,Slot pattern with asChild,Wrapper divs for composition,<Button asChild><Link href="/">,<Button><Link href="/"></Link></Button>,Medium,https://ui.shadcn.com/docs/
  • Network accessline 61
    60,Patterns,Combine with React Hook Form,Form + useForm for complete forms,RHF Controller with shadcn inputs,Custom form state management,<FormField control={form.control} name="email">,<Input value={email} onChange={(e) => setEmail(e.targe

skills/design-ui-ux-pro-max/data/stacks/svelte.csv

  • Network accessline 1
    No,Category,Guideline,Description,Do,Don't,Code Good,Code Bad,Severity,Docs URL 1,Reactivity,Use $: for reactive statements,Automatic dependency tracking,$: for derived values,Manual recalculation,$: doubled = count * 2,let doubled; count &
  • Network accessline 2
    1,Reactivity,Use $: for reactive statements,Automatic dependency tracking,$: for derived values,Manual recalculation,$: doubled = count * 2,let doubled; count && (doubled = count * 2),Medium,https://svelte.dev/docs/svelte-components#script-
  • Network accessline 3
    2,Reactivity,Trigger reactivity with assignment,Svelte tracks assignments not mutations,Reassign arrays/objects to trigger update,Mutate without reassignment,"items = [...items, newItem]",items.push(newItem),High,https://svelte.dev/docs/sve
  • Network accessline 4
    3,Reactivity,Use $state in Svelte 5,Runes for explicit reactivity,let count = $state(0),Implicit reactivity in Svelte 5,let count = $state(0),let count = 0 (Svelte 5),Medium,https://svelte.dev/blog/runes
  • Network accessline 5
    4,Reactivity,Use $derived for computed values,$derived replaces $: in Svelte 5,let doubled = $derived(count * 2),$: in Svelte 5,let doubled = $derived(count * 2),$: doubled = count * 2 (Svelte 5),Medium, 5,Reactivity,Use $effect for side ef
  • Network accessline 6
    5,Reactivity,Use $effect for side effects,$effect replaces $: side effects,Use $effect for subscriptions,$: for side effects in Svelte 5,$effect(() => console.log(count)),$: console.log(count) (Svelte 5),Medium, 6,Props,Export let for props
  • Network accessline 7
    6,Props,Export let for props,Declare props with export let,export let propName,Props without export,export let count = 0,let count = 0,High,https://svelte.dev/docs/svelte-components#script-1-export-creates-a-component-prop
  • Network accessline 8
    7,Props,Use $props in Svelte 5,$props rune for prop access,let { name } = $props(),export let in Svelte 5,"let { name, age = 0 } = $props()",export let name; export let age = 0,Medium, 8,Props,Provide default values,Default props with assig
  • Network accessline 9
    8,Props,Provide default values,Default props with assignment,export let count = 0,Required props without defaults,export let count = 0,export let count,Low, 9,Props,Use spread props,Pass through unknown props,{...$$restProps} on elements,Ma
  • Network accessline 10
    9,Props,Use spread props,Pass through unknown props,{...$$restProps} on elements,Manual prop forwarding,<button {...$$restProps}>,<button class={$$props.class}>,Low,https://svelte.dev/docs/basic-markup#attributes-and-props
  • Network accessline 11
    10,Bindings,Use bind: for two-way binding,Simplified input handling,bind:value for inputs,on:input with manual update,<input bind:value={name}>,<input value={name} on:input={e => name = e.target.value}>,Low,https://svelte.dev/docs/element-d
  • Network accessline 12
    11,Bindings,Bind to DOM elements,Reference DOM nodes,bind:this for element reference,querySelector in onMount,<div bind:this={el}>,onMount(() => el = document.querySelector()),Medium, 12,Bindings,Use bind:group for radios/checkboxes,Simplif
  • Network accessline 13
    12,Bindings,Use bind:group for radios/checkboxes,Simplified group handling,bind:group for radio/checkbox groups,Manual checked handling,"<input type=""radio"" bind:group={selected}>","<input type=""radio"" checked={selected === value}>",Low
  • Network accessline 14
    13,Events,Use on: for event handlers,Event directive syntax,on:click={handler},addEventListener in onMount,<button on:click={handleClick}>,onMount(() => btn.addEventListener()),Medium,https://svelte.dev/docs/element-directives#on-eventname
  • Network accessline 15
    14,Events,Forward events with on:event,Pass events to parent,on:click without handler,createEventDispatcher for DOM events,<button on:click>,"dispatch('click', event)",Low, 15,Events,Use createEventDispatcher,Custom component events,dispatc
  • Network accessline 16
    15,Events,Use createEventDispatcher,Custom component events,dispatch for custom events,on:event for custom events,"dispatch('save', { data })",on:save without dispatch,Medium,https://svelte.dev/docs/svelte#createeventdispatcher
  • Network accessline 17
    16,Lifecycle,Use onMount for initialization,Run code after component mounts,onMount for setup and data fetching,Code in script body for side effects,onMount(() => fetchData()),fetchData() in script body,High,https://svelte.dev/docs/svelte#o
  • Network accessline 19
    18,Lifecycle,Use onDestroy sparingly,Only when onMount cleanup not possible,onDestroy for non-mount cleanup,onDestroy for mount-related cleanup,onDestroy for store unsubscribe,onDestroy(() => clearInterval(id)),Low, 19,Lifecycle,Avoid befor
  • Network accessline 20
    19,Lifecycle,Avoid beforeUpdate/afterUpdate,Usually not needed,Reactive statements instead,beforeUpdate for derived state,$: if (x) doSomething(),beforeUpdate(() => doSomething()),Low, 20,Stores,Use writable for mutable state,Basic reactive
  • Network accessline 21
    20,Stores,Use writable for mutable state,Basic reactive store,writable for shared mutable state,Local variables for shared state,const count = writable(0),let count = 0 in module,Medium,https://svelte.dev/docs/svelte-store#writable
  • Network accessline 22
    21,Stores,Use readable for read-only state,External data sources,readable for derived/external data,writable for read-only data,"readable(0, set => interval(set))",writable(0) for timer,Low,https://svelte.dev/docs/svelte-store#readable
  • Network accessline 23
    22,Stores,Use derived for computed stores,Combine or transform stores,derived for computed values,Manual subscription for derived,"derived(count, $c => $c * 2)",count.subscribe(c => doubled = c * 2),Medium,https://svelte.dev/docs/svelte-sto
  • Network accessline 24
    23,Stores,Use $ prefix for auto-subscription,Automatic subscribe/unsubscribe,$storeName in components,Manual subscription,{$count},count.subscribe(c => value = c),High, 24,Stores,Clean up custom subscriptions,Unsubscribe when component dest
  • Network accessline 25
    24,Stores,Clean up custom subscriptions,Unsubscribe when component destroys,Return unsubscribe from onMount,Leave subscriptions open,onMount(() => store.subscribe(fn)),store.subscribe(fn) in script,High, 25,Slots,Use slots for composition,C
  • Network accessline 26
    25,Slots,Use slots for composition,Content projection,<slot> for flexible content,Props for all content,<slot>Default</slot>,"<Component content=""text""/>",Medium,https://svelte.dev/docs/special-elements#slot
  • Network accessline 27
    26,Slots,Name slots for multiple areas,Multiple content areas,"<slot name=""header"">",Single slot for complex layouts,"<slot name=""header""><slot name=""footer"">",<slot> with complex conditionals,Low, 27,Slots,Check slot content with $$s
  • Network accessline 28
    27,Slots,Check slot content with $$slots,Conditional slot rendering,$$slots.name for conditional rendering,Always render slot wrapper,"{#if $$slots.footer}<slot name=""footer""/>{/if}","<div><slot name=""footer""/></div>",Low, 28,Styling,Us
  • Network accessline 29
    28,Styling,Use scoped styles by default,Styles scoped to component,<style> for component styles,Global styles for component,:global() only when needed,<style> all global,Medium,https://svelte.dev/docs/svelte-components#style
  • Network accessline 30
    29,Styling,Use :global() sparingly,Escape scoping when needed,:global for third-party styling,Global for all styles,:global(.external-lib),<style> without scoping,Medium, 30,Styling,Use CSS variables for theming,Dynamic styling,CSS custom p
  • Network accessline 31
    30,Styling,Use CSS variables for theming,Dynamic styling,CSS custom properties,Inline styles for themes,"style=""--color: {color}""","style=""color: {color}""",Low, 31,Transitions,Use built-in transitions,Svelte transition directives,transi
  • Network accessline 32
    31,Transitions,Use built-in transitions,Svelte transition directives,transition:fade for simple effects,Manual CSS transitions,<div transition:fade>,<div class:fade={visible}>,Low,https://svelte.dev/docs/element-directives#transition-fn
  • Network accessline 33
    32,Transitions,Use in: and out: separately,Different enter/exit animations,in:fly out:fade for asymmetric,Same transition for both,<div in:fly out:fade>,<div transition:fly>,Low, 33,Transitions,Add local modifier,Prevent ancestor trigger,tr
  • Network accessline 34
    33,Transitions,Add local modifier,Prevent ancestor trigger,transition:fade|local,Global transitions for lists,<div transition:slide|local>,<div transition:slide>,Medium, 34,Actions,Use actions for DOM behavior,Reusable DOM logic,use:action 
  • Network accessline 35
    34,Actions,Use actions for DOM behavior,Reusable DOM logic,use:action for DOM enhancements,onMount for each usage,<div use:clickOutside>,onMount(() => setupClickOutside(el)),Medium,https://svelte.dev/docs/element-directives#use-action
  • Network accessline 36
    35,Actions,Return update and destroy,Lifecycle methods for actions,"Return { update, destroy }",Only initial setup,"return { update(params) {}, destroy() {} }",return destroy only,Medium, 36,Actions,Pass parameters to actions,Configure acti
  • Network accessline 37
    36,Actions,Pass parameters to actions,Configure action behavior,use:action={params},Hardcoded action behavior,<div use:tooltip={options}>,<div use:tooltip>,Low, 37,Logic,Use {#if} for conditionals,Template conditionals,{#if} {:else if} {:el
  • Network accessline 38
    37,Logic,Use {#if} for conditionals,Template conditionals,{#if} {:else if} {:else},Ternary in expressions,{#if cond}...{:else}...{/if},{cond ? a : b} for complex,Low,https://svelte.dev/docs/logic-blocks#if
  • Network accessline 39
    38,Logic,Use {#each} for lists,List rendering,{#each} with key,Map in expression,{#each items as item (item.id)},{items.map(i => `<div>${i}</div>`)},Medium, 39,Logic,Always use keys in {#each},Proper list reconciliation,(item.id) for unique
  • Network accessline 40
    39,Logic,Always use keys in {#each},Proper list reconciliation,(item.id) for unique key,Index as key or no key,{#each items as item (item.id)},"{#each items as item, i (i)}",High, 40,Logic,Use {#await} for promises,Handle async states,{#awa
  • Network accessline 41
    40,Logic,Use {#await} for promises,Handle async states,{#await} for loading/error states,Manual promise handling,{#await promise}...{:then}...{:catch},{#if loading}...{#if error},Medium,https://svelte.dev/docs/logic-blocks#await
  • Network accessline 42
    41,SvelteKit,Use +page.svelte for routes,File-based routing,+page.svelte for route components,Custom routing setup,routes/about/+page.svelte,routes/About.svelte,Medium,https://kit.svelte.dev/docs/routing
  • Network accessline 43
    42,SvelteKit,Use +page.js for data loading,Load data before render,load function in +page.js,onMount for data fetching,export function load() {},onMount(() => fetchData()),High,https://kit.svelte.dev/docs/load 43,SvelteKit,Use +page.server.
  • Network accessline 44
    43,SvelteKit,Use +page.server.js for server-only,Server-side data loading,+page.server.js for sensitive data,+page.js for API keys,+page.server.js with DB access,+page.js with DB access,High, 44,SvelteKit,Use form actions,Server-side form h
  • Network accessline 45
    44,SvelteKit,Use form actions,Server-side form handling,+page.server.js actions,API routes for forms,export const actions = { default },fetch('/api/submit'),Medium,https://kit.svelte.dev/docs/form-actions
  • Network accessline 46
    45,SvelteKit,Use $app/stores for app state,$page $navigating $updated,$page for current page data,Manual URL parsing,import { page } from '$app/stores',window.location.pathname,Medium,https://kit.svelte.dev/docs/modules#$app-stores
  • Network accessline 47
    46,Performance,Use {#key} for forced re-render,Reset component state,{#key id} for fresh instance,Manual destroy/create,{#key item.id}<Component/>{/key},on:change={() => component = null},Low,https://svelte.dev/docs/logic-blocks#key
  • Network accessline 48
    47,Performance,Avoid unnecessary reactivity,Not everything needs $:,$: only for side effects,$: for simple assignments,$: if (x) console.log(x),$: y = x (when y = x works),Low, 48,Performance,Use immutable compiler option,Skip equality chec
  • Network accessline 49
    48,Performance,Use immutable compiler option,Skip equality checks,immutable: true for large lists,Default for all components,<svelte:options immutable/>,Default without immutable,Low, 49,TypeScript,"Use lang=""ts"" in script",TypeScript sup
  • Network accessline 50
    49,TypeScript,"Use lang=""ts"" in script",TypeScript support,"<script lang=""ts"">",JavaScript for typed projects,"<script lang=""ts"">",<script> with JSDoc,Medium,https://svelte.dev/docs/typescript

skills/design-ui-ux-pro-max/data/stacks/swiftui.csv

  • Network accessline 1
    No,Category,Guideline,Description,Do,Don't,Code Good,Code Bad,Severity,Docs URL 1,Views,Use struct for views,SwiftUI views are value types,struct MyView: View,class MyView: View,struct ContentView: View { var body: some View },class Content
  • Network accessline 2
    1,Views,Use struct for views,SwiftUI views are value types,struct MyView: View,class MyView: View,struct ContentView: View { var body: some View },class ContentView: View,High,https://developer.apple.com/documentation/swiftui/view
  • Network accessline 4
    3,Views,Use body computed property,body returns the view hierarchy,var body: some View { },func body() -> some View,"var body: some View { Text(""Hello"") }",func body() -> Text,High, 4,Views,Prefer composition over inheritance,Compose view
  • Network accessline 5
    4,Views,Prefer composition over inheritance,Compose views using ViewBuilder,Combine smaller views,Inheritance hierarchies,VStack { Header() Content() },class SpecialView extends BaseView,Medium, 5,State,Use @State for local state,Simple val
  • Network accessline 6
    5,State,Use @State for local state,Simple value types owned by view,@State for view-local primitives,@State for shared data,@State private var count = 0,@State var sharedData: Model,High,https://developer.apple.com/documentation/swiftui/sta
  • Network accessline 7
    6,State,Use @Binding for two-way data,Pass mutable state to child views,@Binding for child input,@State in child for parent data,@Binding var isOn: Bool,$isOn to pass binding,Medium,https://developer.apple.com/documentation/swiftui/binding
  • Network accessline 8
    7,State,Use @StateObject for reference types,ObservableObject owned by view,@StateObject for view-created objects,@ObservedObject for owned objects,@StateObject private var vm = ViewModel(),@ObservedObject var vm = ViewModel(),High,https://
  • Network accessline 9
    8,State,Use @ObservedObject for injected objects,Reference types passed from parent,@ObservedObject for injected dependencies,@StateObject for injected objects,@ObservedObject var vm: ViewModel,@StateObject var vm: ViewModel (injected),High
  • Network accessline 10
    9,State,Use @EnvironmentObject for shared state,App-wide state injection,@EnvironmentObject for global state,Prop drilling through views,@EnvironmentObject var settings: Settings,Pass settings through 5 views,Medium,https://developer.apple.
  • Network accessline 11
    10,State,Use @Published in ObservableObject,Automatically publish property changes,@Published for observed properties,Manual objectWillChange calls,@Published var items: [Item] = [],var items: [Item] { didSet { objectWillChange.send() } },M
  • Network accessline 12
    11,Observable,Use @Observable macro (iOS 17+),Modern observation without Combine,@Observable class for view models,ObservableObject for new projects,@Observable class ViewModel { },class ViewModel: ObservableObject,Medium,https://developer.
  • Network accessline 13
    12,Observable,Use @Bindable for @Observable,Create bindings from @Observable,@Bindable var vm for bindings,@Binding with @Observable,@Bindable var viewModel,$viewModel.name with @Observable,Medium, 13,Layout,Use VStack HStack ZStack,Standar
  • Network accessline 14
    13,Layout,Use VStack HStack ZStack,Standard stack-based layouts,Stacks for linear arrangements,GeometryReader for simple layouts,VStack { Text() Image() },GeometryReader for vertical list,Medium,https://developer.apple.com/documentation/swi
  • Network accessline 15
    14,Layout,Use LazyVStack LazyHStack for lists,Lazy loading for performance,Lazy stacks for long lists,Regular stacks for 100+ items,LazyVStack { ForEach(items) },VStack { ForEach(largeArray) },High,https://developer.apple.com/documentation/
  • Network accessline 18
    17,Layout,Use frame modifiers correctly,Set explicit sizes when needed,.frame(maxWidth: .infinity),Fixed sizes for responsive content,.frame(maxWidth: .infinity),.frame(width: 375),Medium, 18,Modifiers,Order modifiers correctly,Modifier ord
  • Network accessline 19
    18,Modifiers,Order modifiers correctly,Modifier order affects rendering,Background before padding for full coverage,Wrong modifier order,.padding().background(Color.red),.background(Color.red).padding(),High, 19,Modifiers,Create custom View
  • Network accessline 20
    19,Modifiers,Create custom ViewModifiers,Reusable modifier combinations,ViewModifier for repeated styling,Duplicate modifier chains,struct CardStyle: ViewModifier,.shadow().cornerRadius() everywhere,Medium,https://developer.apple.com/docume
  • Network accessline 21
    20,Modifiers,Use conditional modifiers carefully,Avoid changing view identity,if-else with same view type,Conditional that changes view identity,Text(title).foregroundColor(isActive ? .blue : .gray),if isActive { Text().bold() } else { Text
  • Network accessline 22
    21,Navigation,Use NavigationStack (iOS 16+),Modern navigation with type-safe paths,NavigationStack with navigationDestination,NavigationView for new projects,NavigationStack { },NavigationView { } (deprecated),Medium,https://developer.apple
  • Network accessline 23
    22,Navigation,Use navigationDestination,Type-safe navigation destinations,.navigationDestination(for:),NavigationLink(destination:),.navigationDestination(for: Item.self),NavigationLink(destination: DetailView()),Medium, 23,Navigation,Use @
  • Network accessline 24
    23,Navigation,Use @Environment for dismiss,Programmatic navigation dismissal,@Environment(\.dismiss) var dismiss,presentationMode (deprecated),@Environment(\.dismiss) var dismiss,@Environment(\.presentationMode),Low, 24,Lists,Use List for s
  • Network accessline 25
    24,Lists,Use List for scrollable content,Built-in scrolling and styling,List for standard scrollable content,ScrollView + VStack for simple lists,List { ForEach(items) { } },ScrollView { VStack { ForEach } },Low,https://developer.apple.com/
  • Network accessline 26
    25,Lists,Provide stable identifiers,Use Identifiable or explicit id,Identifiable protocol or id parameter,Index as identifier,ForEach(items) where Item: Identifiable,"ForEach(items.indices, id: \.self)",High, 26,Lists,Use onDelete and onMov
  • Network accessline 27
    26,Lists,Use onDelete and onMove,Standard list editing,onDelete for swipe to delete,Custom delete implementation,.onDelete(perform: delete),.onTapGesture for delete,Low, 27,Forms,Use Form for settings,Grouped input controls,Form for setting
  • Network accessline 28
    27,Forms,Use Form for settings,Grouped input controls,Form for settings screens,Manual grouping for forms,Form { Section { Toggle() } },VStack { Toggle() },Low,https://developer.apple.com/documentation/swiftui/form
  • Network accessline 29
    28,Forms,Use @FocusState for keyboard,Manage keyboard focus,@FocusState for text field focus,Manual first responder handling,@FocusState private var isFocused: Bool,UIKit first responder,Medium,https://developer.apple.com/documentation/swif
  • Network accessline 30
    29,Forms,Validate input properly,Show validation feedback,Real-time validation feedback,Submit without validation,TextField with validation state,TextField without error handling,Medium, 30,Async,Use .task for async work,Automatic cancellat
  • Network accessline 31
    30,Async,Use .task for async work,Automatic cancellation on view disappear,.task for view lifecycle async,onAppear with Task,.task { await loadData() },onAppear { Task { await loadData() } },Medium,https://developer.apple.com/documentation/
  • Network accessline 32
    31,Async,Handle loading states,Show progress during async operations,ProgressView during loading,Empty view during load,if isLoading { ProgressView() },No loading indicator,Medium, 32,Async,Use @MainActor for UI updates,Ensure UI updates on
  • Network accessline 33
    32,Async,Use @MainActor for UI updates,Ensure UI updates on main thread,@MainActor on view models,Manual DispatchQueue.main,@MainActor class ViewModel,DispatchQueue.main.async,Medium, 33,Animation,Use withAnimation,Animate state changes,wit
  • Network accessline 34
    33,Animation,Use withAnimation,Animate state changes,withAnimation for state transitions,No animation for state changes,withAnimation { isExpanded.toggle() },isExpanded.toggle(),Low,https://developer.apple.com/documentation/swiftui/withanim
  • Network accessline 41
    40,Performance,Use Equatable views,Skip unnecessary view updates,Equatable for complex views,Default equality for all views,struct MyView: View Equatable,No Equatable conformance,Medium, 41,Performance,Profile with Instruments,Measure befor
  • Network accessline 42
    41,Performance,Profile with Instruments,Measure before optimizing,Use SwiftUI Instruments,Guess at performance issues,Profile with Instruments,Optimize without measuring,Medium, 42,Accessibility,Add accessibility labels,Describe UI elements
  • Network accessline 43
    42,Accessibility,Add accessibility labels,Describe UI elements,.accessibilityLabel for context,Missing labels,".accessibilityLabel(""Close button"")",Button without label,High,https://developer.apple.com/documentation/swiftui/view/accessibi

skills/design-ui-ux-pro-max/data/stacks/vue.csv

  • Network accessline 1
    No,Category,Guideline,Description,Do,Don't,Code Good,Code Bad,Severity,Docs URL 1,Composition,Use Composition API for new projects,Composition API offers better TypeScript support and logic reuse,<script setup> for components,Options API fo
  • Network accessline 2
    1,Composition,Use Composition API for new projects,Composition API offers better TypeScript support and logic reuse,<script setup> for components,Options API for new projects,<script setup>,export default { data() },Medium,https://vuejs.org
  • Network accessline 3
    2,Composition,Use script setup syntax,Cleaner syntax with automatic exports,<script setup> with defineProps,setup() function manually,<script setup>,<script> setup() { return {} },Low,https://vuejs.org/api/sfc-script-setup.html
  • Network accessline 4
    3,Reactivity,Use ref for primitives,ref() for primitive values that need reactivity,ref() for strings numbers booleans,reactive() for primitives,const count = ref(0),const count = reactive(0),Medium,https://vuejs.org/guide/essentials/reacti
  • Network accessline 5
    4,Reactivity,Use reactive for objects,reactive() for complex objects and arrays,reactive() for objects with multiple properties,ref() for complex objects,const state = reactive({ user: null }),const state = ref({ user: null }),Medium, 5,Rea
  • Network accessline 6
    5,Reactivity,Access ref values with .value,Remember .value in script unwrap in template,Use .value in script,Forget .value in script,count.value++,count++ (in script),High, 6,Reactivity,Use computed for derived state,Computed properties cac
  • Network accessline 7
    6,Reactivity,Use computed for derived state,Computed properties cache and update automatically,computed() for derived values,Methods for derived values,const doubled = computed(() => count.value * 2),const doubled = () => count.value * 2,Me
  • Network accessline 8
    7,Reactivity,Use shallowRef for large objects,Avoid deep reactivity for performance,shallowRef for large data structures,ref for large nested objects,const bigData = shallowRef(largeObject),const bigData = ref(largeObject),Medium,https://vu
  • Network accessline 9
    8,Watchers,Use watchEffect for simple cases,Auto-tracks dependencies,watchEffect for simple reactive effects,watch with explicit deps when not needed,watchEffect(() => console.log(count.value)),"watch(count, (val) => console.log(val))",Low,
  • Network accessline 10
    9,Watchers,Use watch for specific sources,Explicit control over what to watch,watch with specific refs,watchEffect for complex conditional logic,"watch(userId, fetchUser)",watchEffect with conditionals,Medium, 10,Watchers,Clean up side effe
  • Network accessline 11
    10,Watchers,Clean up side effects,Return cleanup function in watchers,Return cleanup in watchEffect,Leave subscriptions open,watchEffect((onCleanup) => { onCleanup(unsub) }),watchEffect without cleanup,High, 11,Props,Define props with defin
  • Network accessline 12
    11,Props,Define props with defineProps,Type-safe prop definitions,defineProps with TypeScript,Props without types,defineProps<{ msg: string }>(),defineProps(['msg']),Medium,https://vuejs.org/guide/typescript/composition-api.html#typing-comp
  • Network accessline 13
    12,Props,Use withDefaults for default values,Provide defaults for optional props,withDefaults with defineProps,Defaults in destructuring,"withDefaults(defineProps<Props>(), { count: 0 })",const { count = 0 } = defineProps(),Medium, 13,Props
  • Network accessline 14
    13,Props,Avoid mutating props,Props should be read-only,Emit events to parent for changes,Direct prop mutation,"emit('update:modelValue', newVal)",props.modelValue = newVal,High, 14,Emits,Define emits with defineEmits,Type-safe event emissi
  • Network accessline 15
    14,Emits,Define emits with defineEmits,Type-safe event emissions,defineEmits with types,Emit without definition,defineEmits<{ change: [id: number] }>(),"emit('change', id) without define",Medium,https://vuejs.org/guide/typescript/compositio
  • Network accessline 16
    15,Emits,Use v-model for two-way binding,Simplified parent-child data flow,v-model with modelValue prop,:value + @input manually,"<Child v-model=""value""/>","<Child :value=""value"" @input=""value = $event""/>",Low,https://vuejs.org/guide/
  • Network accessline 17
    16,Lifecycle,Use onMounted for DOM access,DOM is ready in onMounted,onMounted for DOM operations,Access DOM in setup directly,onMounted(() => el.value.focus()),el.value.focus() in setup,High,https://vuejs.org/api/composition-api-lifecycle.h
  • Network accessline 19
    18,Lifecycle,Avoid onBeforeMount for data,Use onMounted or setup for data fetching,Fetch in onMounted or setup,Fetch in onBeforeMount,onMounted(async () => await fetchData()),onBeforeMount(async () => await fetchData()),Low, 19,Components,U
  • Network accessline 20
    19,Components,Use single-file components,Keep template script style together,.vue files for components,Separate template/script files,Component.vue with all parts,Component.js + Component.html,Low, 20,Components,Use PascalCase for component
  • Network accessline 21
    20,Components,Use PascalCase for components,Consistent component naming,PascalCase in imports and templates,kebab-case in script,<MyComponent/>,<my-component/>,Low,https://vuejs.org/style-guide/rules-strongly-recommended.html
  • Network accessline 22
    21,Components,Prefer composition over mixins,Composables replace mixins,Composables for shared logic,Mixins for code reuse,const { data } = useApi(),mixins: [apiMixin],Medium, 22,Composables,Name composables with use prefix,Convention for c
  • Network accessline 23
    22,Composables,Name composables with use prefix,Convention for composable functions,useFetch useAuth useForm,getData or fetchApi,export function useFetch(),export function fetchData(),Medium,https://vuejs.org/guide/reusability/composables.h
  • Network accessline 24
    23,Composables,Return refs from composables,Maintain reactivity when destructuring,Return ref values,Return reactive objects that lose reactivity,return { data: ref(null) },return reactive({ data: null }),Medium, 24,Composables,Accept ref o
  • Network accessline 25
    24,Composables,Accept ref or value params,Use toValue for flexible inputs,toValue() or unref() for params,Only accept ref or only value,const val = toValue(maybeRef),const val = maybeRef.value,Low,https://vuejs.org/api/reactivity-utilities.
  • Network accessline 26
    25,Templates,Use v-bind shorthand,Cleaner template syntax,:prop instead of v-bind:prop,Full v-bind syntax,"<div :class=""cls"">","<div v-bind:class=""cls"">",Low, 26,Templates,Use v-on shorthand,Cleaner event binding,@event instead of v-on:
  • Network accessline 27
    26,Templates,Use v-on shorthand,Cleaner event binding,@event instead of v-on:event,Full v-on syntax,"<button @click=""handler"">","<button v-on:click=""handler"">",Low, 27,Templates,Avoid v-if with v-for,v-if has higher priority causes issu
  • Network accessline 28
    27,Templates,Avoid v-if with v-for,v-if has higher priority causes issues,Wrap in template or computed filter,v-if on same element as v-for,<template v-for><div v-if>,<div v-for v-if>,High,https://vuejs.org/style-guide/rules-essential.html#
  • Network accessline 29
    28,Templates,Use key with v-for,Proper list rendering and updates,Unique key for each item,Index as key for dynamic lists,"v-for=""item in items"" :key=""item.id""","v-for=""(item, i) in items"" :key=""i""",High, 29,State,Use Pinia for glob
  • Network accessline 30
    29,State,Use Pinia for global state,Official state management for Vue 3,Pinia stores for shared state,Vuex for new projects,const store = useCounterStore(),Vuex with mutations,Medium,https://pinia.vuejs.org/
  • Network accessline 31
    30,State,Define stores with defineStore,Composition API style stores,Setup stores with defineStore,Options stores for complex state,"defineStore('counter', () => {})","defineStore('counter', { state })",Low, 31,State,Use storeToRefs for des
  • Network accessline 32
    31,State,Use storeToRefs for destructuring,Maintain reactivity when destructuring,storeToRefs(store),Direct destructuring,const { count } = storeToRefs(store),const { count } = store,High,https://pinia.vuejs.org/core-concepts/#destructuring
  • Network accessline 33
    32,Routing,Use useRouter and useRoute,Composition API router access,useRouter() useRoute() in setup,this.$router this.$route,const router = useRouter(),this.$router.push(),Medium,https://router.vuejs.org/guide/advanced/composition-api.html
  • Network accessline 34
    33,Routing,Lazy load route components,Code splitting for routes,() => import() for components,Static imports for all routes,component: () => import('./Page.vue'),component: Page,Medium,https://router.vuejs.org/guide/advanced/lazy-loading.ht
  • Network accessline 35
    34,Routing,Use navigation guards,Protect routes and handle redirects,beforeEach for auth checks,Check auth in each component,router.beforeEach((to) => {}),Check auth in onMounted,Medium, 35,Performance,Use v-once for static content,Skip re-
  • Network accessline 36
    35,Performance,Use v-once for static content,Skip re-renders for static elements,v-once on never-changing content,v-once on dynamic content,<div v-once>{{ staticText }}</div>,<div v-once>{{ dynamicText }}</div>,Low,https://vuejs.org/api/bui
  • Network accessline 37
    36,Performance,Use v-memo for expensive lists,Memoize list items,v-memo with dependency array,Re-render entire list always,"<div v-for v-memo=""[item.id]"">",<div v-for> without memo,Medium,https://vuejs.org/api/built-in-directives.html#v-m
  • Network accessline 38
    37,Performance,Use shallowReactive for flat objects,Avoid deep reactivity overhead,shallowReactive for flat state,reactive for simple objects,shallowReactive({ count: 0 }),reactive({ count: 0 }),Low, 38,Performance,Use defineAsyncComponent,
  • Network accessline 39
    38,Performance,Use defineAsyncComponent,Lazy load heavy components,defineAsyncComponent for modals dialogs,Import all components eagerly,defineAsyncComponent(() => import()),import HeavyComponent from,Medium,https://vuejs.org/guide/componen
  • Network accessline 40
    39,TypeScript,Use generic components,Type-safe reusable components,Generic with defineComponent,Any types in components,"<script setup lang=""ts"" generic=""T"">",<script setup> without types,Medium,https://vuejs.org/guide/typescript/compos
  • Network accessline 41
    40,TypeScript,Type template refs,Proper typing for DOM refs,ref<HTMLInputElement>(null),ref(null) without type,const input = ref<HTMLInputElement>(null),const input = ref(null),Medium, 41,TypeScript,Use PropType for complex props,Type compl
  • Network accessline 42
    41,TypeScript,Use PropType for complex props,Type complex prop types,PropType<User> for object props,Object without type,type: Object as PropType<User>,type: Object,Medium, 42,Testing,Use Vue Test Utils,Official testing library,mount shallo
  • Network accessline 43
    42,Testing,Use Vue Test Utils,Official testing library,mount shallowMount for components,Manual DOM testing,import { mount } from '@vue/test-utils',document.createElement,Medium,https://test-utils.vuejs.org/
  • Network accessline 44
    43,Testing,Test component behavior,Focus on inputs and outputs,Test props emit and rendered output,Test internal implementation,expect(wrapper.text()).toContain(),expect(wrapper.vm.internalState),Medium, 44,Forms,Use v-model modifiers,Built
  • Network accessline 45
    44,Forms,Use v-model modifiers,Built-in input handling,.lazy .number .trim modifiers,Manual input parsing,"<input v-model.number=""age"">","<input v-model=""age""> then parse",Low,https://vuejs.org/guide/essentials/forms.html#modifiers
  • Network accessline 47
    46,Accessibility,Use semantic elements,Proper HTML elements in templates,button nav main for purpose,div for everything,<button @click>,<div @click>,High, 47,Accessibility,Bind aria attributes dynamically,Keep ARIA in sync with state,":aria
  • Network accessline 48
    47,Accessibility,Bind aria attributes dynamically,Keep ARIA in sync with state,":aria-expanded=""isOpen""",Static ARIA values,":aria-expanded=""menuOpen""","aria-expanded=""true""",Medium, 48,SSR,Use Nuxt for SSR,Full-featured SSR framework
  • Network accessline 49
    48,SSR,Use Nuxt for SSR,Full-featured SSR framework,Nuxt 3 for SSR apps,Manual SSR setup,npx nuxi init my-app,Custom SSR configuration,Medium,https://nuxt.com/

skills/design-ui-ux-pro-max/data/typography.csv

  • Network accessline 1
    STT,Font Pairing Name,Category,Heading Font,Body Font,Mood/Style Keywords,Best For,Google Fonts URL,CSS Import,Tailwind Config,Notes 1,Classic Elegant,"Serif + Sans",Playfair Display,Inter,"elegant, luxury, sophisticated, timeless, premium,
  • Network accessline 2
    1,Classic Elegant,"Serif + Sans",Playfair Display,Inter,"elegant, luxury, sophisticated, timeless, premium, editorial","Luxury brands, fashion, spa, beauty, editorial, magazines, high-end e-commerce","https://fonts.google.com/share?selectio
  • Network accessline 3
    2,Modern Professional,"Sans + Sans",Poppins,Open Sans,"modern, professional, clean, corporate, friendly, approachable","SaaS, corporate sites, business apps, startups, professional services","https://fonts.google.com/share?selection.family=
  • Network accessline 4
    3,Tech Startup,"Sans + Sans",Space Grotesk,DM Sans,"tech, startup, modern, innovative, bold, futuristic","Tech companies, startups, SaaS, developer tools, AI products","https://fonts.google.com/share?selection.family=DM+Sans:wght@400;500;70
  • Network accessline 5
    4,Editorial Classic,"Serif + Serif",Cormorant Garamond,Libre Baskerville,"editorial, classic, literary, traditional, refined, bookish","Publishing, blogs, news sites, literary magazines, book covers","https://fonts.google.com/share?selectio
  • Network accessline 6
    5,Minimal Swiss,"Sans + Sans",Inter,Inter,"minimal, clean, swiss, functional, neutral, professional","Dashboards, admin panels, documentation, enterprise apps, design systems","https://fonts.google.com/share?selection.family=Inter:wght@300;
  • Network accessline 7
    6,Playful Creative,"Display + Sans",Fredoka,Nunito,"playful, friendly, fun, creative, warm, approachable","Children's apps, educational, gaming, creative tools, entertainment","https://fonts.google.com/share?selection.family=Fredoka:wght@40
  • Network accessline 8
    7,Bold Statement,"Display + Sans",Bebas Neue,Source Sans 3,"bold, impactful, strong, dramatic, modern, headlines","Marketing sites, portfolios, agencies, event pages, sports","https://fonts.google.com/share?selection.family=Bebas+Neue|Sourc
  • Network accessline 9
    8,Wellness Calm,"Serif + Sans",Lora,Raleway,"calm, wellness, health, relaxing, natural, organic","Health apps, wellness, spa, meditation, yoga, organic brands","https://fonts.google.com/share?selection.family=Lora:wght@400;500;600;700|Ralew
  • Network accessline 10
    9,Developer Mono,"Mono + Sans",JetBrains Mono,IBM Plex Sans,"code, developer, technical, precise, functional, hacker","Developer tools, documentation, code editors, tech blogs, CLI apps","https://fonts.google.com/share?selection.family=IBM+
  • Network accessline 11
    10,Retro Vintage,"Display + Serif",Abril Fatface,Merriweather,"retro, vintage, nostalgic, dramatic, decorative, bold","Vintage brands, breweries, restaurants, creative portfolios, posters","https://fonts.google.com/share?selection.family=Ab
  • Network accessline 12
    11,Geometric Modern,"Sans + Sans",Outfit,Work Sans,"geometric, modern, clean, balanced, contemporary, versatile","General purpose, portfolios, agencies, modern brands, landing pages","https://fonts.google.com/share?selection.family=Outfit:w
  • Network accessline 13
    12,Luxury Serif,"Serif + Sans",Cormorant,Montserrat,"luxury, high-end, fashion, elegant, refined, premium","Fashion brands, luxury e-commerce, jewelry, high-end services","https://fonts.google.com/share?selection.family=Cormorant:wght@400;5
  • Network accessline 14
    13,Friendly SaaS,"Sans + Sans",Plus Jakarta Sans,Plus Jakarta Sans,"friendly, modern, saas, clean, approachable, professional","SaaS products, web apps, dashboards, B2B, productivity tools","https://fonts.google.com/share?selection.family=P
  • Network accessline 15
    14,News Editorial,"Serif + Sans",Newsreader,Roboto,"news, editorial, journalism, trustworthy, readable, informative","News sites, blogs, magazines, journalism, content-heavy sites","https://fonts.google.com/share?selection.family=Newsreader
  • Network accessline 16
    15,Handwritten Charm,"Script + Sans",Caveat,Quicksand,"handwritten, personal, friendly, casual, warm, charming","Personal blogs, invitations, creative portfolios, lifestyle brands","https://fonts.google.com/share?selection.family=Caveat:wgh
  • Network accessline 17
    16,Corporate Trust,"Sans + Sans",Lexend,Source Sans 3,"corporate, trustworthy, accessible, readable, professional, clean","Enterprise, government, healthcare, finance, accessibility-focused","https://fonts.google.com/share?selection.family=
  • Network accessline 18
    17,Brutalist Raw,"Mono + Mono",Space Mono,Space Mono,"brutalist, raw, technical, monospace, minimal, stark","Brutalist designs, developer portfolios, experimental, tech art","https://fonts.google.com/share?selection.family=Space+Mono:wght@4
  • Network accessline 19
    18,Fashion Forward,"Sans + Sans",Syne,Manrope,"fashion, avant-garde, creative, bold, artistic, edgy","Fashion brands, creative agencies, art galleries, design studios","https://fonts.google.com/share?selection.family=Manrope:wght@300;400;50
  • Network accessline 20
    19,Soft Rounded,"Sans + Sans",Varela Round,Nunito Sans,"soft, rounded, friendly, approachable, warm, gentle","Children's products, pet apps, friendly brands, wellness, soft UI","https://fonts.google.com/share?selection.family=Nunito+Sans:wg
  • Network accessline 21
    20,Premium Sans,"Sans + Sans",Satoshi,General Sans,"premium, modern, clean, sophisticated, versatile, balanced","Premium brands, modern agencies, SaaS, portfolios, startups","https://fonts.google.com/share?selection.family=DM+Sans:wght@400;
  • Network accessline 22
    21,Vietnamese Friendly,"Sans + Sans",Be Vietnam Pro,Noto Sans,"vietnamese, international, readable, clean, multilingual, accessible","Vietnamese sites, multilingual apps, international products","https://fonts.google.com/share?selection.fam
  • Network accessline 23
    22,Japanese Elegant,"Serif + Sans",Noto Serif JP,Noto Sans JP,"japanese, elegant, traditional, modern, multilingual, readable","Japanese sites, Japanese restaurants, cultural sites, anime/manga","https://fonts.google.com/share?selection.fam
  • Network accessline 24
    23,Korean Modern,"Sans + Sans",Noto Sans KR,Noto Sans KR,"korean, modern, clean, professional, multilingual, readable","Korean sites, K-beauty, K-pop, Korean businesses, multilingual","https://fonts.google.com/share?selection.family=Noto+Sa
  • Network accessline 25
    24,Chinese Traditional,"Serif + Sans",Noto Serif TC,Noto Sans TC,"chinese, traditional, elegant, cultural, multilingual, readable","Traditional Chinese sites, cultural content, Taiwan/Hong Kong markets","https://fonts.google.com/share?selec
  • Network accessline 26
    25,Chinese Simplified,"Sans + Sans",Noto Sans SC,Noto Sans SC,"chinese, simplified, modern, professional, multilingual, readable","Simplified Chinese sites, mainland China market, business apps","https://fonts.google.com/share?selection.fam
  • Network accessline 27
    26,Arabic Elegant,"Serif + Sans",Noto Naskh Arabic,Noto Sans Arabic,"arabic, elegant, traditional, cultural, RTL, readable","Arabic sites, Middle East market, Islamic content, bilingual sites","https://fonts.google.com/share?selection.famil
  • Network accessline 28
    27,Thai Modern,"Sans + Sans",Noto Sans Thai,Noto Sans Thai,"thai, modern, readable, clean, multilingual, accessible","Thai sites, Southeast Asia, tourism, Thai restaurants","https://fonts.google.com/share?selection.family=Noto+Sans+Thai:wgh
  • Network accessline 29
    28,Hebrew Modern,"Sans + Sans",Noto Sans Hebrew,Noto Sans Hebrew,"hebrew, modern, RTL, clean, professional, readable","Hebrew sites, Israeli market, Jewish content, bilingual sites","https://fonts.google.com/share?selection.family=Noto+Sans
  • Network accessline 30
    29,Legal Professional,"Serif + Sans",EB Garamond,Lato,"legal, professional, traditional, trustworthy, formal, authoritative","Law firms, legal services, contracts, formal documents, government","https://fonts.google.com/share?selection.fami
  • Network accessline 31
    30,Medical Clean,"Sans + Sans",Figtree,Noto Sans,"medical, clean, accessible, professional, healthcare, trustworthy","Healthcare, medical clinics, pharma, health apps, accessibility","https://fonts.google.com/share?selection.family=Figtree:
  • Network accessline 32
    31,Financial Trust,"Sans + Sans",IBM Plex Sans,IBM Plex Sans,"financial, trustworthy, professional, corporate, banking, serious","Banks, finance, insurance, investment, fintech, enterprise","https://fonts.google.com/share?selection.family=I
  • Network accessline 33
    32,Real Estate Luxury,"Serif + Sans",Cinzel,Josefin Sans,"real estate, luxury, elegant, sophisticated, property, premium","Real estate, luxury properties, architecture, interior design","https://fonts.google.com/share?selection.family=Cinze
  • Network accessline 34
    33,Restaurant Menu,"Serif + Sans",Playfair Display SC,Karla,"restaurant, menu, culinary, elegant, foodie, hospitality","Restaurants, cafes, food blogs, culinary, hospitality","https://fonts.google.com/share?selection.family=Karla:wght@300;4
  • Network accessline 35
    34,Art Deco,"Display + Sans",Poiret One,Didact Gothic,"art deco, vintage, 1920s, elegant, decorative, gatsby","Vintage events, art deco themes, luxury hotels, classic cocktails","https://fonts.google.com/share?selection.family=Didact+Gothic
  • Network accessline 36
    35,Magazine Style,"Serif + Sans",Libre Bodoni,Public Sans,"magazine, editorial, publishing, refined, journalism, print","Magazines, online publications, editorial content, journalism","https://fonts.google.com/share?selection.family=Libre+B
  • Network accessline 37
    36,Crypto/Web3,"Sans + Sans",Orbitron,Exo 2,"crypto, web3, futuristic, tech, blockchain, digital","Crypto platforms, NFT, blockchain, web3, futuristic tech","https://fonts.google.com/share?selection.family=Exo+2:wght@300;400;500;600;700|Orb
  • Network accessline 38
    37,Gaming Bold,"Display + Sans",Russo One,Chakra Petch,"gaming, bold, action, esports, competitive, energetic","Gaming, esports, action games, competitive sports, entertainment","https://fonts.google.com/share?selection.family=Chakra+Petch:
  • Network accessline 39
    38,Indie/Craft,"Display + Sans",Amatic SC,Cabin,"indie, craft, handmade, artisan, organic, creative","Craft brands, indie products, artisan, handmade, organic products","https://fonts.google.com/share?selection.family=Amatic+SC:wght@400;700
  • Network accessline 40
    39,Startup Bold,"Sans + Sans",Clash Display,Satoshi,"startup, bold, modern, innovative, confident, dynamic","Startups, pitch decks, product launches, bold brands","https://fonts.google.com/share?selection.family=Outfit:wght@400;500;600;700|
  • Network accessline 41
    40,E-commerce Clean,"Sans + Sans",Rubik,Nunito Sans,"ecommerce, clean, shopping, product, retail, conversion","E-commerce, online stores, product pages, retail, shopping","https://fonts.google.com/share?selection.family=Nunito+Sans:wght@300
  • Network accessline 42
    41,Academic/Research,"Serif + Sans",Crimson Pro,Atkinson Hyperlegible,"academic, research, scholarly, accessible, readable, educational","Universities, research papers, academic journals, educational","https://fonts.google.com/share?selecti
  • Network accessline 43
    42,Dashboard Data,"Mono + Sans",Fira Code,Fira Sans,"dashboard, data, analytics, code, technical, precise","Dashboards, analytics, data visualization, admin panels","https://fonts.google.com/share?selection.family=Fira+Code:wght@400;500;600
  • Network accessline 44
    43,Music/Entertainment,"Display + Sans",Righteous,Poppins,"music, entertainment, fun, energetic, bold, performance","Music platforms, entertainment, events, festivals, performers","https://fonts.google.com/share?selection.family=Poppins:wgh
  • Network accessline 45
    44,Minimalist Portfolio,"Sans + Sans",Archivo,Space Grotesk,"minimal, portfolio, designer, creative, clean, artistic","Design portfolios, creative professionals, minimalist brands","https://fonts.google.com/share?selection.family=Archivo:wg
  • Network accessline 46
    45,Kids/Education,"Display + Sans",Baloo 2,Comic Neue,"kids, education, playful, friendly, colorful, learning","Children's apps, educational games, kid-friendly content","https://fonts.google.com/share?selection.family=Baloo+2:wght@400;500;
  • Network accessline 47
    46,Wedding/Romance,"Script + Serif",Great Vibes,Cormorant Infant,"wedding, romance, elegant, script, invitation, feminine","Wedding sites, invitations, romantic brands, bridal","https://fonts.google.com/share?selection.family=Cormorant+Infa
  • Network accessline 48
    47,Science/Tech,"Sans + Sans",Exo,Roboto Mono,"science, technology, research, data, futuristic, precise","Science, research, tech documentation, data-heavy sites","https://fonts.google.com/share?selection.family=Exo:wght@300;400;500;600;700
  • Network accessline 49
    48,Accessibility First,"Sans + Sans",Atkinson Hyperlegible,Atkinson Hyperlegible,"accessible, readable, inclusive, WCAG, dyslexia-friendly, clear","Accessibility-critical sites, government, healthcare, inclusive design","https://fonts.googl
  • Network accessline 50
    49,Sports/Fitness,"Sans + Sans",Barlow Condensed,Barlow,"sports, fitness, athletic, energetic, condensed, action","Sports, fitness, gyms, athletic brands, competition","https://fonts.google.com/share?selection.family=Barlow+Condensed:wght@4
  • Network accessline 51
    50,Luxury Minimalist,"Serif + Sans",Bodoni Moda,Jost,"luxury, minimalist, high-end, sophisticated, refined, premium","Luxury minimalist brands, high-end fashion, premium products","https://fonts.google.com/share?selection.family=Bodoni+Moda
  • Network accessline 52
    51,Tech/HUD Mono,"Mono + Mono",Share Tech Mono,Fira Code,"tech, futuristic, hud, sci-fi, data, monospaced, precise","Sci-fi interfaces, developer tools, cybersecurity, dashboards","https://fonts.google.com/share?selection.family=Fira+Code:w
  • Network accessline 53
    52,Pixel Retro,"Display + Sans",Press Start 2P,VT323,"pixel, retro, gaming, 8-bit, nostalgic, arcade","Pixel art games, retro websites, creative portfolios","https://fonts.google.com/share?selection.family=Press+Start+2P|VT323","@import url
  • Network accessline 54
    53,Neubrutalist Bold,"Display + Sans",Lexend Mega,Public Sans,"bold, neubrutalist, loud, strong, geometric, quirky","Neubrutalist designs, Gen Z brands, bold marketing","https://fonts.google.com/share?selection.family=Lexend+Mega:wght@100..
  • Network accessline 55
    54,Academic/Archival,"Serif + Serif",EB Garamond,Crimson Text,"academic, old-school, university, research, serious, traditional","University sites, archives, research papers, history","https://fonts.google.com/share?selection.family=Crimson
  • Network accessline 56
    55,Spatial Clear,"Sans + Sans",Inter,Inter,"spatial, legible, glass, system, clean, neutral","Spatial computing, AR/VR, glassmorphism interfaces","https://fonts.google.com/share?selection.family=Inter:wght@300;400;500;600","@import url('htt
  • Network accessline 57
    56,Kinetic Motion,"Display + Mono",Syncopate,Space Mono,"kinetic, motion, futuristic, speed, wide, tech","Music festivals, automotive, high-energy brands","https://fonts.google.com/share?selection.family=Space+Mono:wght@400;700|Syncopate:wg
  • Network accessline 58
    57,Gen Z Brutal,"Display + Sans",Anton,Epilogue,"brutal, loud, shouty, meme, internet, bold","Gen Z marketing, streetwear, viral campaigns","https://fonts.google.com/share?selection.family=Anton|Epilogue:wght@400;500;600;700","@import url('

skills/design-ui-ux-pro-max/data/web-interface.csv

  • Network accessline 18
    17,Performance,Avoid Layout Reads,layout read render getboundingclientrect,Web,Avoid layout reads during render phase,Read layout in effects or callbacks,getBoundingClientRect in render,"useEffect(() => { el.getBoundingClientRect() })","con
  • Network accessline 19
    18,Performance,Batch DOM Operations,batch dom write read,Web,Group DOM operations to minimize reflows,Batch writes then reads,Interleave reads and writes,"writes.forEach(w => w()); reads.forEach(r => r())","write(); read(); write(); read();
  • Network accessline 20
    19,Performance,Preconnect CDN,preconnect link cdn,Web,Add preconnect links for CDN domains,Preconnect to known domains,"<link rel='preconnect' href='https://cdn.example.com' />","// no preconnect hint",Low

skills/design-ui-ux-pro-max/scripts/core.py

  • Executable scriptline 1
    #!/usr/bin/env python3

skills/design-ui-ux-pro-max/scripts/design_system.py

  • Executable scriptline 1
    #!/usr/bin/env python3

skills/design-ui-ux-pro-max/scripts/search.py

  • Executable scriptline 1
    #!/usr/bin/env python3

skills/god-skill-creator/LICENSE.txt

  • Network accessline 2
    Apache License                            Version 2.0, January 2004                         http://www.apache.org/licenses/
  • Network accessline 4
    http://www.apache.org/licenses/
  • Network accessline 196
    http://www.apache.org/licenses/LICENSE-2.0

skills/god-skill-creator/scripts/init_skill.py

  • Executable scriptline 1
    #!/usr/bin/env python3

skills/god-skill-creator/scripts/package_skill.py

  • Executable scriptline 1
    #!/usr/bin/env python3

skills/god-skill-creator/scripts/quick_validate.py

  • Executable scriptline 1
    #!/usr/bin/env python3

skills/rnd-api-design-principles/assets/rest-api-template.py

  • Executable scriptline 1
    Executable file

skills/rnd-api-design-principles/references/rest-best-practices.md

  • Network accessline 142
    Response Headers: Link: <https://api.example.com/users?page=3>; rel="next",
  • Network accessline 143
    Link: <https://api.example.com/users?page=3>; rel="next",
  • Network accessline 144
    <https://api.example.com/users?page=1>; rel="prev",
  • Network accessline 145
    <https://api.example.com/users?page=1>; rel="first",
  • Network accessline 146
    <https://api.example.com/users?page=8>; rel="last"
  • Network accessline 345
    app.add_middleware(     CORSMiddleware,     allow_origins=["https://example.com"],
  • Network accessline 346
    CORSMiddleware,     allow_origins=["https://example.com"],     allow_credentials=True,
  • Network accessline 347
    allow_origins=["https://example.com"],

skills/rnd-frontend-code-review/references/business-logic.md

  • Network accessline 11
    Node components are also used when creating a RAG Pipe from a template, but in that context there is no workflowStore Provider, which results in a blank screen. [This Issue](https://github.com/langgenius/dify/issues/29168) was caused by exa

skills/rnd-requirements-writer/references/tech-spec.md

  • Access to secretsline 352
    [Credential-related source omitted]

skills/rnd-tech-arch-diagrammer/references/excalidraw-file-format.md

  • Network accessline 9
    "type": "excalidraw",   "version": 2,   "source": "https://excalidraw.com",
  • Network accessline 10
    "version": 2,   "source": "https://excalidraw.com",   "elements": [...],
  • Network accessline 11
    "source": "https://excalidraw.com",
  • Network accessline 283
    "type": "excalidraw",   "version": 2,   "source": "https://excalidraw.com",
  • Network accessline 284
    "version": 2,   "source": "https://excalidraw.com",   "elements": [
  • Network accessline 285
    "source": "https://excalidraw.com",

skills/rnd-technical-writer/references/article-format-checklist.md

  • Network accessline 52
    - [ ] 链接格式正确:`[文字](URL)` - [ ] 外部链接使用完整 URL(https://...)
  • Network accessline 53
    - [ ] 外部链接使用完整 URL(https://...)

skills/rnd-technical-writer/references/article-format-template.md

  • Network accessline 134
    ![图片描述](https://example.com/path/to/image.jpg)
  • Network accessline 154
    [链接文字](https://example.com)
  • Network accessline 164
    [Android 官方文档](https://developer.android.com "Android Developers")

skills/strategic-planning-startup-mentor/references/opb-methodology.md

  • Network accessline 7
    - **一人企业不等于一人公司**: https://ft07.com/one-person-enterprise-does-not-equal-one-person-business/?mtm_campaign=github&mtm_kwd=opbmv2
  • Network accessline 11
    - **滚雪球与链式传播**: https://ft07.com/snowballing-and-chain-propagation/
  • Network accessline 12
    - **资产与被动收入**: https://ft07.com/assets-and-passive-income/
  • Network accessline 13
    - **为什么可扩展性是可能的**: https://ft07.com/why-scalability-is-possible/
  • Network accessline 14
    - **为什么可以想得大**: https://ft07.com/why-thinking-big-is-possible/
  • Network accessline 18
    - **一人企业的赛道选择**: https://ft07.com/race-track-selection-for-opb/
  • Network accessline 22
    - **流量汇聚竞争策略**: https://ft07.com/traffic-convergence-competitive-strategy/
  • Network accessline 23
    - **非竞争策略**: https://ft07.com/non-competition-strategy/
  • Network accessline 24
    - **结构化优势**: https://ft07.com/structured-advantage/
  • Network accessline 28
    - **真实商业模拟器**: https://ft07.com/real-business-simulator/
  • Network accessline 29
    - **OPB画布与OPB报告**: https://ft07.com/opb-canvas-and-opb-report/
  • Network accessline 33
    - **副产品优势的发现**: https://ft07.com/discovery-of-by-product-advantages/
  • Network accessline 37
    - **AI杠杆:成熟的新杠杆**: https://ft07.com/ai-leverage-maturing-new-leverage/
  • Network accessline 41
    - **从副业开始**: https://ft07.com/start-from-side-project/
  • Network accessline 42
    - **管理与利用不确定性**: https://ft07.com/managing-and-utilizing-uncertainty/
  • Network accessline 46
    - **产品市场契合游戏:如何验证你的想法、市场和产品**: https://ft07.com/product-market-fit-game-how-to-validate-your-idea-market-and-product/
  • Network accessline 47
    - **问答:如何发现需求**: https://ft07.com/q-and-a-how-do-you-discover-demand/
  • Network accessline 51
    - **新颖客户**: https://ft07.com/novel-client/
  • Network accessline 52
    - **从零开始构建软件产品或服务(上)**: https://ft07.com/building-software-products-or-services-from-scratch-1/
  • Network accessline 53
    - **从零开始构建软件产品或服务(下)**: https://ft07.com/building-software-products-or-services-from-scratch-2/
  • Network accessline 57
    - **搭建一人企业基础设施**: https://ft07.com/setup-a-one-person-business-infrastructure/
  • Network accessline 58
    - **众包能力**: https://ft07.com/crowdsourcing-capability/
  • Network accessline 59
    - **产品池与支付能力**: https://ft07.com/product-pool-and-payment-capability/
  • Network accessline 60
    - **内容池与自动化能力**: https://ft07.com/content-pool-and-automation-capability/
  • Network accessline 61
    - **基础设施:用户池与触达能力**: https://ft07.com/infrastructure-user-pool-reach-capability/
  • Network accessline 62
    - **理想的一人企业基础设施是什么**: https://ft07.com/what-is-the-ideal-one-person-business-infrastructure/

skills/testing-performance-tester/SKILL.md

  • Network accessline 137
    export default function() {   // 登录   const loginRes = http.post('https://api.example.com/login', {
  • Network accessline 138
    // 登录   const loginRes = http.post('https://api.example.com/login', {     username: 'testuser',
  • Network accessline 139
    const loginRes = http.post('https://api.example.com/login', {
  • Network accessline 156
    const dataRes = http.get('https://api.example.com/data', params);

skills/testing-test-automation-engineer/SKILL.md

  • Network accessline 198
    def __init__(self, base_url, headers=None):         self.base_url = base_url         self.session = requests.Session()
  • Network accessline 199
    self.base_url = base_url         self.session = requests.Session()         if headers:
  • Network accessline 200
    self.session = requests.Session()
  • Network accessline 234
    def setup(self):         self.client = APIClient(             base_url="https://api.example.com",
  • Network accessline 235
    [Credential-related source omitted]
  • Network accessline 236
    base_url="https://api.example.com",

How the signals fit together

Facts from a static read of the files at the pinned commit. They describe what the code does, not why.

Some files could not be read; the facts below still hold.

Declared and executed: 1 fact
Signal confidence: 212 facts

and 162 more

Works with

Agent compatibility, from the files in this repository
AgentStatusEvidenceInstall to
Claude CodeCompatibleStandard SKILL.md skills/brand-pr-brand-manager/SKILL.md.claude/skills/<skill-name>/
CodexCompatibleStandard SKILL.md skills/brand-pr-brand-manager/SKILL.md.agents/skills/<skill-name>/
CursorCompatibleStandard SKILL.md skills/brand-pr-brand-manager/SKILL.md.cursor/skills/<skill-name>/
Gemini CLICompatibleStandard SKILL.md skills/brand-pr-brand-manager/SKILL.md.gemini/skills/<skill-name>/
GitHub CopilotCompatibleStandard SKILL.md skills/brand-pr-brand-manager/SKILL.md.github/skills/<skill-name>/
OpenCodeCompatibleStandard SKILL.md skills/brand-pr-brand-manager/SKILL.md.opencode/skills/<skill-name>/
  • Native The repository ships a manifest, folder or frontmatter field for this agent.
  • Compatible A standard SKILL.md that this agent can read.
  • Unknown No evidence either way.

Derived automatically from paths, manifests and frontmatter. Not tested on each agent.