{"_id":"@danielthurau/atlas-labs-codex","_rev":"3-7d704139b1807965c393124c9614ef45","name":"@danielthurau/atlas-labs-codex","dist-tags":{"latest":"0.2.1"},"versions":{"0.1.0":{"name":"@danielthurau/atlas-labs-codex","version":"0.1.0","keywords":["design-system","react","components","css-variables","design-tokens"],"author":{"name":"thurau"},"license":"MIT","_id":"@danielthurau/atlas-labs-codex@0.1.0","maintainers":[{"name":"danielthurau","email":"daniel.n.thurau@gmail.com"}],"homepage":"https://github.com/thurau/atlas-labs-codex#readme","bugs":{"url":"https://github.com/thurau/atlas-labs-codex/issues"},"dist":{"shasum":"e97406b36a35ecd4b3a76f4af8408b76869844ce","tarball":"https://registry.npmjs.org/@danielthurau/atlas-labs-codex/-/atlas-labs-codex-0.1.0.tgz","fileCount":42,"integrity":"sha512-2Hxtyt0nEG17yCpYQvazlPNhSMYD21hup5DT1+41AiB0fOlugjFwl9Cag+MixTtLebN6sKaksOSHXpJOmpA1lA==","signatures":[{"sig":"MEUCIQDOsmu2FR0Z2xqTLMRBFieJUBNXP4dM48zhLGeBJatUrgIgChZ9l5kHYLEm/6MyPn1RXuz0+V0kgyxeH666RtHpQ4M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":219748},"main":"./components/react/index.ts","type":"module","types":"./components/react/index.ts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./components/react/index.ts","import":"./components/react/index.ts"},"./lib":{"types":"./lib/index.ts","import":"./lib/index.ts"},"./components/react":{"types":"./components/react/index.ts","import":"./components/react/index.ts"},"./themes/css/base.css":"./themes/css/base.css","./themes/css/theme-dark.css":"./themes/css/theme-dark.css","./themes/css/theme-light.css":"./themes/css/theme-light.css"},"gitHead":"913d987b59208c989fbe5ae69210e4a5df0bad27","scripts":{"dev":"next dev","lint":"next lint","build":"next build","start":"next start","storybook":"storybook dev -p 6006","prepublishOnly":"echo 'Ready to publish!'","build-storybook":"storybook build"},"_npmUser":{"name":"danielthurau","email":"daniel.n.thurau@gmail.com"},"repository":{"url":"git+https://github.com/thurau/atlas-labs-codex.git","type":"git"},"_npmVersion":"8.1.0","description":"Personal design system with React components, CSS tokens, and utilities","directories":{},"sideEffects":["**/*.css"],"_nodeVersion":"17.0.1","dependencies":{"clsx":"^2.1.1","@radix-ui/react-slot":"^1.1.0","@radix-ui/react-tabs":"^1.1.1","@radix-ui/react-toast":"^1.2.2","@radix-ui/react-dialog":"^1.1.2","@radix-ui/react-popover":"^1.1.2","class-variance-authority":"^0.7.0","@radix-ui/react-dropdown-menu":"^2.1.2"},"_hasShrinkwrap":false,"devDependencies":{"next":"14.2.15","vite":"^5.4.0","react":"^18.3.1","eslint":"^8.57.0","react-dom":"^18.3.1","storybook":"^8.4.7","typescript":"^5.7.2","@types/node":"^20.10.0","@types/react":"^18.3.0","@storybook/test":"^8.4.7","@storybook/react":"^8.4.7","@types/react-dom":"^18.3.0","@storybook/blocks":"^8.4.7","eslint-config-next":"14.2.15","@vitejs/plugin-react":"^4.3.0","@storybook/react-vite":"^8.4.7","@storybook/addon-links":"^8.4.7","@storybook/addon-themes":"^8.4.7","@storybook/addon-essentials":"^8.4.7","@storybook/addon-interactions":"^8.4.7"},"peerDependencies":{"react":"^18.0.0","react-dom":"^18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/atlas-labs-codex_0.1.0_1766807263387_0.9900111576299218","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@danielthurau/atlas-labs-codex","version":"0.2.0","keywords":["design-system","react","components","css-variables","design-tokens"],"author":{"name":"thurau"},"license":"MIT","_id":"@danielthurau/atlas-labs-codex@0.2.0","maintainers":[{"name":"danielthurau","email":"daniel.n.thurau@gmail.com"}],"homepage":"https://github.com/thurau/atlas-labs-codex#readme","bugs":{"url":"https://github.com/thurau/atlas-labs-codex/issues"},"dist":{"shasum":"b29888d23c4d223088a2aad43fe711c2ebf1f27e","tarball":"https://registry.npmjs.org/@danielthurau/atlas-labs-codex/-/atlas-labs-codex-0.2.0.tgz","fileCount":43,"integrity":"sha512-dpNdevmhyrQNbFycuznAOW05Y3+KHkq/vbj4LYBixaaAgInEHXy9lumoFbDgMD3a+1mz7UIhS/v7L+8K1d8qPQ==","signatures":[{"sig":"MEUCIGr9RKy+1SQuDXiwPaszVUU63XQ+tWDpLsGH2RSznE4QAiEAzi/zEXhv/LpqWRDJXBstNF2Hz6L1sYu4Q+a8vQRS0x8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":221321},"main":"./components/react/index.ts","type":"module","types":"./components/react/index.ts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./components/react/index.ts","import":"./components/react/index.ts"},"./lib":{"types":"./lib/index.ts","import":"./lib/index.ts"},"./components/react":{"types":"./components/react/index.ts","import":"./components/react/index.ts"},"./themes/css/base.css":"./themes/css/base.css","./themes/css/reset.css":"./themes/css/reset.css","./themes/css/theme-dark.css":"./themes/css/theme-dark.css","./themes/css/theme-light.css":"./themes/css/theme-light.css"},"gitHead":"5a3a0d33c9257a768a04978567cfebf53076fd1b","scripts":{"dev":"next dev","lint":"next lint","build":"next build","check":"npm run lint && npm run format:check","start":"next start","format":"prettier --write .","lint:fix":"next lint --fix","storybook":"storybook dev -p 6006","format:check":"prettier --check .","prepublishOnly":"npm run check && echo 'Ready to publish!'","build-storybook":"storybook build"},"_npmUser":{"name":"danielthurau","email":"daniel.n.thurau@gmail.com"},"repository":{"url":"git+https://github.com/thurau/atlas-labs-codex.git","type":"git"},"_npmVersion":"10.9.2","description":"Personal design system with React components, CSS tokens, and utilities","directories":{},"sideEffects":["**/*.css"],"_nodeVersion":"22.17.0","dependencies":{"clsx":"^2.1.1","@radix-ui/react-slot":"^1.1.0","@radix-ui/react-tabs":"^1.1.1","@radix-ui/react-toast":"^1.2.2","@radix-ui/react-dialog":"^1.1.2","@radix-ui/react-popover":"^1.1.2","class-variance-authority":"^0.7.0","@radix-ui/react-dropdown-menu":"^2.1.2"},"_hasShrinkwrap":false,"devDependencies":{"next":"14.2.15","vite":"^5.4.0","react":"^18.3.1","eslint":"^8.57.0","prettier":"^3.4.2","react-dom":"^18.3.1","storybook":"^8.4.7","typescript":"^5.7.2","@types/node":"^20.10.0","@types/react":"^18.3.0","@storybook/test":"^8.4.7","@storybook/react":"^8.4.7","@types/react-dom":"^18.3.0","@storybook/blocks":"^8.4.7","eslint-config-next":"14.2.15","@vitejs/plugin-react":"^4.3.0","@storybook/react-vite":"^8.4.7","@storybook/addon-links":"^8.4.7","@storybook/addon-themes":"^8.4.7","@storybook/addon-essentials":"^8.4.7","@storybook/addon-interactions":"^8.4.7"},"peerDependencies":{"react":"^18.0.0","react-dom":"^18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/atlas-labs-codex_0.2.0_1766808502408_0.5971341326816568","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"@danielthurau/atlas-labs-codex","version":"0.2.1","description":"Personal design system with React components, CSS tokens, and utilities","author":{"name":"thurau"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/thurau/atlas-labs-codex.git"},"keywords":["design-system","react","components","css-variables","design-tokens"],"type":"module","main":"./components/react/index.ts","types":"./components/react/index.ts","exports":{".":{"import":"./components/react/index.ts","types":"./components/react/index.ts"},"./components/react":{"import":"./components/react/index.ts","types":"./components/react/index.ts"},"./lib":{"import":"./lib/index.ts","types":"./lib/index.ts"},"./themes/css/reset.css":"./themes/css/reset.css","./themes/css/base.css":"./themes/css/base.css","./themes/css/theme-light.css":"./themes/css/theme-light.css","./themes/css/theme-dark.css":"./themes/css/theme-dark.css"},"sideEffects":["**/*.css"],"engines":{"node":">=18.0.0"},"scripts":{"dev":"next dev","build":"next build","start":"next start","lint":"next lint","lint:fix":"next lint --fix","format":"prettier --write .","format:check":"prettier --check .","check":"npm run lint && npm run format:check","storybook":"storybook dev -p 6006","build-storybook":"storybook build","prepublishOnly":"npm run check && echo 'Ready to publish!'"},"peerDependencies":{"react":"^18.0.0","react-dom":"^18.0.0"},"dependencies":{"@radix-ui/react-dialog":"^1.1.2","@radix-ui/react-dropdown-menu":"^2.1.2","@radix-ui/react-popover":"^1.1.2","@radix-ui/react-tabs":"^1.1.1","@radix-ui/react-toast":"^1.2.2","@radix-ui/react-slot":"^1.1.0","class-variance-authority":"^0.7.0","clsx":"^2.1.1"},"devDependencies":{"@storybook/addon-essentials":"^8.4.7","@storybook/addon-interactions":"^8.4.7","@storybook/addon-links":"^8.4.7","@storybook/addon-themes":"^8.4.7","@storybook/blocks":"^8.4.7","@storybook/react":"^8.4.7","@storybook/react-vite":"^8.4.7","@storybook/test":"^8.4.7","@types/node":"^20.10.0","@types/react":"^18.3.0","@types/react-dom":"^18.3.0","@vitejs/plugin-react":"^4.3.0","eslint":"^8.57.0","eslint-config-next":"14.2.15","next":"14.2.15","react":"^18.3.1","react-dom":"^18.3.1","storybook":"^8.4.7","prettier":"^3.4.2","typescript":"^5.7.2","vite":"^5.4.0"},"_id":"@danielthurau/atlas-labs-codex@0.2.1","gitHead":"5a3a0d33c9257a768a04978567cfebf53076fd1b","bugs":{"url":"https://github.com/thurau/atlas-labs-codex/issues"},"homepage":"https://github.com/thurau/atlas-labs-codex#readme","_nodeVersion":"22.17.0","_npmVersion":"10.9.2","dist":{"integrity":"sha512-PLIbHQkywNJiKwbaO20I6YLXz77rANyC/qZHikT8Uy959by0iuVTIEpYOH9ISRaDEYG2GheMZOHWD3JkEhiPpg==","shasum":"8fd765580d3c91cdcbb1a68aefc8a37b0f783928","tarball":"https://registry.npmjs.org/@danielthurau/atlas-labs-codex/-/atlas-labs-codex-0.2.1.tgz","fileCount":43,"unpackedSize":221321,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIB+YC+uTVCGlK9/5lmmzF5f8Ay6ev3TGn3dUrUkCTDjZAiBMN32vLMeaiMtNMlWIFTLJaFM1RimWCRFe43TVOqPN8A=="}]},"_npmUser":{"name":"danielthurau","email":"daniel.n.thurau@gmail.com"},"directories":{},"maintainers":[{"name":"danielthurau","email":"daniel.n.thurau@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/atlas-labs-codex_0.2.1_1766895564871_0.14809226020957955"},"_hasShrinkwrap":false}},"time":{"created":"2025-12-27T03:47:43.289Z","modified":"2025-12-28T04:19:25.228Z","0.1.0":"2025-12-27T03:47:43.550Z","0.2.0":"2025-12-27T04:08:22.566Z","0.2.1":"2025-12-28T04:19:25.010Z"},"bugs":{"url":"https://github.com/thurau/atlas-labs-codex/issues"},"author":{"name":"thurau"},"license":"MIT","homepage":"https://github.com/thurau/atlas-labs-codex#readme","keywords":["design-system","react","components","css-variables","design-tokens"],"repository":{"type":"git","url":"git+https://github.com/thurau/atlas-labs-codex.git"},"description":"Personal design system with React components, CSS tokens, and utilities","maintainers":[{"name":"danielthurau","email":"daniel.n.thurau@gmail.com"}],"readme":"# Personal Design Codex\n\nA private repository that acts as a single source of truth for all design-related decisions. This codex centralizes typography rules, color palettes, spacing systems, and UI components in one place.\n\n## Philosophy\n\nThis is a **personal craftsman repository**—a tidy workshop where design decisions are explicit, documented, and reusable by your future self.\n\n---\n\n## Using in Other Projects\n\nInstall from npm:\n\n```bash\nnpm install @atlas-labs/design-codex\n```\n\nThen import components, styles, and utilities:\n\n```tsx\n// Import components\nimport { Button, Card, Input, Badge, RefreshButton } from \"@atlas-labs/design-codex\";\n\n// Import utilities\nimport { formatRelativeTime, clsx } from \"@atlas-labs/design-codex/lib\";\n\n// Import CSS (in your layout.tsx or entry point)\nimport \"@atlas-labs/design-codex/themes/css/base.css\";\nimport \"@atlas-labs/design-codex/themes/css/theme-light.css\";\nimport \"@atlas-labs/design-codex/themes/css/theme-dark.css\";\n```\n\n### Font Setup\n\nCopy the Martian Mono font to your project's public folder, or load it in your CSS:\n\n```css\n@font-face {\n  font-family: \"Martian Mono\";\n  src: url(\"/fonts/MartianMono-VariableFont_wdth,wght.ttf\") format(\"truetype\");\n  font-weight: 100 800;\n  font-display: swap;\n}\n```\n\n---\n\n## Development\n\n### Prerequisites\n\n**Node.js 18+** is required. Check your version:\n\n```bash\nnode --version  # Should be v18.x or higher\n```\n\nIf you need to upgrade, use [nvm](https://github.com/nvm-sh/nvm):\n\n```bash\nnvm install 20\nnvm use 20\n```\n\n### Quick Start\n\n```bash\n# Install dependencies\nnpm install\n\n# Run the playground\nnpm run dev\n\n# Run Storybook\nnpm run storybook\n```\n\n## Structure\n\n```\n├── codex/              # Design documentation\n│   ├── principles.md   # Core design principles\n│   ├── typography.md   # Type system\n│   ├── color.md        # Color strategy\n│   ├── spacing.md      # Spacing scale\n│   ├── components.md   # Component guidelines\n│   └── patterns/       # UI pattern recipes\n├── themes/css/         # CSS custom properties\n│   ├── base.css        # Primitives & component tokens\n│   ├── theme-light.css # Light mode\n│   └── theme-dark.css  # Dark mode\n├── components/react/   # React component library\n│   ├── Button/\n│   ├── Input/\n│   ├── Card/\n│   ├── Badge/\n│   ├── Modal/\n│   ├── Toast/\n│   ├── Tabs/\n│   └── RefreshButton/  # AWS-style auto-refresh button\n├── lib/                # Shared utilities\n│   ├── index.ts        # Exports all utilities\n│   └── utils.ts        # formatRelativeTime, clsx\n├── app/                # Next.js playground\n├── public/fonts/       # Martian Mono font files\n└── .storybook/         # Storybook configuration\n```\n\n## Design Tokens\n\nAll visual values are defined as CSS custom properties in `themes/css/`. The token architecture follows three layers:\n\n1. **Primitive tokens** — Raw values (colors, spacing units)\n2. **Semantic tokens** — Meaningful mappings (`--color-text-primary`)\n3. **Component tokens** — Component-specific overrides (`--button-radius`)\n\n## Themes\n\nThe codex supports light and dark themes via CSS custom properties. Theme switching uses:\n\n```html\n<html data-theme=\"light\">\n  <!-- or -->\n  <html data-theme=\"dark\"></html>\n</html>\n```\n\n## Components\n\nAll components:\n\n- Use tokens exclusively (no hardcoded values)\n- Are built on Radix UI primitives for accessibility\n- Encode taste, not flexibility\n\n## License\n\nPrivate repository. Personal use only.\n","readmeFilename":"README.md"}