Developer Guidev1.1.0

Getting Started with Quinkit UI

Install the component library, load global CSS tokens, pair base themes with palette presets, and build production web apps in minutes.

01

System Requirements

React 18 / 19

Supports React 18 & 19 Server/Client Components.

Next.js 14 / 15 / 16

Compatible with App Router & Turbopack builds.

Node.js 18+

Requires Node.js 18.0.0 or higher.

02

Install Package

Add the core package. Most components (Button, Input, Dialog, Card, …) work with this alone:

bash
pnpm add @quinkit/ui
bash
npm install @quinkit/ui
02b

Optional Feature Peers

A few specialized components keep heavy engines out of the default install. Add the matching peer only when you use that feature:

Calendar / DateRangePicker
pnpm add @quinkit/ui react-day-picker
DataTable
pnpm add @quinkit/ui @tanstack/react-table
Form
pnpm add @quinkit/ui react-hook-form
Command / Combobox
pnpm add @quinkit/ui cmdk
Toast
pnpm add @quinkit/ui sonner
03

Import Styles & CSS Tokens

Import the main `@quinkit/ui/styles` sheet once at your application root (e.g. `app/layout.tsx` or `src/main.tsx`):

tsx
import "@quinkit/ui/styles";
04

Render Components

Import primitives directly from `@quinkit/ui` with zero setup configuration needed:

tsx
import { Button } from "@quinkit/ui";
05

Apply Themes & Palettes

Set `data-theme` and `data-palette` attributes on your root <html> or container element:

tsx
/* Next.js Root Layout */
export default function RootLayout({ children }: { children: React.ReactNode }) {
  return (
    <html lang="en" data-theme="dashboard" data-palette="default-blue" className="dark">
      <body>{children}</body>
    </html>
  );
}
06

Tailwind CSS v4 Integration

If using Tailwind CSS v4, import styles directly in your main CSS file:

css
@import "tailwindcss";
@import "@quinkit/ui/styles";

Troubleshooting & FAQs

Calendar / DataTable / Form missing module?

Those components need optional peers (`react-day-picker`, `@tanstack/react-table`, `react-hook-form`, `cmdk`, or `sonner`). Install the peer listed on that component's docs page.

Components look unstyled?

Ensure `import "@quinkit/ui/styles"` is included at your app root before any component imports.

Dark mode not applying?

Add `className="dark"` to your <html> element alongside `data-theme` and `data-palette`.