reusable-ui-components

Design portable native-first UI components for Expo Router projects.

571|24|Updated Dec 26, 2024
One-click install
npx skills add https://github.com/EvanBacon/crispy --skill reusable-ui-components
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: reusable-ui-components
Source: https://github.com/EvanBacon/crispy/tree/main/.claude/skills/reusable-ui-components
Command: npx skills add https://github.com/EvanBacon/crispy --skill reusable-ui-components

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Guidelines for creating reusable, portable UI components with native-first design, compound patterns, and accessibility.

Core Features & Use Cases

  • Portable & Copy-Paste Ready components that can be dropped into multiple projects
  • Native-First approach leveraging Expo Router primitives and platform-specific overrides
  • Compound Component patterns enabling flexible, composable UI while maintaining cohesive behavior
  • Accessibility built-in through keyboard support and safe area handling

Quick Start

Copy the reusable-ui-components scaffold into your project, then import from src/components/ui/ and compose in your screens. Run your app with your standard Expo CLI workflow and adapt tokens in src/global.css.

Frequently Asked Questions about reusable-ui-components

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I build reusable UI components for Expo Router that work across iOS, Android, and web?

Build reusable UI components for Expo Router by applying native-first design principles, compound patterns, and platform-aware overrides to ensure consistent behavior across iOS, Android, and web. Use design tokens and CSS variables to maintain cohesive theming across your portable primitives.

What are compound components and how do they help with native-first UI design?

Compound components are composable UI primitives that enable flexible screen composition while maintaining cohesive behavior. In native-first UI design, they allow developers to build portable components that share state internally without prop drilling across iOS, Android, and web platforms.

How do I add accessibility to portable UI components in an Expo Router project?

Add accessibility to portable UI components by implementing built-in keyboard support and safe area handling. These accessible defaults ensure your native-first Expo Router primitives remain usable across iOS, Android, and web without requiring additional manual configuration.

Can I use design tokens and CSS variables to theme Expo Router components?

Yes, you can use design tokens and CSS variables to theme Expo Router components. Specifying design tokens in your global CSS ensures consistent theming and behavior across portable UI components, allowing you to adapt tokens easily for different platform overrides.

What is the best way to share UI components across multiple Expo projects?

The best way to share UI components across multiple Expo projects is creating copy-paste ready portable primitives. Drop these native-first components directly into your src/components/ui/ directory and compose them in your screens using standard Expo CLI workflows.

Do I need external dependencies to create portable native-first UI components?

No external dependencies are required to create portable native-first UI components. The guidelines leverage Expo Router primitives, compound patterns, and platform-specific overrides natively, relying solely on design tokens and CSS variables for consistent cross-platform theming.