{"_id":"@accord-cms/core","_rev":"2-0925910d361201c4abdc9601c9aedb60","name":"@accord-cms/core","dist-tags":{"latest":"0.1.1"},"versions":{"0.1.0":{"name":"@accord-cms/core","version":"0.1.0","keywords":["accord","accord-cms","cms","tanstack","tanstack-start","tanstack-router","drizzle-orm","postgresql","admin"],"license":"MIT","_id":"@accord-cms/core@0.1.0","maintainers":[{"name":"kesval","email":"jabeddou@gmail.com"}],"homepage":"https://github.com/xKesvaL/KesvaCMS#readme","bugs":{"url":"https://github.com/xKesvaL/KesvaCMS/issues"},"dist":{"shasum":"fb102310d3594b07254edd5624408ff44dcbc642","tarball":"https://registry.npmjs.org/@accord-cms/core/-/core-0.1.0.tgz","fileCount":90,"integrity":"sha512-XsHA4m9sXB+G2dMHozPxFbBSRr1nhjfe5IdZOCaLAlKHeRaNsiQy3Y7lOTsEszq1Tny8lyQfp8AdN+kfB7MgEQ==","signatures":[{"sig":"MEUCIF6ljE++7GPwE1r+gep7arkqzk1CCQtt2G33uox3AgywAiEAzbiOEbnSFb4Fmc+vYIeVdDlhN26F4lPaVq+XaA68d7g=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":846278},"main":"./src/index.ts","type":"module","types":"./src/index.ts","module":"./src/index.ts","exports":{".":"./src/index.ts","./mcp":"./src/mcp/index.ts","./auth":"./src/auth.ts","./admin":"./src/admin/index.ts","./media":"./src/media.ts","./pages":"./src/pages.ts","./fields":"./src/fields.ts","./lookup":"./src/lookup.ts","./schema":"./src/db/schema.ts","./server":"./src/server/index.ts","./routing":"./src/routing.ts","./components":"./src/components.ts","./auth-client":"./src/auth-client.ts"},"gitHead":"8ed616edfb8730f2ef3b3e152d0b427090ce5a4d","scripts":{"test":"vp test run","test:watch":"vp test","check-types":"tsc --noEmit","test:coverage":"vp test run --coverage"},"_npmUser":{"name":"kesval","email":"jabeddou@gmail.com"},"repository":{"url":"git+https://github.com/xKesvaL/KesvaCMS.git","type":"git","directory":"packages/core"},"_npmVersion":"11.19.0","description":"Self-hosted CMS engine, schema, fields, routing, and admin UI for TanStack Start and PostgreSQL","directories":{},"_nodeVersion":"24.21.0","dependencies":{"zod":"^4.3.6","clsx":"^2.1.1","dayjs":"^1.11.23","motion":"^13.2.0","sonner":"^2.0.8","@dnd-kit/core":"^6.3.1","@base-ui/react":"^1.3.0","tailwind-merge":"^3.5.0","@dnd-kit/sortable":"^10.0.0","@dnd-kit/utilities":"^3.2.2","@tabler/icons-react":"^3.40.0","class-variance-authority":"^0.7.1","@modelcontextprotocol/sdk":"^1.30.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite-plus":"catalog:","@types/bun":"latest","@types/node":"^25.5.0","@types/react":"^19.3.0","@vitest/coverage-v8":"catalog:"},"peerDependencies":{"react":"^19.3.0","react-dom":"^19.3.0","typescript":"^7.0.2","better-auth":"1.7.4","drizzle-orm":"^0.45.2","@tanstack/react-form":"^1.33.5","@tanstack/react-router":"^1.170.35"},"peerDependenciesMeta":{"react":{"optional":true},"react-dom":{"optional":true},"@tanstack/react-form":{"optional":true},"@tanstack/react-router":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/core_0.1.0_1789143311914_0.14702078395715334","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@accord-cms/core","version":"0.1.1","description":"Self-hosted CMS engine, schema, fields, routing, and admin UI for TanStack Start and PostgreSQL","type":"module","main":"./src/index.ts","module":"./src/index.ts","types":"./src/index.ts","publishConfig":{"access":"public"},"repository":{"type":"git","url":"git+https://github.com/xKesvaL/KesvaCMS.git","directory":"packages/core"},"homepage":"https://github.com/xKesvaL/KesvaCMS#readme","bugs":{"url":"https://github.com/xKesvaL/KesvaCMS/issues"},"keywords":["accord","accord-cms","cms","tanstack","tanstack-start","tanstack-router","drizzle-orm","postgresql","admin"],"license":"MIT","exports":{".":"./src/index.ts","./admin":"./src/admin/index.ts","./server":"./src/server/index.ts","./auth-client":"./src/auth-client.ts","./schema":"./src/db/schema.ts","./fields":"./src/fields.ts","./media":"./src/media.ts","./components":"./src/components.ts","./auth":"./src/auth.ts","./mcp":"./src/mcp/index.ts","./lookup":"./src/lookup.ts","./routing":"./src/routing.ts","./pages":"./src/pages.ts","./styles.css":"./styles.css","./admin.css":"./admin.css"},"scripts":{"test":"vp test run","test:watch":"vp test","test:coverage":"vp test run --coverage","check-types":"tsc --noEmit"},"dependencies":{"@base-ui/react":"^1.3.0","@dnd-kit/core":"^6.3.1","@dnd-kit/sortable":"^10.0.0","@dnd-kit/utilities":"^3.2.2","@modelcontextprotocol/sdk":"^1.30.0","@tabler/icons-react":"^3.40.0","class-variance-authority":"^0.7.1","clsx":"^2.1.1","dayjs":"^1.11.23","motion":"^13.2.0","sonner":"^2.0.8","tailwind-merge":"^3.5.0","zod":"^4.3.6"},"devDependencies":{"@types/bun":"latest","@types/node":"^25.5.0","@types/react":"^19.3.0","@vitest/coverage-v8":"catalog:","vite-plus":"catalog:"},"peerDependencies":{"@tanstack/react-form":"^1.33.5","@tanstack/react-router":"^1.170.35","better-auth":"1.7.4","drizzle-orm":"^0.45.2","react":"^19.3.0","react-dom":"^19.3.0","typescript":"^7.0.2"},"peerDependenciesMeta":{"@tanstack/react-form":{"optional":true},"@tanstack/react-router":{"optional":true},"react":{"optional":true},"react-dom":{"optional":true}},"gitHead":"ef959aa43c707d693c3ba0ec6484ca3239a6f72d","_id":"@accord-cms/core@0.1.1","_nodeVersion":"24.21.0","_npmVersion":"11.19.0","dist":{"integrity":"sha512-Iv7BTbe1WrEOgegG5rQeLUDXNk1sk3j3rRaXdm6ZHg1Y1vnRK7rvb58xwTvF2FUX340QypXxwnnwJdrbXL6s7w==","shasum":"18dd6d93b5f8be92f8ad3a37e182ee7ab37f8e55","tarball":"https://registry.npmjs.org/@accord-cms/core/-/core-0.1.1.tgz","fileCount":92,"unpackedSize":847538,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQCaH36iNfswxGn1nfWbY9fVC2sf5T1QGSyULJcHotomkgIhAJ+a7nQ1xEbMbz8rqbqMMwzLfT2u97w37hv9vSQ+N/Kj"}]},"_npmUser":{"name":"kesval","email":"jabeddou@gmail.com"},"directories":{},"maintainers":[{"name":"kesval","email":"jabeddou@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/core_0.1.1_1789239208335_0.3076582268922261"},"_hasShrinkwrap":false}},"time":{"created":"2026-09-11T16:15:11.733Z","modified":"2026-09-12T18:53:28.710Z","0.1.0":"2026-09-11T16:15:12.107Z","0.1.1":"2026-09-12T18:53:28.500Z"},"bugs":{"url":"https://github.com/xKesvaL/KesvaCMS/issues"},"license":"MIT","homepage":"https://github.com/xKesvaL/KesvaCMS#readme","keywords":["accord","accord-cms","cms","tanstack","tanstack-start","tanstack-router","drizzle-orm","postgresql","admin"],"repository":{"type":"git","url":"git+https://github.com/xKesvaL/KesvaCMS.git","directory":"packages/core"},"description":"Self-hosted CMS engine, schema, fields, routing, and admin UI for TanStack Start and PostgreSQL","maintainers":[{"name":"kesval","email":"jabeddou@gmail.com"}],"readme":"# @accord-cms/core\n\nTo install dependencies:\nThe core engine, database schema, field system, block builder, public routing, and Admin UI for [Accord CMS](https://github.com/xKesvaL/KesvaCMS).\n\nAccord is a self-hosted, code-first CMS built on **TanStack Start**, **PostgreSQL**, and **React 19**.\n\n---\n\n## Architecture & Features\n\n- **Code-First Truth**: Collections, fields, and block schemas are defined in TypeScript. Database rows, Zod validators, and admin forms derive directly from your code.\n- **Transactional Versioning**: Monotonic version snapshots on every item save with instant history diffs and one-click rollbacks.\n- **Embedded Admin UI**: Mounts directly into your application at `/_cms/admin` with `<CmsAdminRouter />` and `<AdminShell />`.\n- **Block Component System**: Strongly typed nested blocks with responsive margin/padding/max-width controls and live visual editor.\n- **Model Context Protocol (MCP)**: Native AI agent support exposing tools for content querying, creation, updating, and route resolution.\n- **PostgreSQL & Drizzle**: Native PostgreSQL backing using Drizzle ORM.\n- **BetterAuth**: Complete authentication with role-based access control (RBAC).\n\n---\n\n## Installation\n\n```bash\nbun install\n# Bun\nbun add @accord-cms/core\n\n# pnpm\npnpm add @accord-cms/core\n\n# npm\nnpm install @accord-cms/core\n```\n\nTo run:\nTo scaffold a complete project with all routes, components, and schema configured, use the CLI:\n\n```bash\nbun run index.ts\nbunx @accord-cms/cli create my-accord-app\n```\n\nThis project was created using `bun init` in bun v1.3.9. [Bun](https://bun.com) is a fast all-in-one JavaScript runtime.\n---\n\n## Subpath Exports\n\n`@accord-cms/core` provides modular sub-path exports:\n\n| Export                         | Description                                                                 |\n| ------------------------------ | --------------------------------------------------------------------------- |\n| `@accord-cms/core`             | Core engine, runtime handlers, input schemas, and types                     |\n| `@accord-cms/core/admin`       | Built-in React Admin UI router, shells, and editor components               |\n| `@accord-cms/core/server`      | Server configuration (`defineCmsConfig`) and media providers                |\n| `@accord-cms/core/schema`      | Drizzle PostgreSQL schema definitions (`cms_items`, `cms_assets`, etc.)     |\n| `@accord-cms/core/fields`      | Field types (`text`, `number`, `image`, `relation`, `blocks`, `slug`, etc.) |\n| `@accord-cms/core/components`  | Block definitions (`defineComponent`, `defineBlock`) and responsive helpers |\n| `@accord-cms/core/routing`     | Route registry (`defineCmsRouteRegistry`)                                   |\n| `@accord-cms/core/lookup`      | Runtime route resolution (`resolvePublicRoute`)                             |\n| `@accord-cms/core/auth`        | Server auth utilities and RBAC checks                                       |\n| `@accord-cms/core/auth-client` | Client auth session hooks and helpers                                       |\n| `@accord-cms/core/media`       | Media abstraction and reference tracking                                    |\n| `@accord-cms/core/mcp`         | Model Context Protocol server tools and handlers                            |\n| `@accord-cms/core/pages`       | Page layout and mutation helpers                                            |\n\n---\n\n## Peer Dependencies\n\nEnsure your project installs the required peer dependencies:\n\n- `react` & `react-dom` (>= 19.0.0)\n- `@tanstack/react-start` & `@tanstack/react-router`\n- `drizzle-orm` (pinned to `0.45.2`)\n- `better-auth` (`1.7.4`)\n- `@tanstack/react-form`\n\n---\n\n## License\n\n[MIT](https://github.com/xKesvaL/KesvaCMS)\n","readmeFilename":"README.md"}