{"_id":"@c.olander/proto-ui","_rev":"3-494985dfdeeb73aed0ea7b0ab5e3602d","name":"@c.olander/proto-ui","dist-tags":{"latest":"0.2.3"},"versions":{"0.2.1":{"name":"@c.olander/proto-ui","version":"0.2.1","_id":"@c.olander/proto-ui@0.2.1","maintainers":[{"name":"c.olander","email":"christian.olander@corviva.se"}],"homepage":"https://github.com/christianolander/proto-ui#readme","bugs":{"url":"https://github.com/christianolander/proto-ui/issues"},"dist":{"shasum":"df1afd0cf7ecdf6714ee266092774ba7a1067002","tarball":"https://registry.npmjs.org/@c.olander/proto-ui/-/proto-ui-0.2.1.tgz","fileCount":7,"integrity":"sha512-3LttYN2rX/PzXKOEpauDzArnMd7TIvEa6yW4SCwoxuCjpbT75gd6XKuxRr40mqc29IzgK2iYiZr5fS7YzjD21g==","signatures":[{"sig":"MEQCIGti41LkyeOy+xk8VzBguW5Tz/hyWA7VH/bahVnTgWJFAiBWGrGiK8ijWhxStuIzOnMDMMaXEvFWwdKZwv4V5qSQXw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":116697},"main":"dist/index.cjs","type":"module","types":"dist/index.d.ts","module":"dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./theme.css":"./theme.css"},"gitHead":"9f4471523faaa0b7a2666b0c5b74204f24fbe893","private":false,"scripts":{"dev":"tsup src/index.tsx --dts --format cjs,esm --watch","build":"tsup src/index.tsx --dts --format cjs,esm","release:minor":"npm version minor && npm publish","release:patch":"npm version patch && npm publish"},"_npmUser":{"name":"c.olander","email":"christian.olander@corviva.se"},"repository":{"url":"git+https://github.com/christianolander/proto-ui.git","type":"git"},"_npmVersion":"11.5.2","description":"Shared React component library for Workly prototypes. Simple, maintainable, and easy to use.","directories":{},"_nodeVersion":"23.6.0","dependencies":{"clsx":"^2.1.1","recharts":"^3.2.1","lucide-react":"^0.545.0","tailwind-merge":"^2.5.4","@radix-ui/react-slot":"^1.2.3","@radix-ui/react-switch":"^1.2.6","class-variance-authority":"^0.7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.5","typescript":"^5.6.3","@types/react":"^18.3.12","@types/react-dom":"^18.3.1"},"peerDependencies":{"react":"^18","react-dom":"^18"},"_npmOperationalInternal":{"tmp":"tmp/proto-ui_0.2.1_1761031299573_0.7159165575315294","host":"s3://npm-registry-packages-npm-production"}},"0.2.2":{"name":"@c.olander/proto-ui","version":"0.2.2","_id":"@c.olander/proto-ui@0.2.2","maintainers":[{"name":"c.olander","email":"christian.olander@corviva.se"}],"homepage":"https://github.com/christianolander/proto-ui#readme","bugs":{"url":"https://github.com/christianolander/proto-ui/issues"},"dist":{"shasum":"b51c8b65dffef59437b899eef2db4c16abb0bfb4","tarball":"https://registry.npmjs.org/@c.olander/proto-ui/-/proto-ui-0.2.2.tgz","fileCount":7,"integrity":"sha512-K5xbig+QBKRILtQLFXoQ/Rj8JSuM+aBCU2SxgSAyf8Axh+6MLzwON4TuXurMAhY9Nsiiijnv+1yrfNdyL7euBQ==","signatures":[{"sig":"MEYCIQDw9UickENrDIYIXb8PzAkBoIaEgzWLXppU/r6Ns5APxwIhAPhuMeHN2B0A4qxYcg00F5cDYesLtJQM89Yl8YOfJ2vS","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":116697},"main":"dist/index.cjs","type":"module","types":"dist/index.d.ts","module":"dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./theme.css":"./theme.css"},"gitHead":"adc61532e20dbeee6bb028a5c910d1feb1fe11d9","private":false,"scripts":{"dev":"tsup src/index.tsx --dts --format cjs,esm --watch","build":"tsup src/index.tsx --dts --format cjs,esm","release:minor":"npm version minor && npm publish","release:patch":"npm version patch && npm publish"},"_npmUser":{"name":"c.olander","email":"christian.olander@corviva.se"},"repository":{"url":"git+https://github.com/christianolander/proto-ui.git","type":"git"},"_npmVersion":"11.5.2","description":"Shared React component library for Workly prototypes. Simple, maintainable, and easy to use.","directories":{},"_nodeVersion":"23.6.0","dependencies":{"clsx":"^2.1.1","recharts":"^3.2.1","lucide-react":"^0.545.0","tailwind-merge":"^2.5.4","@radix-ui/react-slot":"^1.2.3","@radix-ui/react-switch":"^1.2.6","class-variance-authority":"^0.7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.5","typescript":"^5.6.3","@types/react":"^18.3.12","@types/react-dom":"^18.3.1"},"peerDependencies":{"react":"^18","react-dom":"^18"},"_npmOperationalInternal":{"tmp":"tmp/proto-ui_0.2.2_1761136226577_0.7675421792184141","host":"s3://npm-registry-packages-npm-production"}},"0.2.3":{"name":"@c.olander/proto-ui","version":"0.2.3","private":false,"type":"module","main":"dist/index.cjs","module":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./theme.css":"./theme.css"},"repository":{"type":"git","url":"git+https://github.com/christianolander/proto-ui.git"},"publishConfig":{"access":"public"},"scripts":{"build":"tsup src/index.tsx --dts --format cjs,esm","dev":"tsup src/index.tsx --dts --format cjs,esm --watch","release:patch":"npm version patch && npm publish","release:minor":"npm version minor && npm publish"},"peerDependencies":{"react":"^18","react-dom":"^18"},"devDependencies":{"@types/react":"^18.3.12","@types/react-dom":"^18.3.1","tsup":"^8.3.5","typescript":"^5.6.3"},"dependencies":{"@radix-ui/react-slot":"^1.2.3","@radix-ui/react-switch":"^1.2.6","class-variance-authority":"^0.7.0","clsx":"^2.1.1","lucide-react":"^0.545.0","recharts":"^3.2.1","tailwind-merge":"^2.5.4"},"_id":"@c.olander/proto-ui@0.2.3","gitHead":"a2e55b630343da0ac49d6151bd02b35bcb6b6b9f","description":"Shared React component library for Workly prototypes. Simple, maintainable, and easy to use.","bugs":{"url":"https://github.com/christianolander/proto-ui/issues"},"homepage":"https://github.com/christianolander/proto-ui#readme","_nodeVersion":"23.6.0","_npmVersion":"11.5.2","dist":{"integrity":"sha512-ilr33obXBcx26anFdcCmqjEX41QLO5Xb1Sxd7zdljZMVk/53FI7QFklkD7Rj17vnHfIKqZoABUSoXMnNF2G8Xw==","shasum":"c89ac61080151410eb277f0378ffc029f27da67b","tarball":"https://registry.npmjs.org/@c.olander/proto-ui/-/proto-ui-0.2.3.tgz","fileCount":7,"unpackedSize":111950,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCICU6RzK/QeN3UaDmcRZSWjRi+i2/5Es6yZtZg37OKvJcAiBYgwm+3pnLwgR+A59/UvINziJlOK/geGHt67kl9QzRSw=="}]},"_npmUser":{"name":"c.olander","email":"christian.olander@corviva.se"},"directories":{},"maintainers":[{"name":"c.olander","email":"christian.olander@corviva.se"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/proto-ui_0.2.3_1764156870039_0.932324561807452"},"_hasShrinkwrap":false}},"time":{"created":"2025-10-21T07:21:39.408Z","modified":"2025-11-26T11:34:30.415Z","0.2.1":"2025-10-21T07:21:39.757Z","0.2.2":"2025-10-22T12:30:26.768Z","0.2.3":"2025-11-26T11:34:30.253Z"},"bugs":{"url":"https://github.com/christianolander/proto-ui/issues"},"homepage":"https://github.com/christianolander/proto-ui#readme","repository":{"type":"git","url":"git+https://github.com/christianolander/proto-ui.git"},"description":"Shared React component library for Workly prototypes. Simple, maintainable, and easy to use.","maintainers":[{"name":"c.olander","email":"christian.olander@corviva.se"}],"readme":"# @workly/proto-ui\n\nShared React component library for Workly prototypes. Simple, maintainable, and easy to use.\n\n## Features\n\n- 🎨 **Simple theme.css** - Sensible color defaults for light and dark mode\n- 🌓 **Dark Mode Ready** - Automatic dark mode support via `.dark` class\n- 📦 **Tree-shakeable** - Import only what you need\n- 🎯 **Type-safe** - Full TypeScript support\n- ⚡ **No build complexity** - Just CSS and React components\n\n## Installation\n\n```bash\nnpm install @workly/proto-ui\n```\n\n## Quick Start\n\n### 1. Import CSS Theme\n\n```css\n/* src/index.css */\n@import \"tailwindcss\";\n@import \"@workly/proto-ui/theme.css\";\n\n/* Tell Tailwind where to find classes */\n@source \"../src\";\n@source \"../node_modules/@workly/proto-ui/dist\";\n```\n\n### 2. Import Components\n\n```tsx\nimport { Button, Sidebar, Table, MainNavigation } from \"@workly/proto-ui\"\n\nexport default function App() {\n  return (\n    <div>\n      <MainNavigation items={menuItems} user={currentUser} />\n      <Button>Click me</Button>\n      <Table />\n    </div>\n  )\n}\n```\n\n### 3. Override Variables (Optional)\n\n```css\n/* Customize colors in your project */\n:root {\n  --color-primary: purple;\n  --color-background: #f0f0f0;\n}\n```\n\n## Dark Mode\n\nDark mode works automatically:\n\n```tsx\n// Toggle dark mode by adding/removing .dark class\ndocument.documentElement.classList.toggle('dark')\n```\n\nOr it respects system preference automatically if no class is set.\n\n## Available Components\n\n- `Button` - Primary, secondary, destructive variants with size options\n- `MainNavigation` - Flexible sidebar navigation with user menu and role-based filtering\n- `WorklyLogo` - Brand logo component with optional wordmark\n- `Sidebar` - Navigation sidebar components (Sidebar, SidebarHeader, SidebarContent, SidebarItem, SidebarFooter)\n- `Table` - Data table components (Table, TableHeader, TableBody, TableRow, TableCell, etc.)\n- `Skeleton` - Loading placeholder\n- `Switch` - Toggle switch\n- `cn` - Utility function for merging class names\n\n## Theme Variables\n\nThe theme.css provides these CSS variables:\n\n**Colors:**\n- `--color-background`, `--color-foreground`\n- `--color-primary`, `--color-primary-foreground`\n- `--color-secondary`, `--color-muted`, `--color-accent`\n- `--color-destructive`, `--color-border`, `--color-input`, `--color-ring`\n- Brand colors: `--color-aquamarine`, `--color-cornflower-blue`, `--color-royal-purple`, etc.\n\n**Spacing:**\n- `--spacing-1` through `--spacing-24` (4px to 96px scale)\n\n**Typography:**\n- `--font-size-xs` through `--font-size-5xl`\n- `--font-weight-normal` through `--font-weight-bold`\n- `--line-height-tight`, `--line-height-normal`, `--line-height-relaxed`\n\n**Other:**\n- `--radius-sm` through `--radius-full` (border radius)\n- `--shadow-sm` through `--shadow-xl` (box shadows)\n- `--transition-fast`, `--transition-base`, `--transition-slow`\n- `--z-dropdown` through `--z-tooltip` (z-index scale)\n\n## Example Usage\n\n```css\n.my-card {\n  background: var(--color-card);\n  border: 1px solid var(--color-border);\n  border-radius: var(--radius-lg);\n  padding: var(--spacing-6);\n  box-shadow: var(--shadow-md);\n}\n```\n\n## Development\n\n### Build\n\n```bash\nnpm run build\n```\n\n### Watch Mode\n\n```bash\nnpm run dev\n```\n\n### Publishing\n\n```bash\n# Patch version (0.2.0 → 0.2.1)\nnpm run release:patch\n\n# Minor version (0.2.0 → 0.3.0)\nnpm run release:minor\n```\n\n## License\n\nPrivate - Workly internal use only\n","readmeFilename":"README.md"}