コンテンツへスキップ

Vite

Vite + ReactプロジェクトにNeobrutalismをセットアップします。

1. プロジェクトを作成する

Viteで新しいReact + TypeScriptプロジェクトを作成します。

pnpm create vite@latest my-app -- --template react-ts
npm create vite@latest my-app -- --template react-ts
yarn create vite@latest my-app -- --template react-ts
bun create vite@latest my-app -- --template react-ts

2. Tailwind CSSをインストールする

pnpm add tailwindcss @tailwindcss/vite
npm install tailwindcss @tailwindcss/vite
yarn add tailwindcss @tailwindcss/vite
bun add tailwindcss @tailwindcss/vite

src/index.cssの中身をすべて次のものに置き換えます。

src/index.css
@import "tailwindcss";

3. パスエイリアスを設定する

@/*エイリアスが解決されるように、tsconfig.jsontsconfig.app.jsonの両方にbaseUrlpathsを追加します。

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

4. vite.config.tsを更新する

Nodeの型定義をインストールし、Viteにエイリアスの解決方法を教えます。

pnpm add -D @types/node
npm install -D @types/node
yarn add -D @types/node
bun add -D @types/node
vite.config.ts
import path from "path"
import tailwindcss from "@tailwindcss/vite"
import react from "@vitejs/plugin-react"
import { defineConfig } from "vite"
 
export default defineConfig({
  plugins: [react(), tailwindcss()],
  resolve: {
    alias: {
      "@": path.resolve(__dirname, "./src"),
    },
  },
})

5. 初期化を実行する

pnpm dlx shadcn@latest init
npx shadcn@latest init
yarn dlx shadcn@latest init
bunx --bun shadcn@latest init

6. Neobrutalismレジストリとテーマを追加する

Neobrutalismのレジストリをcomponents.jsonに追加し、フォントとテーマをセットアップします。

components.json
{
  "registries": {
    "@neobrutalism": "https://neobrutalism.com/r/radix/{name}.json",
    "@neobrutalism-base": "https://neobrutalism.com/r/base/{name}.json"
  }
}

7. コンポーネントを追加する

pnpm dlx shadcn@latest add @neobrutalism/button
npx shadcn@latest add @neobrutalism/button
yarn dlx shadcn@latest add @neobrutalism/button
bunx --bun shadcn@latest add @neobrutalism/button

これで完了です!任意のコンポーネントのRadixまたは Base UIバリアントを同じ方法で追加できます。