용어 상자
각 장 첫머리의 회색 상자가 그 장에서 처음 나오는 말이다. 모르는 단어가 나왔는데 상자에 없다면 12장 용어 사전에 있다.
앱의 외모를 한 곳에 모아 이름 붙인 것이 테마다. shadcn/ui는 그 테마를 다루는 도구다.
아래 버튼을 눌러보면 이 덱이 무슨 이야기를 할지 한 번에 드러난다. HTML은 한 글자도 바뀌지 않는다. 바뀌는 것은 이름에 매달린 값뿐이다.
이 하나가 되면 나머지가 전부 따라온다 — 다크 모드, 브랜드 교체, 팀 전체의 일관성. 안 되면 디자인을 바꿀 때마다 파일 200개를 찾아 고치게 된다.
첫 장부터 읽기shadcn/ui를 “컴포넌트 복사해 쓰는 도구”가 아니라 “테마를 관리하는 방식”으로 설명한다.
Next.js 16 · React 19 · Tailwind CSS 4 · shadcn CLI 4.x 기준이다.
앱의 외모를 다섯 리소스로 쪼개 이름을 붙인다
용어 상자
각 장 첫머리의 회색 상자가 그 장에서 처음 나오는 말이다. 모르는 단어가 나왔는데 상자에 없다면 12장 용어 사전에 있다.
표시 약속
:::tip 상자는 꼭 기억할 원칙,
:::caution 상자는 실제로 자주 겪는 함정이다.
가장 중요한 세 장
2장 테마 = 리소스 목록 · 4장 색 리소스 · 10장 내 테마 만들기. 급하면 이 셋만 읽어도 된다.
곁가지는 뺐다
“이런 것도 있다” 수준의 기능은 한 줄로만 적고 넘어간다. 빠진 목록은 0장에 정리해 뒀다.
프론트엔드 덱에도 shadcn/ui 장이 있다. 그쪽은 Next.js · Tailwind · shadcn/ui 세 도구를 한 흐름으로 훑고, 이 덱은 shadcn/ui 하나를 테마 관점으로 깊게 판다. 겹치는 곳은 이쪽이 더 자세하다.
Tailwind CSS 자체(유틸리티 클래스가 무엇인지, @theme이 무엇인지)를 아직 모른다면
프론트엔드 10장을 먼저 보고 오는 편이 빠르다.