{"_id":"@a24z/alexandria-ui","_rev":"5-f7bb980e99c669e03279b3214030dec3","name":"@a24z/alexandria-ui","dist-tags":{"latest":"0.0.4"},"versions":{"0.0.1":{"name":"@a24z/alexandria-ui","version":"0.0.1","keywords":["react","ui","components","alexandria","themed-markdown","library"],"author":{"name":"A24Z"},"license":"MIT","_id":"@a24z/alexandria-ui@0.0.1","maintainers":[{"name":"fernando-ram-lugo","email":"principle@principlemd.com"}],"homepage":"https://github.com/a24z/alexandria-ui#readme","bugs":{"url":"https://github.com/a24z/alexandria-ui/issues"},"dist":{"shasum":"0eccdbdc4d2984164d716c43d234f6be8a48564f","tarball":"https://registry.npmjs.org/@a24z/alexandria-ui/-/alexandria-ui-0.0.1.tgz","fileCount":266,"integrity":"sha512-lzHn85i9yw4WJUpOS7pvKT40LBV8ZTrcaSeu5yAj8WLq14GP+3JdYbBzT5DABQJC5NQBk6dox4fTfqmEc/+iRw==","signatures":[{"sig":"MEUCIQCYU+eqBWtuMnwvUaVlUHlArQ9pBRFRNjhCSl88JzGvtgIgB1IVtmDiwErKRs+N/0KnADbj7cU7wpbSnK3gDhnbTtE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":74890946},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.esm.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"},"./styles":"./dist/styles.css"},"gitHead":"86667500eaaf2909595c85e07f5643725b88b8f2","scripts":{"dev":"rollup -c -w","lint":"eslint src/","test":"jest","build":"rollup -c","storybook":"storybook dev -p 6006","typecheck":"tsc --noEmit","prepublishOnly":"npm run build","build-storybook":"storybook build"},"_npmUser":{"name":"fernando-ram-lugo","email":"principle@principlemd.com"},"repository":{"url":"git+https://github.com/a24z/alexandria-ui.git","type":"git"},"_npmVersion":"10.9.2","description":"React UI library for Alexandria components with themed-markdown support","directories":{},"_nodeVersion":"23.11.0","dependencies":{"clsx":"^2.1.1","cmdk":"^1.1.1","cors":"^2.8.5","mermaid":"^11.11.0","rehype-raw":"^7.0.0","remark-gfm":"^4.0.1","a24z-memory":"^0.5.74","compression":"^1.8.1","rehype-slug":"^6.0.0","highlight.js":"^11.11.1","lucide-react":"^0.542.0","react-markdown":"^10.1.0","tailwind-merge":"^3.3.1","rehype-sanitize":"^6.0.0","rehype-highlight":"^7.0.2","hast-util-sanitize":"^5.0.2","@radix-ui/react-tabs":"^1.1.13","react-zoom-pan-pinch":"^3.7.0","@radix-ui/react-dialog":"^1.1.15","@radix-ui/react-tooltip":"^1.1.13","class-variance-authority":"^0.7.1","@radix-ui/react-scroll-area":"^1.2.10"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","vite":"^6.0.0","tslib":"^2.8.0","eslint":"^9.16.0","rollup":"^4.28.0","postcss":"^8.4.49","storybook":"^8.4.0","typescript":"^5.7.0","@types/jest":"^29.5.14","@types/node":"^22.10.0","tailwindcss":"^3.4.0","@types/react":"^18.3.12","autoprefixer":"^10.4.21","@storybook/test":"^8.4.0","@storybook/react":"^8.4.0","@types/react-dom":"^18.3.0","@storybook/blocks":"^8.4.0","eslint-plugin-react":"^7.37.0","@vitejs/plugin-react":"^5.0.2","@storybook/react-vite":"^8.4.0","rollup-plugin-postcss":"^4.0.2","@storybook/addon-links":"^8.4.0","rollup-plugin-css-only":"^4.5.0","@rollup/plugin-commonjs":"^28.0.0","eslint-plugin-storybook":"^0.11.0","@rollup/plugin-typescript":"^12.1.0","@typescript-eslint/parser":"^8.16.0","eslint-plugin-react-hooks":"^5.0.0","@rollup/plugin-node-resolve":"^15.3.0","@storybook/addon-essentials":"^8.4.0","@storybook/addon-interactions":"^8.4.0","@typescript-eslint/eslint-plugin":"^8.16.0","rollup-plugin-peer-deps-external":"^2.2.4"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0","react-dom":"^18.0.0 || ^19.0.0","themed-markdown":"^0.1.23","@a24z/core-library":"^0.1.3"},"_npmOperationalInternal":{"tmp":"tmp/alexandria-ui_0.0.1_1758669781994_0.6155188603986153","host":"s3://npm-registry-packages-npm-production"}},"0.0.2":{"name":"@a24z/alexandria-ui","version":"0.0.2","keywords":["react","ui","components","alexandria","themed-markdown","library"],"author":{"name":"A24Z"},"license":"MIT","_id":"@a24z/alexandria-ui@0.0.2","maintainers":[{"name":"fernando-ram-lugo","email":"principle@principlemd.com"}],"homepage":"https://github.com/a24z/alexandria-ui#readme","bugs":{"url":"https://github.com/a24z/alexandria-ui/issues"},"dist":{"shasum":"7ceadef4524b9d73217ebc0be3d5736563ed9ba6","tarball":"https://registry.npmjs.org/@a24z/alexandria-ui/-/alexandria-ui-0.0.2.tgz","fileCount":266,"integrity":"sha512-k6ro5h5Z7FgFd5V+vbpSCZLcfTimnGTLA3/3YhRaIUiNPUTIPAZCoi3cMm7IqnPaJrAjyEgxip9jLW1ut7xMuA==","signatures":[{"sig":"MEUCIQCh4Fiv9sLElW8DIuC850QvnyyaSLSUQouQ9Wc+618gWgIgCOJukTSBTHjeEvZDCodQI/RqUWf1auVb88tJXjO1WDY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":74889936},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.esm.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"},"./styles":"./dist/styles.css"},"gitHead":"4d651ea95941072e36dfaadc4daac7f1bf643256","scripts":{"dev":"rollup -c -w","lint":"eslint src/","test":"jest","build":"rollup -c","storybook":"storybook dev -p 6006","typecheck":"tsc --noEmit","prepublishOnly":"npm run build","build-storybook":"storybook build"},"_npmUser":{"name":"fernando-ram-lugo","email":"principle@principlemd.com"},"repository":{"url":"git+https://github.com/a24z/alexandria-ui.git","type":"git"},"_npmVersion":"10.9.2","description":"React UI library for Alexandria components with themed-markdown support","directories":{},"_nodeVersion":"23.11.0","dependencies":{"clsx":"^2.1.1","cmdk":"^1.1.1","cors":"^2.8.5","mermaid":"^11.11.0","rehype-raw":"^7.0.0","remark-gfm":"^4.0.1","compression":"^1.8.1","rehype-slug":"^6.0.0","highlight.js":"^11.11.1","lucide-react":"^0.542.0","react-markdown":"^10.1.0","tailwind-merge":"^3.3.1","rehype-sanitize":"^6.0.0","rehype-highlight":"^7.0.2","hast-util-sanitize":"^5.0.2","@radix-ui/react-tabs":"^1.1.13","react-zoom-pan-pinch":"^3.7.0","@radix-ui/react-dialog":"^1.1.15","@radix-ui/react-tooltip":"^1.1.13","class-variance-authority":"^0.7.1","@radix-ui/react-scroll-area":"^1.2.10"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","vite":"^6.0.0","tslib":"^2.8.0","eslint":"^9.16.0","rollup":"^4.28.0","postcss":"^8.4.49","storybook":"^8.4.0","typescript":"^5.7.0","@types/jest":"^29.5.14","@types/node":"^22.10.0","tailwindcss":"^3.4.0","@types/react":"^18.3.12","autoprefixer":"^10.4.21","@storybook/test":"^8.4.0","@storybook/react":"^8.4.0","@types/react-dom":"^18.3.0","@storybook/blocks":"^8.4.0","eslint-plugin-react":"^7.37.0","@vitejs/plugin-react":"^5.0.2","@storybook/react-vite":"^8.4.0","rollup-plugin-postcss":"^4.0.2","@storybook/addon-links":"^8.4.0","rollup-plugin-css-only":"^4.5.0","@rollup/plugin-commonjs":"^28.0.0","eslint-plugin-storybook":"^0.11.0","@rollup/plugin-typescript":"^12.1.0","@typescript-eslint/parser":"^8.16.0","eslint-plugin-react-hooks":"^5.0.0","@rollup/plugin-node-resolve":"^15.3.0","@storybook/addon-essentials":"^8.4.0","@storybook/addon-interactions":"^8.4.0","@typescript-eslint/eslint-plugin":"^8.16.0","rollup-plugin-peer-deps-external":"^2.2.4"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0","react-dom":"^18.0.0 || ^19.0.0","themed-markdown":"^0.1.23","@a24z/core-library":"^0.1.12"},"_npmOperationalInternal":{"tmp":"tmp/alexandria-ui_0.0.2_1758681132236_0.8067977953620027","host":"s3://npm-registry-packages-npm-production"}},"0.0.3":{"name":"@a24z/alexandria-ui","version":"0.0.3","keywords":["react","ui","components","alexandria","themed-markdown","library"],"author":{"name":"A24Z"},"license":"MIT","_id":"@a24z/alexandria-ui@0.0.3","maintainers":[{"name":"fernando-ram-lugo","email":"principle@principlemd.com"}],"homepage":"https://github.com/a24z/alexandria-ui#readme","bugs":{"url":"https://github.com/a24z/alexandria-ui/issues"},"dist":{"shasum":"9e31c3e67ca7da60ef1480bc93f9181249639a24","tarball":"https://registry.npmjs.org/@a24z/alexandria-ui/-/alexandria-ui-0.0.3.tgz","fileCount":266,"integrity":"sha512-8HSGkdaH/SDeP8zoLagzDDWcYoxpoDYERxK/0SGWpBY43bg9Ad/FuFfGkkkQDzO0rQHkM1rn2mtqqGxE3RhJEQ==","signatures":[{"sig":"MEUCIQDpdxrirKJgXJ+3NFcZc3veEdTLUsRt3Ia20tfqjg4g2wIgGnQtEe2JK57hhPJn4GiD0y3a0/R3ey083yEwiWFaW/Y=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":74917616},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.esm.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"},"./styles":"./dist/styles.css"},"gitHead":"e30b0953f445608692ba99b23aea849e318efeff","scripts":{"dev":"rollup -c -w","lint":"eslint src/","test":"jest","build":"rollup -c","storybook":"storybook dev -p 6006","typecheck":"tsc --noEmit","prepublishOnly":"npm run build","build-storybook":"storybook build"},"_npmUser":{"name":"fernando-ram-lugo","email":"principle@principlemd.com"},"repository":{"url":"git+https://github.com/a24z/alexandria-ui.git","type":"git"},"_npmVersion":"10.9.2","description":"React UI library for Alexandria components with themed-markdown support","directories":{},"_nodeVersion":"23.11.0","dependencies":{"clsx":"^2.1.1","cmdk":"^1.1.1","cors":"^2.8.5","mermaid":"^11.11.0","rehype-raw":"^7.0.0","remark-gfm":"^4.0.1","compression":"^1.8.1","rehype-slug":"^6.0.0","highlight.js":"^11.11.1","lucide-react":"^0.542.0","react-markdown":"^10.1.0","tailwind-merge":"^3.3.1","rehype-sanitize":"^6.0.0","rehype-highlight":"^7.0.2","hast-util-sanitize":"^5.0.2","@radix-ui/react-tabs":"^1.1.13","react-zoom-pan-pinch":"^3.7.0","@radix-ui/react-dialog":"^1.1.15","@radix-ui/react-tooltip":"^1.1.13","class-variance-authority":"^0.7.1","@radix-ui/react-scroll-area":"^1.2.10"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","vite":"^6.0.0","tslib":"^2.8.0","eslint":"^9.16.0","rollup":"^4.28.0","postcss":"^8.4.49","storybook":"^8.4.0","typescript":"^5.7.0","@types/jest":"^29.5.14","@types/node":"^22.10.0","tailwindcss":"^3.4.0","@types/react":"^18.3.12","autoprefixer":"^10.4.21","@storybook/test":"^8.4.0","@storybook/react":"^8.4.0","@types/react-dom":"^18.3.0","@storybook/blocks":"^8.4.0","eslint-plugin-react":"^7.37.0","@vitejs/plugin-react":"^5.0.2","@storybook/react-vite":"^8.4.0","rollup-plugin-postcss":"^4.0.2","@storybook/addon-links":"^8.4.0","rollup-plugin-css-only":"^4.5.0","@rollup/plugin-commonjs":"^28.0.0","eslint-plugin-storybook":"^0.11.0","@rollup/plugin-typescript":"^12.1.0","@typescript-eslint/parser":"^8.16.0","eslint-plugin-react-hooks":"^5.0.0","@rollup/plugin-node-resolve":"^15.3.0","@storybook/addon-essentials":"^8.4.0","@storybook/addon-interactions":"^8.4.0","@typescript-eslint/eslint-plugin":"^8.16.0","rollup-plugin-peer-deps-external":"^2.2.4"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0","react-dom":"^18.0.0 || ^19.0.0","themed-markdown":"^0.1.23","@a24z/core-library":"^0.1.12"},"_npmOperationalInternal":{"tmp":"tmp/alexandria-ui_0.0.3_1758688473239_0.9998575514246764","host":"s3://npm-registry-packages-npm-production"}},"0.0.4":{"name":"@a24z/alexandria-ui","version":"0.0.4","description":"React UI library for Alexandria components with themed-markdown support","main":"dist/index.js","module":"dist/index.esm.js","types":"dist/index.d.ts","exports":{".":{"import":"./dist/index.esm.js","require":"./dist/index.js","types":"./dist/index.d.ts"},"./styles":"./dist/styles.css"},"scripts":{"build":"rollup -c","dev":"rollup -c -w","storybook":"storybook dev -p 6006","build-storybook":"storybook build","test":"jest","lint":"eslint src/","typecheck":"tsc --noEmit","prepublishOnly":"npm run build"},"peerDependencies":{"@a24z/core-library":"^0.1.12","react":"^18.0.0 || ^19.0.0","react-dom":"^18.0.0 || ^19.0.0","themed-markdown":"^0.1.23"},"dependencies":{"@radix-ui/react-dialog":"^1.1.15","@radix-ui/react-scroll-area":"^1.2.10","@radix-ui/react-tabs":"^1.1.13","@radix-ui/react-tooltip":"^1.1.13","class-variance-authority":"^0.7.1","clsx":"^2.1.1","cmdk":"^1.1.1","compression":"^1.8.1","cors":"^2.8.5","hast-util-sanitize":"^5.0.2","highlight.js":"^11.11.1","lucide-react":"^0.542.0","mermaid":"^11.11.0","react-markdown":"^10.1.0","react-zoom-pan-pinch":"^3.7.0","rehype-highlight":"^7.0.2","rehype-raw":"^7.0.0","rehype-sanitize":"^6.0.0","rehype-slug":"^6.0.0","remark-gfm":"^4.0.1","tailwind-merge":"^3.3.1"},"devDependencies":{"@rollup/plugin-commonjs":"^28.0.0","@rollup/plugin-node-resolve":"^15.3.0","@rollup/plugin-typescript":"^12.1.0","@storybook/addon-essentials":"^8.4.0","@storybook/addon-interactions":"^8.4.0","@storybook/addon-links":"^8.4.0","@storybook/blocks":"^8.4.0","@storybook/react":"^8.4.0","@storybook/react-vite":"^8.4.0","@storybook/test":"^8.4.0","@types/jest":"^29.5.14","@types/node":"^22.10.0","@types/react":"^18.3.12","@types/react-dom":"^18.3.0","@typescript-eslint/eslint-plugin":"^8.16.0","@typescript-eslint/parser":"^8.16.0","@vitejs/plugin-react":"^5.0.2","autoprefixer":"^10.4.21","eslint":"^9.16.0","eslint-plugin-react":"^7.37.0","eslint-plugin-react-hooks":"^5.0.0","eslint-plugin-storybook":"^0.11.0","jest":"^29.7.0","postcss":"^8.4.49","rollup":"^4.28.0","rollup-plugin-css-only":"^4.5.0","rollup-plugin-peer-deps-external":"^2.2.4","rollup-plugin-postcss":"^4.0.2","storybook":"^8.4.0","tailwindcss":"^3.4.0","tslib":"^2.8.0","typescript":"^5.7.0","vite":"^6.0.0"},"repository":{"type":"git","url":"git+https://github.com/a24z/alexandria-ui.git"},"keywords":["react","ui","components","alexandria","themed-markdown","library"],"author":{"name":"A24Z"},"license":"MIT","bugs":{"url":"https://github.com/a24z/alexandria-ui/issues"},"homepage":"https://github.com/a24z/alexandria-ui#readme","_id":"@a24z/alexandria-ui@0.0.4","gitHead":"9bed03cda7bb6696fcda270c3403023f6ecf0747","_nodeVersion":"23.11.0","_npmVersion":"10.9.2","dist":{"integrity":"sha512-kK6QQI7UnNjLJ8C/55PB22cdQk37gNaS/XfC32oAmOGV9hZcgWy5B0olm/UYFoaQJAb8CabCng2/Lne7KQz96g==","shasum":"4400c5ea533197c0cdf4d216df7653684658c206","tarball":"https://registry.npmjs.org/@a24z/alexandria-ui/-/alexandria-ui-0.0.4.tgz","fileCount":266,"unpackedSize":74838049,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQDLjDb8AsZpQCS0HU75pBhryqt+vKDZtvzdjEMuk8fIRwIhAK/jatuUBiLULjTJRB5YHeP89G3rxMA50CpZ/KmtrvZq"}]},"_npmUser":{"name":"fernando-ram-lugo","email":"principle@principlemd.com"},"directories":{},"maintainers":[{"name":"fernando-ram-lugo","email":"principle@principlemd.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/alexandria-ui_0.0.4_1759373973515_0.7086754692716175"},"_hasShrinkwrap":false}},"time":{"created":"2025-09-23T23:23:01.993Z","modified":"2025-10-02T02:59:34.089Z","0.0.1":"2025-09-23T23:23:02.426Z","0.0.2":"2025-09-24T02:32:12.577Z","0.0.3":"2025-09-24T04:34:33.728Z","0.0.4":"2025-10-02T02:59:33.878Z"},"bugs":{"url":"https://github.com/a24z/alexandria-ui/issues"},"author":{"name":"A24Z"},"license":"MIT","homepage":"https://github.com/a24z/alexandria-ui#readme","keywords":["react","ui","components","alexandria","themed-markdown","library"],"repository":{"type":"git","url":"git+https://github.com/a24z/alexandria-ui.git"},"description":"React UI library for Alexandria components with themed-markdown support","maintainers":[{"name":"fernando-ram-lugo","email":"principle@principlemd.com"}],"readme":"# @a24z/alexandria-ui\n\nReact UI library for Alexandria components with themed-markdown support. This library provides a complete set of UI components for building Alexandria-based applications that can be used across web and Electron environments.\n\n## Installation\n\n```bash\nnpm install @a24z/alexandria-ui @a24z/core-library themed-markdown\n# or\nyarn add @a24z/alexandria-ui @a24z/core-library themed-markdown\n# or\npnpm add @a24z/alexandria-ui @a24z/core-library themed-markdown\n```\n\n## Quick Start\n\n### Web Application\n\n```typescript\nimport { Alexandria, AlexandriaThemeProvider } from '@a24z/alexandria-ui';\nimport {\n  ReadingRecordManager,\n  LocalStorageReadingRecordAdapter\n} from '@a24z/core-library';\n\nfunction App() {\n  const storageManager = new ReadingRecordManager({\n    adapter: new LocalStorageReadingRecordAdapter()\n  });\n\n  return (\n    <AlexandriaThemeProvider theme=\"github-dark\">\n      <Alexandria\n        storageManager={storageManager}\n        apiUrl=\"https://api.alexandria.com\"\n      />\n    </AlexandriaThemeProvider>\n  );\n}\n```\n\n### Electron Application\n\n```typescript\nimport { Alexandria, AlexandriaThemeProvider } from '@a24z/alexandria-ui';\nimport {\n  ReadingRecordManager,\n  ElectronStorageAdapter\n} from '@a24z/core-library';\n\nfunction ElectronApp() {\n  const storageManager = new ReadingRecordManager({\n    adapter: new ElectronStorageAdapter()\n  });\n\n  return (\n    <AlexandriaThemeProvider theme=\"github-dark\">\n      <Alexandria\n        storageManager={storageManager}\n        apiUrl=\"http://localhost:8741\"  // Local server\n      />\n    </AlexandriaThemeProvider>\n  );\n}\n```\n\n## Available Components\n\n### Core Components\n- `Alexandria` - Complete Alexandria application\n- `AlexandriaThemeProvider` - Theme provider wrapper using themed-markdown\n\n### Individual Components\n- `RepositoryViewer` - Repository content viewer\n- `RepositoryCard` - Repository information card\n- `BookmarkedDocuments` - Bookmarked documents manager\n- `ViewDisplay` - Content display component\n- `ThemeToggle` - Theme switching component\n- `EmptyState` - Empty state display\n- `AnimatedBookIcon` - Animated book icon\n- `FontScaleControls` - Font size controls\n- `ProductShowcase` - Product showcase component\n\n### UI Primitives\nAll base UI components from `components/ui` are exported and available for use.\n\n## Theming\n\nThis library uses `themed-markdown` for consistent theming. All components automatically adapt to the theme provided through `AlexandriaThemeProvider`.\n\n### Available Themes\n- `github-dark`\n- `github-light`\n- `monokai`\n- `dracula`\n- And more from themed-markdown\n\n### Custom Theme Usage\n\n```typescript\nimport { AlexandriaThemeProvider } from '@a24z/alexandria-ui';\n\nfunction App() {\n  return (\n    <AlexandriaThemeProvider theme=\"monokai\">\n      {/* Your app content */}\n    </AlexandriaThemeProvider>\n  );\n}\n```\n\n## Development\n\n### Setup\n\n```bash\n# Install dependencies\nnpm install\n\n# Run development build with watch\nnpm run dev\n\n# Build library\nnpm run build\n\n# Run Storybook for component development\nnpm run storybook\n\n# Run tests\nnpm test\n\n# Type checking\nnpm run typecheck\n\n# Linting\nnpm run lint\n```\n\n### Project Structure\n\n```\n@a24z/alexandria-ui/\n├── src/\n│   ├── components/          # React components\n│   ├── hooks/              # Custom React hooks\n│   ├── lib/                # Utilities and API clients\n│   └── index.ts            # Main exports\n├── stories/                # Storybook stories\n├── .storybook/            # Storybook configuration\n└── dist/                  # Build output\n```\n\n## Architecture\n\nSee [alexandria-library-architecture.md](./alexandria-library-architecture.md) for detailed architecture documentation.\n\n## License\n\nMIT\n\n## Contributing\n\nContributions are welcome! Please feel free to submit a Pull Request.","readmeFilename":"README.md"}