{"_id":"@alternatefutures/tokens","name":"@alternatefutures/tokens","dist-tags":{"latest":"0.2.0"},"versions":{"0.2.0":{"name":"@alternatefutures/tokens","version":"0.2.0","description":"AlternateFutures design tokens — Tailwind v4 @theme CSS variables (oklch brand system, brand accent #A5B2FF) + framework-agnostic JS color helpers. The single source of truth for the brand.","license":"AGPL-3.0-only","type":"module","sideEffects":["**/*.css"],"exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./tokens.css":"./tokens.css","./theme.css":"./theme.css","./package.json":"./package.json"},"scripts":{"build":"tsup","typecheck":"tsc --noEmit","prepublishOnly":"npm run build"},"publishConfig":{"access":"public","provenance":true},"repository":{"type":"git","url":"git+https://github.com/alternatefutures/alternate-ui.git","directory":"packages/tokens"},"_id":"@alternatefutures/tokens@0.2.0","gitHead":"80fdb8b4cf29e561c5864428185ca7e398725e53","bugs":{"url":"https://github.com/alternatefutures/alternate-ui/issues"},"homepage":"https://github.com/alternatefutures/alternate-ui#readme","_nodeVersion":"20.20.2","_npmVersion":"10.8.2","dist":{"integrity":"sha512-IknaycxMKBBj+x0VgqGYZdbgVSLjmryb6iBOMaet01A2djN+M2Dw3oCQ1N6xdRxRcCzfiAqxABLmppbjrmmvEw==","shasum":"641a7e78fd82b0c1aa13e1bda53eb883bd3c4ce0","tarball":"https://registry.npmjs.org/@alternatefutures/tokens/-/tokens-0.2.0.tgz","fileCount":10,"unpackedSize":20203,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@alternatefutures%2ftokens@0.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQDoGKXPohfLLCTFyyZDjq6877w+MyKNna86bUslG4Ti/gIhAK7NnpEG+mj3i3jS68wQrUmgTqh8XGm9zvRTIjSQuDdn"}]},"_npmUser":{"name":"alternatehayk","email":"hayk@alternatefutures.ai"},"directories":{},"maintainers":[{"name":"alternatehayk","email":"hayk@alternatefutures.ai"},{"name":"system-af","email":"system@alternatefutures.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/tokens_0.2.0_1782141506472_0.6847368699825669"},"_hasShrinkwrap":false}},"time":{"created":"2026-06-22T15:18:26.347Z","0.2.0":"2026-06-22T15:18:26.625Z","modified":"2026-06-22T15:18:26.956Z"},"maintainers":[{"name":"alternatehayk","email":"hayk@alternatefutures.ai"},{"name":"system-af","email":"system@alternatefutures.ai"}],"description":"AlternateFutures design tokens — Tailwind v4 @theme CSS variables (oklch brand system, brand accent #A5B2FF) + framework-agnostic JS color helpers. The single source of truth for the brand.","homepage":"https://github.com/alternatefutures/alternate-ui#readme","repository":{"type":"git","url":"git+https://github.com/alternatefutures/alternate-ui.git","directory":"packages/tokens"},"bugs":{"url":"https://github.com/alternatefutures/alternate-ui/issues"},"license":"AGPL-3.0-only","readme":"# @alternatefutures/tokens\n\nThe single source of truth for the AlternateFutures brand: a Tailwind v4 CSS-first\n`@theme` token system (oklch dark terminal palette, radius scale, brand accent\n`#A5B2FF`) plus framework-agnostic JS color helpers.\n\n## Install\n\n```bash\nnpm install @alternatefutures/tokens\n```\n\n## Usage\n\n### Full brand chrome (instant match)\n\nIn your app's global stylesheet:\n\n```css\n@import \"tailwindcss\";\n@import \"@alternatefutures/tokens/theme.css\";\n```\n\nThis gives you the tokens **and** the opinionated base layer: monospace body\nfont, the ambient brand glow, the CRT scanline overlay, and the `.af-scroll`\nbrand scrollbar utility.\n\n### Tokens only (variables, no global chrome)\n\n```css\n@import \"tailwindcss\";\n@import \"@alternatefutures/tokens/tokens.css\";\n```\n\nYou then get the brand colors as Tailwind utilities — `bg-background`,\n`text-foreground`, `bg-primary`, `text-term`, `border-term-faint`,\n`rounded-lg`, etc. — without the body font / ambient effects.\n\n### JS color helpers\n\n```ts\nimport { BRAND, AVATAR_COLORS, seedColor } from \"@alternatefutures/tokens\";\n\nconst accent = BRAND.term;           // \"#a5b2ff\"\nconst color = seedColor(fingerprint); // stable per-identity oklch color\n```\n\nUse these where CSS variables can't reach (canvas, charts, inline styles,\nserver-computed colors).\n\n## What's in here\n\n- `tokens.css` — `:root`/`.dark` CSS variables + Tailwind v4 `@theme inline` map. Values only.\n- `theme.css` — `@import \"./tokens.css\"` + the base layer (body font, glow, CRT, scrollbar).\n- `dist/` — JS exports (`BRAND`, `AVATAR_COLORS`, `seedColor`), ESM + CJS + types.\n\n## Conventions\n\nThis package is **values + brand chrome only** — no React, no components. Shared\nReact primitives belong in `@alternatefutures/ui`; product-specific components in\n`@alternatefutures/<product>-ui`. To change a token: edit the CSS (and the JS\nmirror if relevant), add a changeset (adding a token = minor; renaming/removing =\nmajor via deprecate → alias → remove), and let CI version + publish.\n","readmeFilename":"README.md","_rev":"1-7affd5d16afdab0cb041d7d2390795a0"}