본문으로 건너뛰기
cccskills
무료GitHub에 공개

ui-styling

Create beautiful, accessible user interfaces with shadcn/ui components (built on Radix UI + Tailwind), Tailwind CSS utility-first styling, and canvas-based visual designs. Use when building user interfaces, implementing design systems, creating responsive layouts, adding accessible components (dialogs, dropdowns, forms, tables), customizing themes and colors, implementing dark mode, generating visual designs and posters, or establishing consistent styling patterns across applications.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

설치 방법 보기

포함된 파일(97)

  • SKILL.md10.4 KB
  • canvas-fonts/ArsenalSC-OFL.txt4.3 KB
  • canvas-fonts/ArsenalSC-Regular.ttf162.0 KB
  • canvas-fonts/BigShoulders-Bold.ttf92.3 KB
  • canvas-fonts/BigShoulders-OFL.txt4.3 KB
  • canvas-fonts/BigShoulders-Regular.ttf92.2 KB
  • canvas-fonts/Boldonse-OFL.txt4.3 KB
  • canvas-fonts/Boldonse-Regular.ttf75.4 KB
  • canvas-fonts/BricolageGrotesque-Bold.ttf88.8 KB
  • canvas-fonts/BricolageGrotesque-OFL.txt4.3 KB
  • canvas-fonts/BricolageGrotesque-Regular.ttf88.8 KB
  • canvas-fonts/CrimsonPro-Bold.ttf104.8 KB
  • canvas-fonts/CrimsonPro-Italic.ttf106.3 KB
  • canvas-fonts/CrimsonPro-OFL.txt4.3 KB
  • canvas-fonts/CrimsonPro-Regular.ttf104.2 KB
  • canvas-fonts/DMMono-OFL.txt4.3 KB
  • canvas-fonts/DMMono-Regular.ttf47.7 KB
  • canvas-fonts/EricaOne-OFL.txt4.3 KB
  • canvas-fonts/EricaOne-Regular.ttf24.3 KB
  • canvas-fonts/GeistMono-Bold.ttf76.5 KB
  • canvas-fonts/GeistMono-OFL.txt4.3 KB
  • canvas-fonts/GeistMono-Regular.ttf76.4 KB
  • canvas-fonts/Gloock-OFL.txt4.3 KB
  • canvas-fonts/Gloock-Regular.ttf92.9 KB
  • canvas-fonts/IBMPlexMono-Bold.ttf132.8 KB
  • canvas-fonts/IBMPlexMono-OFL.txt4.3 KB
  • canvas-fonts/IBMPlexMono-Regular.ttf130.7 KB
  • canvas-fonts/IBMPlexSerif-Bold.ttf157.2 KB
  • canvas-fonts/IBMPlexSerif-BoldItalic.ttf165.9 KB
  • canvas-fonts/IBMPlexSerif-Italic.ttf166.0 KB
  • canvas-fonts/IBMPlexSerif-Regular.ttf156.6 KB
  • canvas-fonts/InstrumentSans-Bold.ttf66.5 KB
  • canvas-fonts/InstrumentSans-BoldItalic.ttf68.4 KB
  • canvas-fonts/InstrumentSans-Italic.ttf68.3 KB
  • canvas-fonts/InstrumentSans-OFL.txt4.3 KB
  • canvas-fonts/InstrumentSans-Regular.ttf66.4 KB
  • canvas-fonts/InstrumentSerif-Italic.ttf69.2 KB
  • canvas-fonts/InstrumentSerif-Regular.ttf67.7 KB
  • canvas-fonts/Italiana-OFL.txt4.3 KB
  • canvas-fonts/Italiana-Regular.ttf26.5 KB
  • canvas-fonts/JetBrainsMono-Bold.ttf112.1 KB
  • canvas-fonts/JetBrainsMono-OFL.txt4.3 KB
  • canvas-fonts/JetBrainsMono-Regular.ttf112.2 KB
  • canvas-fonts/Jura-Light.ttf150.7 KB
  • canvas-fonts/Jura-Medium.ttf150.9 KB
  • canvas-fonts/Jura-OFL.txt4.3 KB
  • canvas-fonts/LibreBaskerville-OFL.txt4.3 KB
  • canvas-fonts/LibreBaskerville-Regular.ttf144.1 KB
  • canvas-fonts/Lora-Bold.ttf130.7 KB
  • canvas-fonts/Lora-BoldItalic.ttf137.0 KB
  • canvas-fonts/Lora-Italic.ttf136.1 KB
  • canvas-fonts/Lora-OFL.txt4.3 KB
  • canvas-fonts/Lora-Regular.ttf130.8 KB
  • canvas-fonts/NationalPark-Bold.ttf77.4 KB
  • canvas-fonts/NationalPark-OFL.txt4.3 KB
  • canvas-fonts/NationalPark-Regular.ttf74.6 KB
  • canvas-fonts/NothingYouCouldDo-OFL.txt4.3 KB
  • canvas-fonts/NothingYouCouldDo-Regular.ttf31.3 KB
  • canvas-fonts/Outfit-Bold.ttf54.1 KB
  • canvas-fonts/Outfit-OFL.txt4.3 KB
  • canvas-fonts/Outfit-Regular.ttf53.6 KB
  • canvas-fonts/PixelifySans-Medium.ttf49.9 KB
  • canvas-fonts/PixelifySans-OFL.txt4.3 KB
  • canvas-fonts/PoiretOne-OFL.txt4.3 KB
  • canvas-fonts/PoiretOne-Regular.ttf44.2 KB
  • canvas-fonts/RedHatMono-Bold.ttf33.6 KB
  • canvas-fonts/RedHatMono-OFL.txt4.3 KB
  • canvas-fonts/RedHatMono-Regular.ttf33.7 KB
  • canvas-fonts/Silkscreen-OFL.txt4.3 KB
  • canvas-fonts/Silkscreen-Regular.ttf31.2 KB
  • canvas-fonts/SmoochSans-Medium.ttf58.3 KB
  • canvas-fonts/SmoochSans-OFL.txt4.3 KB
  • canvas-fonts/Tektur-Medium.ttf74.5 KB
  • canvas-fonts/Tektur-OFL.txt4.3 KB
  • canvas-fonts/Tektur-Regular.ttf73.8 KB
  • canvas-fonts/WorkSans-Bold.ttf186.8 KB
  • canvas-fonts/WorkSans-BoldItalic.ttf171.7 KB
  • canvas-fonts/WorkSans-Italic.ttf170.2 KB
  • canvas-fonts/WorkSans-OFL.txt4.3 KB
  • canvas-fonts/WorkSans-Regular.ttf184.5 KB
  • canvas-fonts/YoungSerif-OFL.txt4.3 KB
  • canvas-fonts/YoungSerif-Regular.ttf102.7 KB
  • LICENSE.txt11.1 KB
  • references/canvas-design-system.md7.7 KB
  • references/shadcn-accessibility.md9.7 KB
  • references/shadcn-components.md10.9 KB
  • references/shadcn-theming.md8.5 KB
  • references/tailwind-customization.md9.9 KB
  • references/tailwind-responsive.md8.1 KB
  • references/tailwind-utilities.md9.7 KB
  • scripts/requirements.txt444 B
  • scripts/shadcn_add.py7.9 KB
  • scripts/tailwind_config_gen.py13.3 KB
  • scripts/tests/coverage-ui.json34.3 KB
  • scripts/tests/requirements.txt52 B
  • scripts/tests/test_shadcn_add.py9.6 KB
  • scripts/tests/test_tailwind_config_gen.py11.7 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

UI Styling Skill

Comprehensive skill for creating beautiful, accessible user interfaces combining shadcn/ui components, Tailwind CSS utility styling, and canvas-based visual design systems.

DraftForge Brand — Delegate to brand

For draftforge-specific theming (palette, button policy, brand wrappers, mandatory components, brand tokens), use the brand skill — entry point at .claude/skills/brand/SKILL.md. Canonical guide is docs/THEMING-GUIDE.md, AI references at docs/theming-guide/ai/references/. This skill (ui-styling) covers generic shadcn/Tailwind setup; brand enforces the project's specific brand contract (<PrimaryButton> over <button>, bg-base-* over bg-slate-*, <UserAvatar> over <img>, etc.). Whenever a styling decision lands in frontend/app/, run the brand review before declaring done.

Reference

When to Use This Skill

Use when:

  • Building UI with React-based frameworks (Next.js, Vite, Remix, Astro)
  • Implementing accessible components (dialogs, forms, tables, navigation)
  • Styling with utility-first CSS approach
  • Creating responsive, mobile-first layouts
  • Implementing dark mode and theme customization
  • Building design systems with consistent tokens
  • Generating visual designs, posters, or brand materials
  • Rapid prototyping with immediate visual feedback
  • Adding complex UI patterns (data tables, charts, command palettes)

Core Stack

Component Layer: shadcn/ui

  • Pre-built accessible components via Radix UI primitives
  • Copy-paste distribution model (components live in your codebase)
  • TypeScript-first with full type safety
  • Composable primitives for complex UIs
  • CLI-based installation and management

Styling Layer: Tailwind CSS

  • Utility-first CSS framework
  • Build-time processing with zero runtime overhead
  • Mobile-first responsive design
  • Consistent design tokens (colors, spacing, typography)
  • Automatic dead code elimination

Visual Design Layer: Canvas

  • Museum-quality visual compositions
  • Philosophy-driven design approach
  • Sophisticated visual communication
  • Minimal text, maximum visual impact
  • Systematic patterns and refined aesthetics

Quick Start

Component + Styling Setup

Install shadcn/ui with Tailwind:

npx shadcn@latest init

CLI prompts for framework, TypeScript, paths, and theme preferences. This configures both shadcn/ui and Tailwind CSS.

Add components:

npx shadcn@latest add button card dialog form

Use components with utility styling:

import { Button } from "@/components/ui/button"
import { Card, CardHeader, CardTitle, CardContent } from "@/components/ui/card"

export function Dashboard() {
  return (
    <div className="container mx-auto p-6 grid gap-6 md:grid-cols-2 lg:grid-cols-3">
      <Card className="hover:shadow-lg transition-shadow">
        <CardHeader>
          <CardTitle className="text-2xl font-bold">Analytics</CardTitle>
        </CardHeader>
        <CardContent className="space-y-4">
          <p className="text-muted-foreground">View your metrics</p>
          <Button variant="default" className="w-full">
            View Details
          </Button>
        </CardContent>
      </Card>
    </div>
  )
}

Alternative: Tailwind-Only Setup

Vite projects:

npm install -D tailwindcss @tailwindcss/vite
// vite.config.ts
import tailwindcss from '@tailwindcss/vite'
export default { plugins: [tailwindcss()] }
/* src/index.css */
@import "tailwindcss";

Component Library Guide

Comprehensive component catalog with usage patterns, installation, and composition examples.

See: references/shadcn-components.md

Covers:

  • Form & input components (Button, Input, Select, Checkbox, Date Picker, Form validation)
  • Layout & navigation (Card, Tabs, Accordion, Navigation Menu)
  • Overlays & dialogs (Dialog, Drawer, Popover, Toast, Command)
  • Feedback & status (Alert, Progress, Skeleton)
  • Display components (Table, Data Table, Avatar, Badge)

Theme & Customization

Theme configuration, CSS variables, dark mode implementation, and component customization.

See: references/shadcn-theming.md

Covers:

  • Dark mode setup with next-themes
  • CSS variable system
  • Color customization and palettes
  • Component variant customization
  • Theme toggle implementation

Accessibility Patterns

ARIA patterns, keyboard navigation, screen reader support, and accessible component usage.

See: references/shadcn-accessibility.md

Covers:

  • Radix UI accessibility features
  • Keyboard navigation patterns
  • Focus management
  • Screen reader announcements
  • Form validation accessibility

Tailwind Utilities

Core utility classes for layout, spacing, typography, colors, borders, and shadows.

See: references/tailwind-utilities.md

Covers:

  • Layout utilities (Flexbox, Grid, positioning)
  • Spacing system (padding, margin, gap)
  • Typography (font sizes, weights, alignment, line height)
  • Colors and backgrounds
  • Borders and shadows
  • Arbitrary values for custom styling

Responsive Design

Mobile-first breakpoints, responsive utilities, and adaptive layouts.

See: references/tailwind-responsive.md

Covers:

  • Mobile-first approach
  • Breakpoint system (sm, md, lg, xl, 2xl)
  • Responsive utility patterns
  • Container queries
  • Max-width queries
  • Custom breakpoints

Tailwind Customization

Config file structure, custom utilities, plugins, and theme extensions.

See: references/tailwind-customization.md

Covers:

  • @theme directive for custom tokens
  • Custom colors and fonts
  • Spacing and breakpoint extensions
  • Custom utility creation
  • Custom variants
  • Layer organization (@layer base, components, utilities)
  • Apply directive for component extraction

Visual Design System

Canvas-based design philosophy, visual communication principles, and sophisticated compositions.

See: references/canvas-design-system.md

Covers:

  • Design philosophy approach
  • Visual communication over text
  • Systematic patterns and composition
  • Color, form, and spatial design
  • Minimal text integration
  • Museum-quality execution
  • Multi-page design systems

Utility Scripts

Python automation for component installation and configuration generation.

shadcn_add.py

Add shadcn/ui components with dependency handling:

python scripts/shadcn_add.py button card dialog

tailwind_config_gen.py

Generate tailwind.config.js with custom theme:

python scripts/tailwind_config_gen.py --colors brand:blue --fonts display:Inter

Best Practices

  1. Component Composition: Build complex UIs from simple, composable primitives
  2. Utility-First Styling: Use Tailwind classes directly; extract components only for true repetition
  3. Mobile-First Responsive: Start with mobile styles, layer responsive variants
  4. Accessibility-First: Leverage Radix UI primitives, add focus states, use semantic HTML
  5. Design Tokens: Use consistent spacing scale, color palettes, typography system
  6. Dark Mode Consistency: Apply dark variants to all themed elements
  7. Performance: Leverage automatic CSS purging, avoid dynamic class names
  8. TypeScript: Use full type safety for better DX
  9. Visual Hierarchy: Let composition guide attention, use spacing and color intentionally
  10. Expert Craftsmanship: Every detail matters - treat UI as a craft

Reference Navigation

Component Library

  • references/shadcn-components.md - Complete component catalog
  • references/shadcn-theming.md - Theming and customization
  • references/shadcn-accessibility.md - Accessibility patterns

Styling System

  • references/tailwind-utilities.md - Core utility classes
  • references/tailwind-responsive.md - Responsive design
  • references/tailwind-customization.md - Configuration and extensions

Visual Design

  • references/canvas-design-system.md - Design philosophy and canvas workflows

Automation

  • scripts/shadcn_add.py - Component installation
  • scripts/tailwind_config_gen.py - Config generation

Common Patterns

Form with validation:

import { useForm } from "react-hook-form"
import { zodResolver } from "@hookform/resolvers/zod"
import * as z from "zod"
import { Form, FormField, FormItem, FormLabel, FormControl, FormMessage } from "@/components/ui/form"
import { Input } from "@/components/ui/input"
import { Button } from "@/components/ui/button"

const schema = z.object({
  email: z.string().email(),
  password: z.string().min(8)
})

export function LoginForm() {
  const form = useForm({
    resolver: zodResolver(schema),
    defaultValues: { email: "", password: "" }
  })

  return (
    <Form {...form}>
      <form onSubmit={form.handleSubmit(console.log)} className="space-y-6">
        <FormField control={form.control} name="email" render={({ field }) => (
          <FormItem>
            <FormLabel>Email</FormLabel>
            <FormControl>
              <Input type="email" {...field} />
            </FormControl>
            <FormMessage />
          </FormItem>
        )} />
        <Button type="submit" className="w-full">Sign In</Button>
      </form>
    </Form>
  )
}

Responsive layout with dark mode:

<div className="min-h-screen bg-white dark:bg-gray-900">
  <div className="container mx-auto px-4 py-8">
    <div className="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6">
      <Card className="bg-white dark:bg-gray-800 border-gray-200 dark:border-gray-700">
        <CardContent className="p-6">
          <h3 className="text-xl font-semibold text-gray-900 dark:text-white">
            Content
          </h3>
        </CardContent>
      </Card>
    </div>
  </div>
</div>

Resources

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

aesthetic

무료

Create aesthetically beautiful interfaces following proven design principles. Use when building UI/UX, analyzing designs from inspiration sites, generating design images with ai-multimodal, implementing visual hierarchy and color theory, adding micro-interactions, or creating design documentation. Includes workflows for capturing and analyzing inspiration screenshots with chrome-devtools and ai-multimodal, iterative design image generation until aesthetic standards are met, and comprehensive design system guidance covering BEAUTIFUL (aesthetic principles), RIGHT (functionality/accessibility), SATISFYING (micro-interactions), and PEAK (storytelling) stages. Integrates with chrome-devtools, ai-multimodal, media-processing, ui-styling, and web-frameworks skills.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

kettleofketchup/DraftForge152026년 10월 19일 업데이트

Proper usage of Bash and file operation tools. Use this skill when executing shell commands, writing files, or when tempted to use echo/cat/heredoc to pipe content to files. Prevents permission circumvention patterns like piping multiline content through echo instead of using Write tool. Covers Bash tool, Write tool, Edit tool, and Read tool best practices.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

kettleofketchup/DraftForge152026년 10월 19일 업데이트

brand

무료

DraftForge brand/theming review. Flags raw <button> over PrimaryButton/SecondaryButton, hardcoded violet/slate over brand tokens, inline styles, missing UserAvatar/EntityBreadcrumb.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

kettleofketchup/DraftForge152026년 10월 19일 업데이트

Browser automation, debugging, and performance analysis using Puppeteer CLI scripts. Use for automating browsers, taking screenshots, analyzing performance, monitoring network traffic, web scraping, form automation, and JavaScript debugging.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

kettleofketchup/DraftForge152026년 10월 19일 업데이트

Django Redis caching with django-cacheops. This skill should be used when implementing caching, adding cache invalidation, optimizing API performance, modifying models that affect cached data, or debugging cache-related issues in the Django backend.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

kettleofketchup/DraftForge152026년 10월 19일 업데이트

Frontend development guidelines for React/TypeScript applications. Modern patterns including Suspense, lazy loading, useSuspenseQuery, file organization with features directory, MUI v7 styling, TanStack Router, performance optimization, and TypeScript best practices. Use when creating components, pages, features, fetching data, styling, routing, or working with frontend code.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

kettleofketchup/DraftForge152026년 10월 19일 업데이트

kettleofketchup의 스킬 모두 보기

이 스킬의 문제 신고