{"_id":"@alternatefutures/ui","name":"@alternatefutures/ui","dist-tags":{"latest":"0.2.0"},"versions":{"0.2.0":{"name":"@alternatefutures/ui","version":"0.2.0","description":"AlternateFutures shared React UI primitives (shadcn-style, Tailwind v4 + @alternatefutures/tokens): Button, Input, Card, Avatar, Badge, Label, Divider.","license":"AGPL-3.0-only","type":"module","sideEffects":false,"exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./package.json":"./package.json"},"scripts":{"build":"tsup","typecheck":"tsc --noEmit","prepublishOnly":"npm run build"},"dependencies":{"@alternatefutures/tokens":"^0.2.0","@radix-ui/react-avatar":"^1.1.3","@radix-ui/react-label":"^2.1.2","@radix-ui/react-slot":"^1.1.2","class-variance-authority":"^0.7.1","clsx":"^2.1.1","tailwind-merge":"^2.6.0"},"peerDependencies":{"react":"^19.0.0","react-dom":"^19.0.0","tailwindcss":"^4.0.0"},"devDependencies":{"@types/react":"^19.0.0","@types/react-dom":"^19.0.0","react":"^19.0.0","react-dom":"^19.0.0"},"publishConfig":{"access":"public","provenance":true},"repository":{"type":"git","url":"git+https://github.com/alternatefutures/alternate-ui.git","directory":"packages/ui"},"_id":"@alternatefutures/ui@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-2W0iE0xul+krqHlb1GfRZ1ha1TSYuK8u3mb0AAhGGTrYdHxnXaZDrLEyKhh1/QYKeV8jKeS1th5j796OF5Bqwg==","shasum":"fd35a54d98cf7360bdc252fda4f81d2f3b73da35","tarball":"https://registry.npmjs.org/@alternatefutures/ui/-/ui-0.2.0.tgz","fileCount":8,"unpackedSize":125992,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@alternatefutures%2fui@0.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCBYkVdR2qZGSDLx4j9FFeJUQU2CEi7ISkH64CtWafongIgRZICPpHUzkmD4NBa2jRrnZkyKEAKpDkxApzPe6S3ek0="}]},"_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/ui_0.2.0_1782141506695_0.0796918539965179"},"_hasShrinkwrap":false}},"time":{"created":"2026-06-22T15:18:26.492Z","0.2.0":"2026-06-22T15:18:26.845Z","modified":"2026-06-22T15:18:27.232Z"},"maintainers":[{"name":"alternatehayk","email":"hayk@alternatefutures.ai"},{"name":"system-af","email":"system@alternatefutures.ai"}],"description":"AlternateFutures shared React UI primitives (shadcn-style, Tailwind v4 + @alternatefutures/tokens): Button, Input, Card, Avatar, Badge, Label, Divider.","homepage":"https://github.com/alternatefutures/alternate-ui#readme","repository":{"type":"git","url":"git+https://github.com/alternatefutures/alternate-ui.git","directory":"packages/ui"},"bugs":{"url":"https://github.com/alternatefutures/alternate-ui/issues"},"license":"AGPL-3.0-only","readme":"# @alternatefutures/ui\n\nShared React UI primitives for AlternateFutures apps — shadcn-style components\nstyled entirely through `@alternatefutures/tokens`, so the same buttons, inputs,\ncards, and avatars render identically across chat, connect, and the platform.\n\n## Install\n\n```bash\nnpm install @alternatefutures/ui @alternatefutures/tokens\n```\n\nPeers: `react` / `react-dom` 19, and **Tailwind v4** (the consumer processes the\nclass names).\n\n## Setup (consumer)\n\n```css\n/* globals.css */\n@import \"tailwindcss\";\n@import \"@alternatefutures/tokens/theme.css\";\n\n/* Tailwind v4 ignores node_modules by default — tell it to scan this package\n   so the primitives' utility classes are generated: */\n@source \"../node_modules/@alternatefutures/ui/dist\";\n```\n\n```tsx\nimport { Button, Input, Card, Avatar, AvatarFallback, Badge, Label, Divider } from \"@alternatefutures/ui\";\n```\n\n## Components\n\n`Button` (variants: default/destructive/outline/secondary/ghost/link; sizes:\ndefault/sm/lg/icon · `asChild`), `Input`, `Card` (+ Header/Title/Description/\nContent/Footer), `Avatar` (+ Image/Fallback), `Badge` (default/secondary/success/\noutline/destructive), `Label`, `Divider`, and the `cn` class-merge helper.\n\n## Conventions\n\n- **No color literals.** Components reference token CSS vars (`bg-primary`,\n  `border-input`, `text-muted-foreground`…). Per-app accent = override the token,\n  not the component.\n- Components are client-side (`'use client'`) for Next App Router compatibility.\n- Chat-specific components live in `@alternatefutures/chat-ui`, not here.\n","readmeFilename":"README.md","_rev":"1-316a20977d823dad2d6883cfd54b1822"}