Mục tiêu bài viết

Sau bài này, bạn sẽ tạo được một dự án Next.js admin dashboard có:
  • Next.js App Router, TypeScript và Tailwind CSS
  • shadcn/ui được cấu hình bằng preset b0
  • Toàn bộ UI components chính thức của shadcn/ui
  • Layout admin gồm sidebar, header, dashboard overview, bảng dữ liệu, form, dialog, chart và settings
  • Prompt rõ ràng để giao Claude Code triển khai từng phần
shadcn/ui không hoạt động như một thư viện UI đóng gói sẵn. CLI sẽ copy mã nguồn component vào dự án của bạn để bạn chỉnh sửa trực tiếp.

Phần 1: Khởi tạo dự án Next.js bằng shadcn CLI

Bạn có hai cách khởi tạo.
Chạy lệnh sau trong thư mục bạn muốn tạo dự án:
Lệnh này dùng shadcn CLI để scaffold một dự án Next.js và áp dụng preset b0.
Theo tài liệu shadcn/ui hiện tại, init có thể tạo project mới với --template next, còn --preset dùng để áp dụng cấu hình design system.

Phần 2: Chạy dự án

Sau khi khởi tạo xong, vào thư mục dự án và chạy development server:
  1. Mở VS Code và mở thư mục dự án
  2. Mở terminal trong VS Code
  3. Chạy lệnh sau và nhấn Enter:
Terminal hiển thị, thường là:

Phần 3: Thêm toàn bộ shadcn/ui components

Chạy lệnh sau trong thư mục project:
Lệnh này thêm toàn bộ component có sẵn từ registry chính thức của shadcn/ui vào dự án.
Không nên chạy add --all cho production app nếu bạn chỉ cần vài component. Với bài thực hành dashboard, lệnh này hữu ích vì bạn muốn có đầy đủ component để Claude Code dùng khi xây giao diện.
Bạn cũng có thể thêm từng nhóm component nếu muốn kiểm soát tốt hơn:

Phần 4: Cấu trúc admin dashboard chuẩn

Một admin dashboard nên có các phần sau:

Phần 5: Giao Claude Code dựng dashboard từng bước

Thay vì yêu cầu Claude Code tạo tất cả trong một lần, hãy chia dashboard thành các bước nhỏ.
1

Tạo app shell

Trước tiên, thêm block sidebar chuẩn từ shadcn/ui:
Sau đó giao Claude Code chuyển sidebar mẫu thành layout dùng chung cho nhóm route private.
2

Tạo trang overview

Thêm dashboard home page với chỉ số, biểu đồ và activity feed.
3

Tạo trang users

Xây trang quản lý người dùng với bảng dữ liệu.
4

Tạo form thêm và sửa dữ liệu

Dùng dialog hoặc sheet cho workflow tạo user.
5

Tạo trang analytics

Dùng chart và filter thời gian cho báo cáo.
6

Tạo trang settings

Dựng cấu hình tài khoản và hệ thống.

Phần 6: Prompt tổng hợp cho Claude Code

Khi bạn muốn Claude Code thực hiện toàn bộ quy trình từ đầu, dùng prompt này:

Phần 7: Danh sách shadcn/ui components nên biết

Theo danh sách components chính thức hiện tại, shadcn/ui có các nhóm chính sau.

Hiển thị dữ liệu

Form và nhập liệu

Điều hướng và bố cục

Overlay và phản hồi

Phần 8: Kiểm tra trước khi tiếp tục

Chạy các lệnh sau:
Nếu dự án có script lint:
Sau đó kiểm tra thủ công:
  • Sidebar hoạt động trên desktop và mobile
  • Header không đè lên content
  • Bảng users có search, filter và pagination
  • Dialog form submit được và có toast
  • Chart render đúng
  • Empty, loading và error states có giao diện rõ ràng

Tài liệu tham khảo