gridsmith-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.
@@ -0,0 +1,50 @@
1
+ /* ═══════════════════════════════════════════════════════════════════════
2
+ Gridsmith Tokens — Precision Minimal
3
+ Generated from preset: precision-minimal
4
+ Default mode: light
5
+ Shadow mode: directional
6
+
7
+ Load this file AFTER gridsmith-ui/roots.css to apply your theme.
8
+ ═══════════════════════════════════════════════════════════════════════ */
9
+
10
+ :root {
11
+ --ds-hue-primary: 264;
12
+ --ds-hue-neutral: 260;
13
+ --ds-hue-destructive: 27;
14
+ --ds-hue-success: 153;
15
+ --ds-hue-warning: 60;
16
+ --ds-sat-primary: 0.7;
17
+ --ds-sat-neutral: 0.5;
18
+ --ds-radius-base: 10px;
19
+ --ds-border-base: 1px;
20
+ --ds-space-unit: 4px;
21
+ --ds-font-sans: "Inter", ui-sans-serif, system-ui, sans-serif;
22
+ --ds-font-mono: "JetBrains Mono", ui-monospace, monospace;
23
+ --ds-font-display: "Inter", sans-serif;
24
+ --ds-text-base: 16px;
25
+ --ds-weight-base: 500;
26
+ --ds-shadow-offset: 0px;
27
+ --ds-shadow-blur: 6px;
28
+ --ds-shadow-alpha: 0.1;
29
+ --ds-transition-speed: 200ms;
30
+ --ds-transition-ease: ease-in-out;
31
+ --ds-sidebar-width: 224px;
32
+ --ds-gradient: none;
33
+ --ds-glass-blur: 0px;
34
+ --ds-glass-tint: 1;
35
+ --ds-glass-saturate: 100%;
36
+ --ds-glass-border-alpha: 0;
37
+ --ds-accent-primary: var(--ds-primary-900);
38
+ --ds-accent-primary-hover: var(--ds-primary-950);
39
+ --ds-accent-primary-active: var(--ds-primary-950);
40
+ --ds-border-focus: var(--ds-primary-900);
41
+ --ds-input-focus-ring: var(--ds-primary-900);
42
+ --ds-shadow-focus: 0 0 0 2px var(--ds-primary-900);
43
+ }
44
+
45
+ /* Preset overrides — light mode */
46
+ :root {
47
+ --ds-sidebar-bg: var(--ds-neutral-50);
48
+ --ds-sidebar-item-hover: var(--ds-neutral-100);
49
+ --ds-sidebar-item-active: var(--ds-neutral-200);
50
+ }
@@ -0,0 +1,9 @@
1
+ import { ClassValue } from 'clsx';
2
+
3
+ declare function cn(...inputs: ClassValue[]): string;
4
+ declare const GLASS_BACKDROP = "[backdrop-filter:var(--ds-glass-filter)] [-webkit-backdrop-filter:var(--ds-glass-filter)]";
5
+ declare const GLASS_SURFACE = "[backdrop-filter:var(--ds-glass-filter)] [-webkit-backdrop-filter:var(--ds-glass-filter)] shadow-[var(--ds-shadow-card),var(--ds-glass-inset)]";
6
+ declare const GLASS_OVERLAY = "[backdrop-filter:var(--ds-glass-filter)] [-webkit-backdrop-filter:var(--ds-glass-filter)] shadow-[var(--ds-shadow-modal),var(--ds-glass-inset)]";
7
+ declare const GLASS_DROPDOWN = "[backdrop-filter:var(--ds-glass-filter)] [-webkit-backdrop-filter:var(--ds-glass-filter)] shadow-[var(--ds-shadow-dropdown),var(--ds-glass-inset)]";
8
+
9
+ export { GLASS_BACKDROP, GLASS_DROPDOWN, GLASS_OVERLAY, GLASS_SURFACE, cn };
package/dist/utils.js ADDED
@@ -0,0 +1,4 @@
1
+ export { GLASS_BACKDROP, GLASS_DROPDOWN, GLASS_OVERLAY, GLASS_SURFACE, cn } from './chunk-5XIPPVH7.js';
2
+ import './chunk-5WRI5ZAA.js';
3
+ //# sourceMappingURL=utils.js.map
4
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"utils.js"}
@@ -0,0 +1,46 @@
1
+ /* Gridsmith — Tailwind v4 theme bindings
2
+ Maps --ds-* design tokens to Tailwind utilities.
3
+ Import AFTER roots.css and your tokens file. */
4
+
5
+ @theme {
6
+ --font-sans: var(--ds-font-sans);
7
+ --font-mono: var(--ds-font-mono);
8
+ --font-display: var(--ds-font-display);
9
+ --default-transition-duration: var(--ds-transition-speed);
10
+ --default-transition-timing-function: var(--ds-transition-ease);
11
+
12
+ --spacing-ds-0_5: var(--ds-space-0\.5);
13
+ --spacing-ds-1: var(--ds-space-1);
14
+ --spacing-ds-1_5: var(--ds-space-1\.5);
15
+ --spacing-ds-2: var(--ds-space-2);
16
+ --spacing-ds-2_5: var(--ds-space-2\.5);
17
+ --spacing-ds-3: var(--ds-space-3);
18
+ --spacing-ds-4: var(--ds-space-4);
19
+ --spacing-ds-5: var(--ds-space-5);
20
+ --spacing-ds-6: var(--ds-space-6);
21
+ --spacing-ds-8: var(--ds-space-8);
22
+ --spacing-ds-10: var(--ds-space-10);
23
+ --spacing-ds-12: var(--ds-space-12);
24
+
25
+ --font-size-xs: var(--ds-font-size-xs);
26
+ --font-size-sm: var(--ds-font-size-sm);
27
+ --font-size-base: var(--ds-font-size-body);
28
+ --font-size-lg: var(--ds-font-size-lg);
29
+ --font-size-xl: var(--ds-font-size-xl);
30
+ --font-size-2xl: var(--ds-font-size-2xl);
31
+ --font-size-3xl: var(--ds-font-size-3xl);
32
+
33
+ --font-weight-normal: var(--ds-weight-base);
34
+ --font-weight-medium: var(--ds-weight-emphasis);
35
+ --font-weight-semibold: var(--ds-weight-strong);
36
+ --font-weight-bold: var(--ds-weight-heavy);
37
+
38
+ --opacity-disabled: var(--ds-opacity-disabled);
39
+
40
+ --color-accent-subtle: var(--ds-accent-subtle);
41
+ --color-sidebar-accent-subtle: var(--ds-sidebar-accent-subtle);
42
+ }
43
+
44
+ @utility text-2xs {
45
+ font-size: var(--ds-font-size-2xs);
46
+ }
@@ -0,0 +1,50 @@
1
+ /* ═══════════════════════════════════════════════════════════════════════
2
+ Gridsmith Tokens — Precision Minimal
3
+ Generated from preset: precision-minimal
4
+ Default mode: light
5
+ Shadow mode: directional
6
+
7
+ Load this file AFTER gridsmith-ui/roots.css to apply your theme.
8
+ ═══════════════════════════════════════════════════════════════════════ */
9
+
10
+ :root {
11
+ --ds-hue-primary: 264;
12
+ --ds-hue-neutral: 260;
13
+ --ds-hue-destructive: 27;
14
+ --ds-hue-success: 153;
15
+ --ds-hue-warning: 60;
16
+ --ds-sat-primary: 0.7;
17
+ --ds-sat-neutral: 0.5;
18
+ --ds-radius-base: 10px;
19
+ --ds-border-base: 1px;
20
+ --ds-space-unit: 4px;
21
+ --ds-font-sans: "Inter", ui-sans-serif, system-ui, sans-serif;
22
+ --ds-font-mono: "JetBrains Mono", ui-monospace, monospace;
23
+ --ds-font-display: "Inter", sans-serif;
24
+ --ds-text-base: 16px;
25
+ --ds-weight-base: 500;
26
+ --ds-shadow-offset: 0px;
27
+ --ds-shadow-blur: 6px;
28
+ --ds-shadow-alpha: 0.1;
29
+ --ds-transition-speed: 200ms;
30
+ --ds-transition-ease: ease-in-out;
31
+ --ds-sidebar-width: 224px;
32
+ --ds-gradient: none;
33
+ --ds-glass-blur: 0px;
34
+ --ds-glass-tint: 1;
35
+ --ds-glass-saturate: 100%;
36
+ --ds-glass-border-alpha: 0;
37
+ --ds-accent-primary: var(--ds-primary-900);
38
+ --ds-accent-primary-hover: var(--ds-primary-950);
39
+ --ds-accent-primary-active: var(--ds-primary-950);
40
+ --ds-border-focus: var(--ds-primary-900);
41
+ --ds-input-focus-ring: var(--ds-primary-900);
42
+ --ds-shadow-focus: 0 0 0 2px var(--ds-primary-900);
43
+ }
44
+
45
+ /* Preset overrides — light mode */
46
+ :root {
47
+ --ds-sidebar-bg: var(--ds-neutral-50);
48
+ --ds-sidebar-item-hover: var(--ds-neutral-100);
49
+ --ds-sidebar-item-active: var(--ds-neutral-200);
50
+ }
package/package.json ADDED
@@ -0,0 +1,81 @@
1
+ {
2
+ "name": "gridsmith-ui",
3
+ "version": "0.1.0",
4
+ "description": "Gridsmith component library — 78 React components with design tokens and a CSS custom property theming engine",
5
+ "type": "module",
6
+ "sideEffects": [
7
+ "*.css"
8
+ ],
9
+ "exports": {
10
+ ".": {
11
+ "types": "./dist/index.d.ts",
12
+ "import": "./dist/index.js"
13
+ },
14
+ "./utils": {
15
+ "types": "./dist/utils.d.ts",
16
+ "import": "./dist/utils.js"
17
+ },
18
+ "./icons": {
19
+ "types": "./dist/icons.d.ts",
20
+ "import": "./dist/icons.js"
21
+ },
22
+ "./roots.css": "./dist/roots.css",
23
+ "./tokens.css": "./dist/tokens.css",
24
+ "./tailwind.css": "./dist/tailwind.css"
25
+ },
26
+ "main": "./dist/index.js",
27
+ "types": "./dist/index.d.ts",
28
+ "files": [
29
+ "dist",
30
+ "dist-static",
31
+ "README.md"
32
+ ],
33
+ "scripts": {
34
+ "build": "tsup && cp ../../showcase/src/styles/roots.css dist/roots.css && cp dist-static/tailwind.css dist/tailwind.css && cp dist-static/tokens.css dist/tokens.css",
35
+ "typecheck": "tsc --noEmit"
36
+ },
37
+ "dependencies": {
38
+ "clsx": "^2.1.1",
39
+ "tailwind-merge": "^3.5.0"
40
+ },
41
+ "peerDependencies": {
42
+ "react": "^18.0.0 || ^19.0.0",
43
+ "react-dom": "^18.0.0 || ^19.0.0",
44
+ "lucide-react": "^1.0.0",
45
+ "@phosphor-icons/react": "^2.0.0",
46
+ "@heroicons/react": "^2.0.0",
47
+ "@tabler/icons-react": "^3.0.0",
48
+ "react-icons": "^5.0.0"
49
+ },
50
+ "peerDependenciesMeta": {
51
+ "lucide-react": { "optional": true },
52
+ "@phosphor-icons/react": { "optional": true },
53
+ "@heroicons/react": { "optional": true },
54
+ "@tabler/icons-react": { "optional": true },
55
+ "react-icons": { "optional": true }
56
+ },
57
+ "devDependencies": {
58
+ "@types/react": "^19.2.14",
59
+ "@types/react-dom": "^19.2.3",
60
+ "tsup": "^8.0.0",
61
+ "typescript": "~6.0.2"
62
+ },
63
+ "keywords": [
64
+ "design-system",
65
+ "react",
66
+ "components",
67
+ "ui",
68
+ "tailwind",
69
+ "tokens",
70
+ "css-variables",
71
+ "theming"
72
+ ],
73
+ "publishConfig": {
74
+ "access": "public"
75
+ },
76
+ "license": "MIT",
77
+ "repository": {
78
+ "type": "git",
79
+ "url": "https://github.com/gridsmith/ui"
80
+ }
81
+ }