An open API service indexing awesome lists of open source software.

https://github.com/itonys/7onic

Just take a look. Don't say I didn't warn you. 7onic Design System โ€” open-source React design system where design and code never drift. Single source of truth from Figma tokens, designer-verified components on Radix UI. Independently built.
https://github.com/itonys/7onic

ai-optimized component-library dark-mode design-system design-tokens figma-sync figma-to-code independently-built open-source react single-source-of-truth tailwindcss tailwindcss-v3 tailwindcss-v4 token-pipeline typescript ui-components ui-library

Last synced: about 2 months ago
JSON representation

Just take a look. Don't say I didn't warn you. 7onic Design System โ€” open-source React design system where design and code never drift. Single source of truth from Figma tokens, designer-verified components on Radix UI. Independently built.

Awesome Lists containing this project

README

          

7onic Design System


Just take a look. Don't say I didn't warn you.


npm react
npm tokens
npm cli
MIT License
Documentation


Open-source React design system where design and code never drift.

Single source of truth from Figma tokens, designer-verified components on Radix UI.

---

## Why 7onic?

| | What | Why it matters |
|:---:|---|---|
| **๐ŸŽฏ** | **Zero design-code drift** | Design and code from a single vision. No handoff, no drift โ€” every component is pixel-verified against Figma. |
| **๐Ÿ“ฆ** | **One JSON, every format** | `figma-tokens.json` auto-generates CSS, Tailwind v3, Tailwind v4, JS/TS, and JSON โ€” all in sync. |
| **๐Ÿงฉ** | **shadcn freedom + MUI convenience** | shadcn's customization with none of its missing features. MUI's built-in power with none of its styling constraints. Both, by design. |
| **โšก** | **npm or CLI โ€” your choice** | `npm install` for packages, `npx 7onic add` for local copy. Same components, two workflows. |
| **๐Ÿ”€** | **Only Tailwind v3+v4 dual support** | The ecosystem's only design system supporting both Tailwind versions. Same tokens, same DX. |
| **๐Ÿช„** | **Zero-config framework compat** | Works with Next.js 15 + Vite defaults out of the box. No Provider wrapper, no `globals.css` replacement, no body class setup. Install โ†’ import โ†’ done. |
| **๐ŸŽฎ** | **Built-in playground** | Interactive props editor + live code generation in docs. No Storybook setup needed. |
| **๐ŸŒ—** | **Dark mode, zero config** | Light/dark themes built into tokens. System preference detection out of the box. |
| **๐Ÿ”“** | **Framework-agnostic tokens** | Tokens ship as pure CSS variables. Use with Vue, Angular, Svelte, or vanilla CSS โ€” no React required. |
| **๐Ÿค–** | **AI-ready** | Ships with `llms.txt` โ€” AI builds with design tokens, not hardcoded values. Zero config for Claude, Cursor, Copilot. |
| **๐ŸŒ** | **CJK-first typography** | Type scale tuned for Japanese kanji, Korean hangul, and Latin โ€” not an afterthought. |
| **๐Ÿ”** | **Supply chain verified** | Cryptographically signed releases (npm provenance), automated vulnerability scanning in CI, reproducible builds. You can verify every package came from this exact GitHub commit โ€” not a hijacked account. |
| **๐Ÿ”ฅ** | **Relentlessly updated** | Actively maintained with continuous research, refinement, and new features. Not abandoned โ€” ever. |

---

## Get Started

**Option A โ€” npm package**

```bash
npm install @7onic-ui/react @7onic-ui/tokens
```

**Option B โ€” CLI (local file copy)**

```bash
npx 7onic init
npx 7onic add button card input
```

Tailwind v4

```css
@import "tailwindcss";
@import '@7onic-ui/tokens/tailwind/v4.css';
@source "../node_modules/@7onic-ui/react/dist";
```

Tailwind v3

```css
@import '@7onic-ui/tokens/css/all.css';
@tailwind base;
@tailwind components;
@tailwind utilities;
```

```js
// tailwind.config.js
module.exports = {
presets: [require('@7onic-ui/tokens/tailwind/v3-preset')],
content: ['./node_modules/@7onic-ui/react/dist/**/*.{js,mjs}'],
}
```

CSS only (no Tailwind, no React)

```css
@import '@7onic-ui/tokens/css/all.css';

.button {
background: var(--color-primary);
padding: var(--spacing-4);
border-radius: var(--radius-md);
}
```

Use components:

```tsx
import { Button, Card, CardHeader, CardTitle, CardContent } from '@7onic-ui/react'
import { Chart, type ChartConfig } from '@7onic-ui/react/chart' // charts: separate entry

Get Started


Settings

...

```

---

## Components

| Category | Components | Count |
|----------|-----------|:-----:|
| **Forms** | Button, IconButton, ButtonGroup, Input, Textarea, Select, Dropdown, Checkbox, RadioGroup, Switch, Toggle, ToggleGroup, Segmented, Slider | 14 |
| **Data Display** | Avatar, Badge, Card, Table | 4 |
| **Charts** | BarChart, LineChart, AreaChart, PieChart, MetricCard | 5 |
| **Layout** | Tabs, Accordion, Divider | 3 |
| **Overlay** | Modal, Drawer, Tooltip, Popover | 4 |
| **Feedback** | Alert, Toast, Progress, Spinner, Skeleton | 5 |
| **Navigation** | Breadcrumb, NavigationMenu, Pagination | 3 |
| **AI** | TypingIndicator, QuickReply, ChatInput, ChatMessage | 4 |

**42 components** โ€” all with CVA variants, controlled + uncontrolled modes, `forwardRef`, and **Named exports** (`CardHeader`, `ModalContent`, `TabsList`, ...). If you prefer dot-notation (``), drop in the 5-line [Compound Recipe wrapper](docs/decisions/NAMED-PRIMARY-MIGRATION.md) โ€” opt-in, Client Components only.

---

## Design Tokens โ€” 14 Categories

| Token | Values | Description |
|-------|--------|-------------|
| **Colors** | Semantic system | Brand, status, text, background, border |
| **Typography** | 11 sizes (11โ€“72px) | CJK-optimized: `md`(14px) for UI, `base`(16px) for body |
| **Spacing** | 19 values (0โ€“96px) | 2px steps (0โ€“14px), 4px steps (16px+) |
| **Radius** | 9 values | `none` through `full` |
| **Shadows** | 6 primitives | `xs` through `xl` + `primary-glow` |
| **Duration** | 8 values | `instant` through `spin` |
| **Easing** | 5 functions | `linear` through `ease-in-out` |
| **Z-Index** | 13 layers | `0` through `toast`(3000) |
| **Icon Sizes** | 6 sizes (12โ€“32px) | `2xs` through `xl` |
| **Opacity** | 21 values | 5% increments |
| **Animation** | 54 keyframes | Component enter/exit, spin, skeleton, progress |
| **Breakpoints** | 5 widths | `sm`(640) through `2xl`(1536) |
| **Border Width** | 5 values | `0`, `1`, `2`, `4`, `8` |
| **Scale** | 4 values | `50`, `75`, `95`, `pressed`(0.98) |

---

## Token Pipeline

```
figma-tokens.json โ† SSOT (the only file you edit)
โ”‚
โ”‚ npx sync-tokens
โ”‚
โ”œโ”€โ”€ css/variables.css โ† CSS variables (all primitives)
โ”œโ”€โ”€ css/themes/light.css โ† Light theme semantics
โ”œโ”€โ”€ css/themes/dark.css โ† Dark theme semantics
โ”œโ”€โ”€ css/reset.css โ† Framework template baseline
โ”œโ”€โ”€ css/all.css โ† All-in-one bundle
โ”œโ”€โ”€ tailwind/v3-preset.js โ† Tailwind v3 preset
โ”œโ”€โ”€ tailwind/v4-theme.css โ† Tailwind v4 theme
โ”œโ”€โ”€ tailwind/v4.css โ† Tailwind v4 bundle
โ”œโ”€โ”€ js/index.js + .mjs โ† JavaScript / ESM
โ”œโ”€โ”€ types/index.d.ts โ† TypeScript definitions
โ””โ”€โ”€ json/tokens.json โ† Flat JSON
```

Breaking changes are auto-detected with diff visualization. Backward-compatible aliases generated automatically.

Package structure

### `@7onic-ui/react`

| File | Format | Description |
|------|--------|-------------|
| `dist/index.js` | CJS | CommonJS for Node.js / require() |
| `dist/index.mjs` | ESM | ES Modules for bundlers / import |
| `dist/index.d.ts` | Types | TypeScript definitions |
| `dist/chart.js` | CJS | Chart components (separate entry โ€” `@7onic-ui/react/chart`) |
| `dist/chart.mjs` | ESM | Chart components ESM |
| `dist/chart.d.ts` | Types | Chart TypeScript definitions |
| `llms.txt` | Text | AI integration rules (llms.txt standard) |

### `@7onic-ui/tokens`

| File | Description |
|------|-------------|
| `css/all.css` | All-in-one bundle (variables + light + dark + reset) |
| `css/variables.css` | Primitive tokens only |
| `css/themes/light.css` | Light theme semantics |
| `css/themes/dark.css` | Dark theme semantics |
| `css/reset.css` | Framework template baseline (bundled into `all.css` + `v4.css`) |
| `tailwind/v4.css` | All-in-one Tailwind v4 |
| `tailwind/v3-preset.js` | Tailwind v3 preset |
| `tailwind/v4-theme.css` | Tailwind v4 theme definitions |
| `js/index.js` | CJS export |
| `js/index.mjs` | ESM export |
| `types/index.d.ts` | TypeScript definitions |
| `json/tokens.json` | Flat JSON for custom tooling |
| `cli/sync.js` | `npx sync-tokens` CLI |
| `figma-tokens.json` | SSOT โ€” the only file you edit |
| `llms.txt` | AI integration rules for tokens |

### `7onic` (CLI)

| File | Description |
|------|-------------|
| `dist/index.js` | Self-contained CLI bundle |
| `llms.txt` | AI integration โ€” CLI command reference |

---

## AI Integration

7onic ships with `llms.txt` โ€” an open standard that lets AI tools build with design tokens instead of hardcoded values.

```
# In CLAUDE.md, .cursor/rules, or copilot-instructions.md
Rules: node_modules/@7onic-ui/react/llms.txt
```

Once loaded, AI automatically uses `bg-primary` instead of `bg-blue-500`, spacing tokens instead of arbitrary pixels, and skips unnecessary `dark:` prefixes.

Works with Claude Code, Cursor, GitHub Copilot, ChatGPT, and any AI tool that reads text files.

**Setup guides**: [Tokens](https://7onic.design/design-tokens/ai) ยท [Components](https://7onic.design/components/ai)

---

## Tech Stack

| Category | Technology |
|---|---|
| **Styling** | Tailwind CSS v3 / v4 + CSS Variables |
| **Primitives** | Radix UI |
| **Charts** | Recharts |
| **Variants** | class-variance-authority (CVA) |

---

## Roadmap

- [x] Design token system (14 categories, 54 animations)
- [x] Token sync script with breaking change detection
- [x] Tailwind v3/v4 dual preset + RGB channel opacity support
- [x] Light/dark theme with OS auto-detection
- [x] 42 components with Named exports (Compound Recipe available for opt-in dot-notation)
- [x] Documentation site with interactive playgrounds
- [x] Chart components included (Bar, Line, Area, Pie, MetricCard)
- [x] Automated doc verification (8 checks, AST-powered, blocks publish on error)
- [x] Automated component verification (7 checks โ€” hardcoded colors, tokens, dark mode, dead code)
- [x] Multilingual documentation โ€” English, Japanese, Korean (powered by next-intl)
- [x] npm package distribution โ€” `@7onic-ui/react` + `@7onic-ui/tokens` v0.2.7
- [x] AI integration โ€” `llms.txt` standard, setup guides for Claude Code / Cursor / Copilot / ChatGPT
- [x] `npx 7onic add` CLI (shadcn-style) โ€” source copy with dependency resolution
- [x] `npx 7onic init` Vite support โ€” `tsconfig.app.json` detection, `@import "tailwindcss"` + `@source` auto-inject, `@/` path alias auto-configure
- [x] Technical blog โ€” [blog.7onic.design](https://blog.7onic.design) ("Design to Code" series)
- [x] Enterprise-grade supply chain security โ€” cryptographically signed releases (npm provenance), automated vulnerability scanning on every build, reproducible installs. Protection against npm package hijacking attacks (like the 2026 axios incident)
- [ ] Theme Customizer โ€” live palette preview + CSS variable export
- [ ] Figma UI Kit
- [ ] Dashboard / landing templates

---

## Contributing

Contributions are welcome! Please read [CONTRIBUTING.md](CONTRIBUTING.md) before submitting a PR.

> 7onic is a solo project โ€” your star or kind word genuinely helps. โญ

---

## License

MIT

---


One JSON, every format โ€” from Figma to production.

Independently built.

Last updated: 2026-04-16 (v0.2.7)