@maxsteinwender/sort-ui 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md ADDED
@@ -0,0 +1,136 @@
1
+ # Sort UI Design System
2
+
3
+ A coded design system based on the [Sort UI Kit](https://sortui.company) — Figma components translated into production-ready Next.js components, documented in Storybook.
4
+
5
+ ## Overview
6
+
7
+ | | |
8
+ |---|---|
9
+ | **Components** | 106 UI components across 26 categories |
10
+ | **Stories** | 93 interactive Storybook stories + 10 documentation pages |
11
+ | **Themes** | 4 themes (2 color schemes x light/dark) |
12
+ | **Source** | [Sort UI Kit 1.3](https://sortui.company) (Figma) |
13
+ | **Storybook** | [Live Documentation](http://localhost:6006) |
14
+
15
+ ## Tech Stack
16
+
17
+ - **Framework:** Next.js 16 (App Router), TypeScript
18
+ - **Styling:** Tailwind CSS v3 + CSS custom properties (design tokens)
19
+ - **Components:** shadcn/ui (restyled with Sort UI tokens)
20
+ - **Icons:** Remix Icons
21
+ - **Documentation:** Storybook 10
22
+ - **Charts:** Recharts
23
+ - **Rich Text:** Lexical Editor
24
+
25
+ ## Quick Start
26
+
27
+ ```bash
28
+ # Clone & install
29
+ git clone <repo-url> sort-ui-design-system
30
+ cd sort-ui-design-system
31
+ npm install
32
+
33
+ # Start Storybook (main entry point)
34
+ npm run storybook
35
+ ```
36
+
37
+ Open [http://localhost:6006](http://localhost:6006) to browse all components.
38
+
39
+ ## Theme System
40
+
41
+ Sort UI supports 4 themes built on two color schemes:
42
+
43
+ | Theme | Base | Accent | Mode |
44
+ |-------|------|--------|------|
45
+ | Theme 1 Light | Zinc | Blue | `light` |
46
+ | Theme 1 Dark | Zinc | Blue | `dark` |
47
+ | Theme 2 Light | Neutral | Orange | `theme-2` |
48
+ | Theme 2 Dark | Neutral | Orange | `theme-2-dark` |
49
+
50
+ Themes are applied via CSS classes on the root element. Switch between them in Storybook using the theme toolbar.
51
+
52
+ ## Component Categories
53
+
54
+ | Category | Components |
55
+ |----------|-----------|
56
+ | **Actions** | Button, ButtonGroup, LinkButton, ControlButton, FilterButton, SocialButton |
57
+ | **Avatar** | Avatar, AvatarGroup, AvatarButton, AvatarUpload |
58
+ | **Badge** | Badge, StatusBadge, Chip, Label |
59
+ | **Charts** | LineChart, BarChart, DonutChart, PieChart |
60
+ | **Checkbox** | Checkbox, CheckboxWithText, CheckboxList, CheckboxCard |
61
+ | **Date Picker** | DatePicker (Calendar, Range, Popover compositions) |
62
+ | **Feedback** | Tooltip, InlineTips, EmptyState, Divider |
63
+ | **File Upload** | FileUploadArea, FileUploadCard, FileUpload (composition) |
64
+ | **Forms** | InputField, InputButton, InputCaption, TextAreaField, SelectInput |
65
+ | **Grid Table** | GridTableHeaderItem, GridTableSlotItem, GridTableRow |
66
+ | **Navigation** | Breadcrumb, Paginator, DropdownMenu, Sidebar, SidebarCard |
67
+ | **Progress** | ProgressBar, RadialProgressBar |
68
+ | **Radio** | RadioButton, RadioButtonWithText, RadioButtonList, RadioButtonCard |
69
+ | **Selection** | ToggleGroup, SelectMenu, SelectMenuItem |
70
+ | **Slider** | Slider, SliderRange, DataRangeSlider, SliderInput, SliderRangeInput |
71
+ | **Stepper** | HorizontalStepper, VerticalStepper, StepperIcon, StepperNumber |
72
+ | **Switch** | Switch, SwitchWithText, SwitchList |
73
+ | **Table** | TableHeaderItem, TableItem, TableRowSort, TablePagination, TableSkeletonRow |
74
+ | **Tabs** | TabItem, TabList, UnderlineTabItem, UnderlineTabs |
75
+ | **Code** | CodeBlock, MarkdownEditor |
76
+ | **Layout** | Userbar, SidebarMenuItem, AccordionItem |
77
+
78
+ ## Project Structure
79
+
80
+ ```
81
+ sort-ui-design-system/
82
+ ├── src/
83
+ │ ├── components/
84
+ │ │ └── ui/ # 106 restyled shadcn/ui components
85
+ │ ├── stories/ # 93 Storybook stories + 10 MDX docs
86
+ │ ├── tokens/ # Figma token exports (JSON)
87
+ │ └── app/ # Next.js app (redirects to Storybook)
88
+ ├── .storybook/ # Storybook configuration
89
+ ├── features/ # Component specs (PROJ-1 to PROJ-85)
90
+ ├── docs/
91
+ │ ├── PRD.md # Product vision
92
+ │ └── COMPONENT-PATTERNS.md # Token & code patterns reference
93
+ └── public/
94
+ ├── fonts/ # Redaction font files
95
+ ├── icons/ # Brand & file type icons
96
+ └── userpics/ # Demo avatar images
97
+ ```
98
+
99
+ ## Scripts
100
+
101
+ ```bash
102
+ npm run storybook # Start Storybook (port 6006)
103
+ npm run build-storybook # Build static Storybook
104
+ npm run dev # Next.js dev server
105
+ npm run build # Next.js production build
106
+ npm run lint # ESLint
107
+ ```
108
+
109
+ ## Design Tokens
110
+
111
+ Tokens are exported from Figma and converted to CSS custom properties. The token layer maps Sort UI's design decisions to Tailwind utility classes:
112
+
113
+ - **Colors:** Semantic tokens (background, foreground, primary, muted, etc.)
114
+ - **Shadows:** shadow-default, shadow-card, shadow-focus, shadow-popover
115
+ - **Typography:** Geist (sans) + Geist Mono + Redaction (display)
116
+ - **Spacing & Radius:** Consistent scale via Tailwind config
117
+
118
+ See `docs/COMPONENT-PATTERNS.md` for the complete token mapping reference.
119
+
120
+ ## Sort UI Ecosystem
121
+
122
+ This coded design system is one part of the Sort UI ecosystem:
123
+
124
+ - **Figma UI Kit** — [Sort UI 1.3](https://sortui.company) — Design source of truth
125
+ - **Coded Design System** — This repo — Production-ready components
126
+ - **Framer Kit** — [Sort UI Framer](https://sortui.company/framer) — No-code website builder components
127
+
128
+ ## Credits
129
+
130
+ - **Sort UI Kit** by [sortui.company](https://sortui.company) — The Figma design system this project is based on
131
+ - **shadcn/ui** — Component primitives
132
+ - **Remix Icons** — Icon library
133
+
134
+ ## License
135
+
136
+ Private project. Sort UI Kit license applies to design tokens and visual design.