MCP HubMCP Hub
スキル一覧に戻る

typography-spacing-enforcer

sgcarstrends
更新日 2 days ago
60 閲覧
9
1
9
GitHubで表示
デザインdesign

について

このスキルは、UIコンポーネント全体でのデザイン一貫性を維持するために、タイポグラフィシステムとモダンな間隔の規則を適用します。生のHTML見出しや不正な間隔の使用などの違反をチェックし、コンポーネントがプロジェクト標準に従っていることを保証します。新しいUIコンポーネントの実装後や、コードレビュー中に使用して、デザインの不整合を検出できます。

クイックインストール

Claude Code

推奨
プラグインコマンド推奨
/plugin add https://github.com/sgcarstrends/sgcarstrends
Git クローン代替
git clone https://github.com/sgcarstrends/sgcarstrends.git ~/.claude/skills/typography-spacing-enforcer

このコマンドをClaude Codeにコピー&ペーストしてスキルをインストールします

ドキュメント

Typography & Spacing Enforcer Skill

This Skill ensures all UI components follow the project's Typography system and modern spacing conventions for consistent design.

When to Activate

  • After creating new UI components
  • When refactoring existing components
  • During code reviews before PR approval
  • When migrating legacy code to new standards

What to Check

Typography Violations

Raw HTML Headings:

  • <h1>, <h2>, <h3>, <h4>
  • Typography.H1, Typography.H2, Typography.H3, Typography.H4

Raw Paragraph Tags:

  • <p className="text-lg">...</p>
  • Typography.TextLg, Typography.Text, Typography.TextSm

Incorrect Heading Hierarchy:

  • Multiple H1 elements on a page
  • Skipping heading levels (H1 → H3)
  • Using wrong semantic level for content

Missing Semantic Colors:

  • Components should use HeroUI semantic colors:
    • text-foreground (primary text)
    • text-default-900 (strong emphasis)
    • text-default-600 (secondary text)
    • text-muted-foreground (metadata)

Spacing Violations

Space-y Utilities (Legacy Pattern):

  • <div className="space-y-4">
  • <div className="flex flex-col gap-4">

Margin-Top on Siblings:

  • <CardComponent className="mt-4" />
  • ✅ Parent uses flex flex-col gap-4

Odd Gap Values:

  • gap-1, gap-3, gap-5 (without justification)
  • gap-2, gap-4, gap-6, gap-8

Redundant Height/Width (Tailwind v3.4+):

  • <div className="h-4 w-4"> (equal dimensions)
  • <div className="size-4"> (use size-* utility)
  • ⚠️ Exception: Different dimensions still use h-* and w-* (e.g., h-4 w-6)

Exception: mt-* is acceptable ONLY for icon alignment with text (e.g., <Icon className="mt-1" />)

Actions Performed

  1. Scan Component Files: Use Grep to find violations
  2. Report Violations: List each issue with file:line reference
  3. Provide Auto-Fix Suggestions: Show before/after code examples
  4. Check Typography Imports: Ensure Typography is imported from @web/components/typography
  5. Check Size Utility Usage: Detect h-* w-* patterns with equal values and suggest size-*

Example Output

Typography & Spacing Violations Found:

src/app/(dashboard)/coe/_components/category-card.tsx:15
❌ <h3 className="text-2xl">Category A</h3>
✅ <Typography.H3>Category A</Typography.H3>

src/components/charts/trend-chart.tsx:42
❌ <div className="space-y-4">
✅ <div className="flex flex-col gap-4">

src/app/blog/_components/post-list.tsx:28
❌ <PostCard className="mt-6" />
✅ Parent should use: <div className="flex flex-col gap-6">

src/components/icons/search-icon.tsx:8
❌ <svg className="h-4 w-4">
✅ <svg className="size-4">

Spacing Scale Reference

  • gap-2 (0.5rem / 8px) - Small spacing, compact lists
  • gap-4 (1rem / 16px) - Standard spacing, most common
  • gap-6 (1.5rem / 24px) - Medium spacing, section groups
  • gap-8 (2rem / 32px) - Large spacing, major sections

Typography Components Reference

Headings:

  • Typography.H1 - Page titles (text-4xl, font-semibold)
  • Typography.H2 - Section titles (text-3xl, font-semibold)
  • Typography.H3 - Card titles (text-2xl, font-medium)
  • Typography.H4 - Nested sections (text-xl, font-medium)

Body Text:

  • Typography.TextLg - Lead paragraphs (text-lg)
  • Typography.Text - Standard body (text-base)
  • Typography.TextSm - Secondary info (text-sm)

UI Labels:

  • Typography.Label - Form labels, tabs (font-medium, text-sm)
  • Typography.Caption - Metadata, timestamps (text-xs)

Tools Used

  • Grep: Search for violation patterns across component files
  • Read: Examine specific files for detailed analysis
  • Glob: Find all component files in specific directories

Target Directories

  • src/app/**/_components/ (co-located components)
  • src/components/ (shared components)
  • Exclude: src/components/ui/ (shadcn/ui - DO NOT MODIFY)

GitHub リポジトリ

sgcarstrends/sgcarstrends
パス: apps/web/.claude/skills/typography-spacing-enforcer
apiaws-lambdabackendhonojob-schedulerneon-postgres

関連スキル

content-collections

メタ

This skill provides a production-tested setup for Content Collections, a TypeScript-first tool that transforms Markdown/MDX files into type-safe data collections with Zod validation. Use it when building blogs, documentation sites, or content-heavy Vite + React applications to ensure type safety and automatic content validation. It covers everything from Vite plugin configuration and MDX compilation to deployment optimization and schema validation.

スキルを見る

creating-opencode-plugins

メタ

This skill provides the structure and API specifications for creating OpenCode plugins that hook into 25+ event types like commands, files, and LSP operations. It offers implementation patterns for JavaScript/TypeScript modules that intercept and extend the AI assistant's lifecycle. Use it when you need to build event-driven plugins for monitoring, custom handling, or extending OpenCode's capabilities.

スキルを見る

polymarket

メタ

This skill enables developers to build applications with the Polymarket prediction markets platform, including API integration for trading and market data. It also provides real-time data streaming via WebSocket to monitor live trades and market activity. Use it for implementing trading strategies or creating tools that process live market updates.

スキルを見る

cloudflare-turnstile

メタ

This skill provides comprehensive guidance for implementing Cloudflare Turnstile as a CAPTCHA-alternative bot protection system. It covers integration for forms, login pages, API endpoints, and frameworks like React/Next.js/Hono, while handling invisible challenges that maintain user experience. Use it when migrating from reCAPTCHA, debugging error codes, or implementing token validation and E2E tests.

スキルを見る