Skip to main content

Introduction

Learn how to build, customize, and own your React design system with NachUI.

Build UIs. Keep Control.

NachUI is a design system toolkit, not a packaged component library. We give you the raw source code so you have complete control over your design primitives.
Conventional UI libraries work until you need custom behavior. Then you're stuck writing hacky wrappers, overriding styles, and fighting node_modules. NachUI solves this by shipping the actual source code directly to your repository. You own the components, the design tokens, and the patterns. Customize them however you want, without limits.
  • Full Ownership: The component code is copied directly into your repository, giving you total freedom to refactor, debug, and customize it without waiting for upstream package updates.
  • Open Code: With no compiled files or black-box dependencies, you can audit, trace, and modify every line of CSS and React to match your security and performance standards.
  • Unified Design: Standardized design tokens ensure every component you copy shares the same typography, colors, and layout structure, keeping your UI consistent across pages.
  • Compound Components: Compose complex interfaces using modular dot-notation (like <Card.Header>), keeping your JSX readable and avoiding monolithic components cluttered with endless boolean flags.
  • CLI Distribution: Use our command-line utility to pull clean component source files into your project instantly, bypassing npm package management entirely.
  • AI-Native: Structured patterns and clean code allow AI coding assistants to easily read, extend, and refactor your components to match new requirements without breaking style integrity.

Code Ownership over npm Dependencies

Adding a NachUI component means the source code becomes yours. You work directly with clean, readable code that fits your exact requirements.
  • Inspect, audit, and modify every single hook and style.
  • Change APIs or internal state structures without restrictions.
  • No vendor lock-in and no waiting for upstream PR merges.
Work directly with the code you need.

Compound Components

Avoid monolithic components with endless boolean flags. Compose UI using semantic, interconnected elements.
1// ❌ Monolithic (rigid, hard to override)
2<Card title="Hello" description="World" content="This is content" />
3
4// ✅ Compound (flexible, readable)
5<Card>
6 <Card.Header>
7 <Card.Title>Hello</Card.Title>
8 <Card.Description>World</Card.Description>
9 </Card.Header>
10 <Card.Content>
11 <p>This is content</p>
12 </Card.Content>
13</Card>
Benefits:
  • Zero Intrusions: Inject wrappers or custom elements without renderProps.
  • Clear Hierarchy: JSX matches exact DOM structure.
  • Focused Typings: Sub-components have specific props. Clean TypeScript autocomplete.
  • Implicit State: Parent shares context with children automatically.

AI-Native by Design

Because every component lives directly in your repository as plain React and CSS code, AI agents can read, extend, and refactor your design system just like any other file in your project. There are no black-box node_modules hiding the implementation. The clean, standardized patterns ensure your AI coding assistant can generate new views and variations that perfectly match your design system's rules without losing coherence.

Everything you need to know

Found something to improve?

Notice a bug, typo, or missing detail on this page? Help us make the documentation better by opening a GitHub issue.

Create an Issue