Introduction
Installation
Next.jsViteLaravelReact RouterRemixAstroTanStack StartTanStack RouterManual InstallationMCP
All componentsTheme
FieldFormInputText FieldTextareaSearch FieldInput OTPNumber FieldNumber FormatSliderCheckboxSwitchRadioSelectCombo BoxList BoxChoice BoxMulti SelectToken FieldNewTag FieldTag GroupCalendarDate FieldDate PickerDate Range PickerRange CalendarTime FieldColor PickerColor FieldColor AreaColor SliderColor SwatchColor Swatch PickerColor ThumbColor WheelDrop ZoneFile Trigger
ButtonButton GroupToggleToggle GroupPreskok Auth Button
EditorHeadingLinkTextKeyboard
CardContainerGrid ListResizableTableTreeSeparatorDescription ListScroll AreaShow MoreToolbar
BreadcrumbsNavbarPaginationTabsSidebar
DialogModalDrawerPopoverPreview TriggerNewSheetTooltipContext MenuDropdownCommandCommand MenuDisclosureMenu
ToastProgress BarProgress CircleMeterLoaderSkeletonNoteBadge
Chart (helpers)Area ChartBar ChartLine ChartPie ChartExperimental ChartsNewExperimental Radial ChartNewExperimental Radar ChartNewBar ListTracker
Async ImageAvatarCarouselPreskok Icon
Installation

Manual Installation

Configure Preskok UI without a framework preset.

View as MarkdownAsk ChatGPT

Add Tailwind CSS

Components are styled with Tailwind CSS. Install Tailwind CSS in your project before adding Preskok UI.

Follow the Tailwind CSS installation instructions to get started.

Configure path aliases

Configure the @ path alias in your tsconfig.json file.

tsconfig.json
{
  "compilerOptions": {
    "baseUrl": ".",
    "paths": {
      "@/*": ["./src/*"]
    }
  }
}

Create components.json

Create a components.json file in the root of your project.

components.json
{
  "$schema": "https://ui.shadcn.com/schema.json",
  "style": "aria-nova",
  "rsc": false,
  "tsx": true,
  "tailwind": {
    "config": "",
    "css": "src/styles/globals.css",
    "baseColor": "neutral",
    "cssVariables": true,
    "prefix": ""
  },
  "aliases": {
    "components": "@/components",
    "utils": "@/lib/utils",
    "ui": "@/components/ui",
    "lib": "@/lib",
    "hooks": "@/hooks"
  },
  "registries": {
    "@preskok": "https://ui-three-mu.vercel.app/r/{name}.json"
  },
  "iconLibrary": "lucide"
}

aria-nova tells shadcn that Preskok components use React Aria primitives. The local @preskok registry namespace keeps the project configuration self-contained and enables registry discovery through the shadcn MCP server.

Add components

You can now add Preskok components to your project.

npx shadcn@latest add @preskok/button

The command above will add the Button component to src/components/ui/preskok-ui/button.tsx. You can then import it like this:

src/App.tsx
import { Button } from "@/components/ui/preskok-ui/button"

export function App() {
  return <Button>Click me</Button>
}

TanStack Router

Install and configure Preskok UI for TanStack Router.

MCP

Use Preskok UI with the shadcn MCP server.

On this page

Add Tailwind CSS
Configure path aliases
Create components.json
Add components