Tailwind CSS 통합
TanStack Start 프로젝트에서 Tailwind CSS를 사용하고 싶으신가요?
이 가이드에서는 TanStack Start 프로젝트에서 Tailwind CSS를 사용하는 방법을 안내합니다.
Tailwind CSS 버전 4(최신)
Tailwind CSS의 최신 버전은 4입니다. 이 버전에는 Tailwind CSS 버전 3과 크게 다른 몇 가지 구성 변경 사항이 있습니다. Vite 또는 Rsbuild를 사용하여 TanStack Start 프로젝트에 Tailwind CSS 버전 4를 설정하는 것이 더 쉽고 권장됩니다.
Tailwind CSS 설치
Tailwind CSS와 빌드 도구용 통합 패키지를 설치합니다.
Vite
npm install tailwindcss @tailwindcss/vite
Rsbuild
npm install tailwindcss @tailwindcss/postcss postcss
Tailwind CSS 구성
빌드 도구 구성에 Tailwind CSS를 추가합니다.
Vite
import { defineConfig } from 'vite'
import tsConfigPaths from 'vite-tsconfig-paths'
import { tanstackStart } from '@tanstack/react-start/plugin/vite'
import tailwindcss from '@tailwindcss/vite'
import viteReact from '@vitejs/plugin-react'
export default defineConfig({
server: {
port: 3000,
},
plugins: [tsConfigPaths(), tanstackStart(), viteReact(), tailwindcss()],
})
Rsbuild
import { defineConfig } from '@rsbuild/core'
import { pluginReact } from '@rsbuild/plugin-react'
import { tanstackStart } from '@tanstack/react-start/plugin/rsbuild'
export default defineConfig({
server: {
port: 3000,
},
plugins: [pluginReact(), tanstackStart()],
})
export default {
plugins: {
'@tailwindcss/postcss': {},
},
}
CSS 파일에서 Tailwind를 가져옵니다
버전 4에서는 구성 파일 대신 Tailwind CSS를 구성할 CSS 파일을 생성해야 합니다. src/styles/app.css 파일을 생성하거나 원하는 이름으로 지정할 수 있습니다.
/* src/styles/app.css */
@import 'tailwindcss' source('../');
__root.tsx 파일에서 CSS 파일을 가져옵니다
__root.tsx 파일에서 CSS 파일을 가져옵니다.
Vite
?url 쿼리를 사용하고 파일 맨 위에 삼중 슬래시 지시문을 추가해야 합니다.
// src/routes/__root.tsx
/// <reference types="vite/client" />
// other imports...
import appCss from '../styles/app.css?url'
export const Route = createRootRoute({
head: () => ({
meta: [
// your meta tags and site config
],
links: [{ rel: 'stylesheet', href: appCss }],
// other head config
}),
component: RootComponent,
})
Rsbuild
Start가 생성된 스타일시트를 라우트 애셋으로 탐색할 수 있도록 부수 효과 import를 사용합니다.
// src/routes/__root.tsx
import { createRootRoute } from '@tanstack/react-router'
import '../styles/app.css'
export const Route = createRootRoute({
head: () => ({
meta: [
// your meta tags and site config
],
// other head config
}),
component: RootComponent,
})
프로젝트 어디서나 Tailwind CSS를 사용합니다
이제 프로젝트 어디서나 Tailwind CSS를 사용할 수 있습니다.
// src/routes/index.tsx
import { createFileRoute } from '@tanstack/react-router'
export const Route = createFileRoute('/')({
component: Home,
})
function Home() {
return <div className="bg-red-500 text-white p-4">Hello World</div>
}
이것으로 끝입니다! 이제 프로젝트 어디서나 Tailwind CSS를 사용할 수 있습니다 🎉.
Tailwind CSS 버전 3(레거시)
Tailwind CSS 버전 3을 사용하려면 다음 단계를 따릅니다.
Tailwind CSS를 설치합니다
Tailwind CSS와 피어 종속성을 설치합니다.
npm install -D tailwindcss@3 postcss autoprefixer
그런 다음 Tailwind 및 PostCSS 구성 파일을 생성합니다.
npx tailwindcss init -p
템플릿 경로를 구성합니다
tailwind.config.js 파일에 모든 템플릿 파일의 경로를 추가합니다.
// tailwind.config.js
/** @type {import('tailwindcss').Config} */
export default {
content: ['./src/**/*.{js,ts,jsx,tsx}'],
theme: {
extend: {},
},
plugins: [],
}
CSS 파일에 Tailwind 지시문 추가
Tailwind의 각 레이어에 대한 @tailwind 지시문을 src/styles/app.css 파일에 추가합니다.
/* src/styles/app.css */
@tailwind base;
@tailwind components;
@tailwind utilities;
[!NOTE]
__root.tsx파일에서 CSS 파일을 가져오는 방법은__root.tsx파일에서 CSS 파일 가져오기로 이동하여 확인합니다.