---
title: "Getting started"
description: "Install `koten-theme` and `koten-i18n`, copy the primitives you need with the shadcn CLI and wrap the app in `KotenProvider`. Works with any project that already uses shadcn."
docs: "https://koten.codehive.com.co/start"
language: en
---

# Getting started

> Install `koten-theme` and `koten-i18n`, copy the primitives you need with the shadcn CLI and wrap the app in `KotenProvider`. Works with any project that already uses shadcn.

## Commands

Commands accept `npx` (Node) or `bunx` (Bun).

```bash
# 1 · tokens, themes and density
npx shadcn@latest add https://koten.codehive.com.co/r/koten-theme.json

# 2 · i18n runtime and English base
npx shadcn@latest add https://koten.codehive.com.co/r/koten-i18n.json

# 3 · a component
npx shadcn@latest add https://koten.codehive.com.co/r/button.json
```

## Rules

- Install `koten-theme` before any component: it writes tokens, themes and density into your `tailwind.css`.
- Components depend on the `koten-i18n` runtime; add `koten-i18n-es` or `koten-i18n-ja` only for those dictionaries.
- Wrap the app in `KotenProvider` with the product's BCP 47 locale; English is the base.
- Compose with `render`; never use `asChild`.
- Do not add Japanese text or decoration unless the user asks for it (R-031).

## Read next

- [Markdown page](https://koten.codehive.com.co/md/start.md)
- [Agent index (llms.txt)](https://koten.codehive.com.co/llms.txt)
- [Full documentation (llms-full.txt)](https://koten.codehive.com.co/llms-full.txt)
