本文へ移動
cccskills
無料GitHub で公開

ui

Design system reference for the Devkit Vue stack (Vuetify 4 + custom theme helpers). Use when asked about styling, theming, layout, design system, Vuetify components, visual verification, or UI patterns. Automatically consumed by /feature when the task has a visual component. Can also be invoked directly for design-only tasks (restyle, theme change, layout fix).

インストール方法を見る

含まれるファイル(5)

  • SKILL.md5.3 KB
  • references/components.md2.5 KB
  • references/design-system.md9.0 KB
  • references/patterns.md7.7 KB
  • references/verification.md3.5 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

UI

Design system reference and visual quality guidelines for the Devkit Vue stack.

This is not a standalone workflow. For full feature implementation, use /feature which automatically applies these guidelines when visual work is involved.

Invoke /ui directly only for pure design tasks (restyle, theme change, layout fix) that don't need the full /feature workflow.

This skill is an enforcer of the design system (Vuetify 4 + MD3 + theme helpers) and a craft baseline — the "Beauty pass" below is teachable, encodable craft (not taste-by-vibes), the difference between correct and beautiful. Net-new brand identity (a bold landing aesthetic, a new visual language) still belongs to creative direction outside this skill; the Beauty pass makes the everyday output stop looking generic.

References

WhatFileContent
Tokens, typography, spacing, breakpointsreferences/design-system.mdVuetify 4 MD3 classes, theme CSS variables, config paths
Component catalogreferences/components.mdHome sections, core layout, module pattern, key Vuetify components
Theme helpers & code patternsreferences/patterns.mdliquidGlassStyle(), style(), overlapStyle(), AOS, responsive
Visual verificationreferences/verification.mdPuppeteer screenshot flow, review checklist

Key rules (quick reminder)

  • Typography: MD3 classes only (text-display-large, NOT text-h1). Responsive: text-display-small text-sm-display-medium
  • Colors: Theme tokens via config or CSS variables (rgb(var(--v-theme-primary))), never hardcoded hex in templates
  • Dark/light: Everything must work in both modes
  • Config-driven: Prefer config options over hardcoded values
  • CSS last resort: Prefer in order: Vuetify props (flat, elevation, variant, density) → Vuetify utility classes (pa-0, d-flex) → Vuetify transitions (v-fade-transition, v-scale-transition) → <style scoped> only if no Vuetify alternative exists
  • Reuse: Check existing components before creating new ones
  • Verify: Screenshot desktop+mobile, light+dark after visual changes

Beauty pass (correct → beautiful)

Consistency + accessibility make a UI correct; these seven rules make it beautiful. Each is a checkable rule with a named failure mode — the inverse of each is exactly what makes a layout read as generic. Apply on every visual surface; they need no bespoke CSS (Vuetify props, spacing classes, elevation, and theme tokens carry all seven). Deeper config levers to push past the generic Material look: references/design-system.md § "Beauty levers".

  1. Whitespace first, then reduce. Start generous, don't fill the viewport; cramped padding is the #1 generic tell. Lean on pa-6/pa-8, section py-12+. Context-calibrate: dense dashboards tighten, but never start cramped.
  2. Hierarchy by weight + color, not size alone. Cap ~3 type sizes per view; de-emphasize secondary/tertiary with a lighter text-medium-emphasis / muted color, not just smaller. Size-only hierarchy is a slop signature.
  3. Spacing on the fixed scale only. Use the spacing classes (steps 0→16 = 4→64px); never an arbitrary inline margin: 13px. Off-scale spacing reads ad-hoc.
  4. Color reserved for emphasis. Mostly-neutral base (tinted greys via surface/background, not pure grey); primary for the ONE action that matters, not spread across the screen. Even color spread = the default-Material generic look. Never grey text on a colored background.
  5. Depth = soft, two-part elevation. Prefer low elevation-1/elevation-2 (Vuetify's shadows are already the layered contact+ambient pair) or elevation-0 + a subtle surface border; overlap elements to layer. One harsh high-contrast shadow reads cheap.
  6. Proximity groups related items (Gestalt). A field label sits tight to its input; a card's title/body/action cluster with less gap inside than between cards. Uniform spacing everywhere destroys grouping.
  7. Restraint over decoration. Fewer weights, one accent, generous rhythm — boring-and-consistent beats clever-and-busy. Delete an element before adding one.

These seven rules are the canonical craft baseline: name the visual intent when planning a surface, apply the rules while building, and score the rendered result against them in QA. This skill is where they're authored.

Anti-patterns

  • text-h1..text-h6 → use MD3: text-display-large, text-headline-medium
  • Hardcoded colors in templates → use theme variables
  • New components for things existing ones already handle
  • Ignoring dark mode
  • Skipping visual verification
  • Custom CSS when a Vuetify prop/class/transition covers the need
  • Generic-look tells (Beauty pass inverses): cramped padding · hierarchy by size alone · color spread evenly instead of reserved for emphasis · one harsh shadow · arbitrary off-scale spacing · pure untinted greys · grey text on colored backgrounds

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

Use this whenever the user asks to "create a module", "scaffold a feature", "add a Vue domain", "new module called X", or starts work on a brand-new vertical (views + components + store + router entry + tests). Duplicates the canonical `src/modules/tasks` template, applies kebab/Pascal/camel/ UPPER renames, and wires config-driven values. Module stays self-contained.

日本語の概要は準備中です。原文の説明を表示しています。

pierreb-devkit/Vue202026年10月9日 更新

feature

無料

Use this whenever the user asks to "implement", "add", "build", "create", or "modify" a feature, page, view, component, or module in this Vue project. Three phases: Phase 0 scope analysis (flows + edge cases + UI needs + plan validation, STOP for user), Phase 1 implementation (layered UI → Store → API, Vue 3 Composition + Vuetify 4, /ui design rules), Phase 2 Definition-of-Done checklist + /verify + /pull-request. Auto-runs /create-module if the target module doesn't exist.

日本語の概要は準備中です。原文の説明を表示しています。

pierreb-devkit/Vue202026年10月9日 更新

naming

無料

Use this whenever a new file/folder is created or renamed in this Vue project, when reviewing a module for consistency, or when the right path for a file is unclear. Also triggers on "what should I name this?", "is this file named correctly?", "audit module naming". Enforces kebab-case folders, dot-prefixed `{module}.{name}.{type}.vue|js` files, multi-entity rules, singular vs plural for views, and the layered structure UI → Store → API.

日本語の概要は準備中です。原文の説明を表示しています。

pierreb-devkit/Vue202026年10月9日 更新

Use this whenever the user asks to "open a PR", "ship this", "create the pull request", "make a PR", or once a Vue feature/fix is verified and ready to push. Full lifecycle: branch → commit (commitizen) → issue → draft PR → CI → ready → autonomous monitor loop (fix comments, resolve threads, iterate until CI green + zero unresolved threads). `--perfect` adds a CodeRabbit convergence loop on top. Never works on `main`/`master`, never uses `--no-verify`.

日本語の概要は準備中です。原文の説明を表示しています。

pierreb-devkit/Vue202026年10月9日 更新

Use this whenever a downstream Vue project needs to absorb upstream Devkit Vue changes — triggers on "update stack", "sync with devkit", "merge upstream", "pull stack updates", "resolve stack conflicts". Two-phase: ISO merge (stack modules stay byte-identical to upstream) then project alignment (apply MIGRATIONS.md, diff project modules vs `tasks` reference, /verify). Stack-code failures get an issue on `pierreb-devkit/Vue`.

日本語の概要は準備中です。原文の説明を表示しています。

pierreb-devkit/Vue202026年10月9日 更新

verify

無料

Run this after every code change in this Vue project, before committing, before opening a PR, or whenever the user says "verify", "check", "lint", "run tests", "build", "audit". Diff audit (router guards, store boundaries, UX, /ui consistency, error handling) → lint → tests + coverage gate → build. Coverage drops → add tests, never lower thresholds. Triggers on "is this ready to commit?", "any issues?", "tests passing?".

日本語の概要は準備中です。原文の説明を表示しています。

pierreb-devkit/Vue202026年10月9日 更新

pierreb-devkit のスキルをすべて見る

このスキルの問題を報告する