Installation
Last updated on 2026-03-22
This guide walks you through setting up the Blog CMS Kit from scratch.
System Requirements
- Node.js 18.17 or later
- pnpm (recommended), npm, or yarn
- Git for cloning the repository
Step 1 — Clone the Repository
Use the private repository URL from your purchase confirmation email:
git clone <your-repo-url> blog-cms-kit
cd blog-cms-kit
Step 2 — Install Dependencies
pnpm install
This installs Next.js 16, React 19, Tailwind CSS v4, shadcn/ui components, Recharts, date-fns, and all utility libraries.
Key Dependencies
| Package | Purpose |
|---|---|
next 16.x |
React framework |
react 19.x |
UI library |
tailwindcss 4.x |
CSS framework with oklch tokens |
@base-ui/react |
Accessible UI primitives |
recharts |
Analytics dashboard charts |
date-fns |
Date formatting and utilities |
lucide-react |
Icons |
next-themes |
Dark mode |
sonner |
Toast notifications |
Step 3 — Start the Dev Server
pnpm dev
Visit http://localhost:3000 to see the blog homepage.
Step 4 — Verify the Setup
Navigate through key pages to confirm everything works:
/— Homepage with featured hero, category tabs, post grid, newsletter/posts/building-design-system-tailwind-v4— Article detail page/search— Search with real-time filtering/admin— Admin dashboard with stats and activity/admin/posts— Posts list with status tabs and bulk actions/admin/analytics— Analytics charts (pageviews, traffic, subscribers)/login— Authentication page
Available Scripts
| Command | Description |
|---|---|
pnpm dev |
Start dev server |
pnpm build |
Create production build |
pnpm start |
Run production server |
pnpm lint |
Run ESLint checks |
Integrating into an Existing Project
- Copy
components/into your project (ui, blog, admin, layout directories) - Copy
data/seed.tsandtypes/index.ts - Copy design tokens from
app/globals.css - Install the required dependencies from
package.json - Wire up seed data to your actual database, CMS, or API
Note: All pages use seed data from
data/seed.ts. Replace with your own data source (API, database, headless CMS) when integrating.
Troubleshooting
Port 3000 already in use:
pnpm dev --port 3001
TypeScript errors after installation:
npx tsc --noEmit
Check that tsconfig.json path aliases match your project structure.
shadcn/ui component issues:
The Blog CMS Kit uses shadcn/ui v4 with @base-ui/react (not Radix). Components use the render prop pattern instead of asChild. See the shadcn/ui v4 docs for details.