swe-developing-frontend-ui

UI development skill covering design token usage, shadcn/ui + Radix composition patterns, accessibility requirements, anti-patterns catalog, and brand context for OrganicLever and OSE Platform. Auto-loads when working on TSX components, CSS, or UI design tasks.

9 stars

Best use case

swe-developing-frontend-ui is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

UI development skill covering design token usage, shadcn/ui + Radix composition patterns, accessibility requirements, anti-patterns catalog, and brand context for OrganicLever and OSE Platform. Auto-loads when working on TSX components, CSS, or UI design tasks.

Teams using swe-developing-frontend-ui should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/swe-developing-frontend-ui/SKILL.md --create-dirs "https://raw.githubusercontent.com/wahidyankf/open-sharia-enterprise/main/.claude/skills/swe-developing-frontend-ui/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/swe-developing-frontend-ui/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How swe-developing-frontend-ui Compares

Feature / Agentswe-developing-frontend-uiStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

UI development skill covering design token usage, shadcn/ui + Radix composition patterns, accessibility requirements, anti-patterns catalog, and brand context for OrganicLever and OSE Platform. Auto-loads when working on TSX components, CSS, or UI design tasks.

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# Frontend UI Development Skill

This skill provides repo-specific guidance for building UI components in the open-sharia-enterprise monorepo. It covers design tokens, component patterns, accessibility, anti-patterns, and per-app brand context.

## When This Skill Triggers

- Editing `.tsx` component files in `apps/*/src/components/`
- Editing `globals.css` or Tailwind configuration
- Creating or modifying shared UI components in `libs/web-ui/`
- Working on design tokens in `libs/web-ui-token/`

## Reference Modules

Consult these reference docs for detailed guidance on specific topics:

- [Design Tokens Reference](./reference/design-tokens.md) — Token names, formats, mapping to Tailwind utilities
- [Component Patterns Reference](./reference/component-patterns.md) — CVA templates, Radix composition, complete component examples
- [Anti-Patterns Catalog](./reference/anti-patterns.md) — 13 repo-specific anti-patterns with before/after examples
- [Accessibility Reference](./reference/accessibility.md) — Per-component ARIA checklists, keyboard navigation
- [Brand Context Reference](./reference/brand-context.md) — Per-app audience, personality, palette guidance

## Quick Reference: Top Rules

### Do

1. **Use semantic tokens** — `bg-primary`, `text-muted-foreground`, `border-border` (not hardcoded colors)
2. **Use `React.ComponentProps<"element">`** — not `React.forwardRef`
3. **Use `radix-ui` unified package** — not `@radix-ui/react-slot` individual packages; use `Slot.Root` from unified
4. **Add `data-slot="component-name"`** on every component root element
5. **Use `focus-visible:`** — not `focus:` (keyboard-only focus rings)
6. **Use `cn()` from shared lib** — `clsx` + `tailwind-merge` for class composition
7. **Define variants with CVA** — export from `.variants.ts` for reuse
8. **Every visual token needs a `.dark` counterpart** — verify contrast in both modes
9. **Mobile-first responsive** — start with base styles, add `md:`, `lg:` prefixes
10. **Minimum hit targets** — 24px desktop, 44px mobile

### Do Not

1. **No hardcoded hex/rgb/hsl** in className or style props — use design tokens
2. **No `!important`** — use `@layer` specificity or Tailwind modifiers
3. **No `@apply` outside `@layer base`** — defeats utility-first purpose
4. **No inline `style={{}}` in production** — use Tailwind utilities
5. **No `focus:` without `visible`** — always `focus-visible:` for keyboard users
6. **No color-only status indicators** — include text labels and/or shapes
7. **No `transition-all`** — specify explicit properties: `transition-colors`, `transition-opacity`
8. **No bounce/elastic easing** — use `ease-out` or custom `cubic-bezier`
9. **No nested Card inside Card** — use spacing/dividers for visual hierarchy
10. **No font via CSS `font-family`** — use `next/font` for optimization

## Test-Driven Development for UI

TDD applies to UI component and page work. Write the failing check before writing the component:

- **Vitest unit test** (`component-name.test.tsx`): failing assertion on render, variant output,
  or `toHaveNoViolations()` (vitest-axe) — write this first.
- **Visual snapshot** (Playwright visual diff): failing screenshot comparison — write before
  finalizing visual styles.
- **Accessibility check** (axe): failing `toHaveNoViolations()` in unit test or Playwright — write
  before adding interactive states or ARIA markup.
- **E2E Playwright spec**: failing user-flow assertion — write before implementing flows that cross
  component boundaries.

Mini-TDD passes work well for UI: one Red→Green→Refactor cycle per variant, state, or interaction.

**Canonical reference**:
[Test-Driven Development Convention](../../../repo-governance/development/workflow/test-driven-development.md)
— covers all test levels (unit, snapshot/visual, a11y, E2E, manual verification) and the full
Red→Green→Refactor cycle.

## Governance References

- [Design Tokens Convention](../../../repo-governance/development/frontend/design-tokens.md)
- [Component Patterns Convention](../../../repo-governance/development/frontend/component-patterns.md)
- [Accessibility Convention](../../../repo-governance/development/frontend/accessibility.md)
- [Styling Convention](../../../repo-governance/development/frontend/styling.md)
- [Color Accessibility Convention](../../../repo-governance/conventions/formatting/color-accessibility.md) — 5-color palette for docs only; UI uses any WCAG AA compliant colors
- [Accessibility First Principle](../../../repo-governance/principles/content/accessibility-first.md)

Related Skills

swe-developing-e2e-test-with-playwright

9
from wahidyankf/open-sharia-enterprise

Playwright E2E testing standards from authoritative docs/explanation/software-engineering/automation-testing/tools/playwright/ documentation

swe-developing-applications-common

9
from wahidyankf/open-sharia-enterprise

Common software development workflow patterns shared across all language developer agents

apps-ose-web-developing-content

9
from wahidyankf/open-sharia-enterprise

Guide for creating content on ose-web Next.js 16 content platform. Covers English-only landing page structure, update posts with date-prefixed filenames, markdown frontmatter (title, date, tags, summary, showtoc), simple flat organization, and ose-web specific conventions. Essential for ose-web content creation tasks

apps-organiclever-web-developing-content

9
from wahidyankf/open-sharia-enterprise

Comprehensive guide for developing organiclever-web, the OrganicLever life journal at www.organiclever.com. Covers DDD bounded-context architecture, PGlite local-first storage, Effect TS, XState, Next.js 16 App Router, and Vercel deployment. Essential for development tasks on organiclever-web.

apps-ayokoding-web-developing-content

9
from wahidyankf/open-sharia-enterprise

Comprehensive guide for creating content on ayokoding-web, a Next.js 16 fullstack content platform (ayokoding-web). Covers bilingual content strategy (default English), tRPC API, content workflow, and ayokoding-web specific patterns. Essential for content creation tasks on ayokoding-web

agent-developing-agents

9
from wahidyankf/open-sharia-enterprise

AI agent development standards including frontmatter structure, naming conventions, tool access patterns, model selection, and reference documentation structure

nx-workspace

9
from wahidyankf/open-sharia-enterprise

Explore and understand Nx workspaces. USE WHEN answering questions about the workspace, projects, or tasks. ALSO USE WHEN an nx command fails or you need to check available targets/configuration before running a task. EXAMPLES: 'What projects are in this workspace?', 'How is project X configured?', 'What depends on library Y?', 'What targets can I run?', 'Cannot find configuration for task', 'debug nx task failure'.

nx-run-tasks

9
from wahidyankf/open-sharia-enterprise

Helps with running tasks in an Nx workspace. USE WHEN the user wants to execute build, test, lint, serve, or run any other tasks defined in the workspace.

nx-plugins

9
from wahidyankf/open-sharia-enterprise

Find and add Nx plugins. USE WHEN user wants to discover available plugins, install a new plugin, or add support for a specific framework or technology to the workspace.

nx-import

9
from wahidyankf/open-sharia-enterprise

Import, merge, or combine repositories into an Nx workspace using nx import. USE WHEN the user asks to adopt Nx across repos, move projects into a monorepo, or bring code/history from another repository.

nx-generate

9
from wahidyankf/open-sharia-enterprise

Generate code using nx generators. INVOKE IMMEDIATELY when user mentions scaffolding, setup, structure, creating apps/libs, or setting up project structure. Trigger words - scaffold, setup, create a ... app, create a ... lib, project structure, generate, add a new project. ALWAYS use this BEFORE calling nx_docs or exploring - this skill handles discovery internally.

monitor-ci

9
from wahidyankf/open-sharia-enterprise

Monitor Nx Cloud CI pipeline and handle self-healing fixes. USE WHEN user says "monitor ci", "watch ci", "ci monitor", "watch ci for this branch", "track ci", "check ci status", wants to track CI status, or needs help with self-healing CI fixes. Prefer this skill over native CI provider tools (gh, glab, etc.) for CI monitoring — it integrates with Nx Cloud self-healing which those tools cannot access.