Mục tiêu bài viết
Sau bài này, bạn sẽ:- Tạo được một repository trên GitHub
- Mở và chạy dự án trên máy tính
- Deploy dự án lên Vercel để ai cũng truy cập được
Phần 1: Tạo Repository trên GitHub
1
Tạo tài khoản GitHub
- Truy cập github.com
- Nhấn Sign up
- Điền thông tin:
- Username — tên tài khoản (duy nhất, không đổi được sau)
- Email — email xác thực
- Password — mật khẩu (tối thiểu 8 ký tự)
- Xác minh email sau khi đăng ký
- Đăng nhập github.com sau khi xác minh
2
Tạo Repository mới
- Đăng nhập github.com
- Nhấn nút New repository (hoặc nhấn
+ở góc phải trên → New repository) - Điền thông tin:
- Repository name:
claude-code-my-dashboard - Description: Dự án dashboard đầu tiên (tùy chọn)
- Visibility: Chọn Public (ai cũng xem được, miễn phí)
- ❌ KHÔNG tick “Add a README file” (để repo trống, sẽ copy files vào sau)
- Repository name:
- Nhấn Create repository
claude-code-my-dashboard đã được tạo. Ghi lại đường link, ví dụ: https://github.com/your-username/claude-code-my-dashboard.3
Cài GitHub Desktop
- Truy cập desktop.github.com
- Nhấn Download for Windows (hoặc Mac tùy hệ điều hành)
- Chạy file cài đặt
- Khi mở lên, đăng nhập GitHub account:
- Nhấn Sign in to GitHub.com
- Hoàn tất đăng nhập trên trình duyệt
- Xong! GitHub Desktop đã sẵn sàng
4
Mở Repository bằng GitHub Desktop
- Trong GitHub Desktop, chọn File → Clone repository
- Chọn repository
claude-code-my-dashboardtừ danh sách - Chọn Local path — thư mục trên máy để lưu (ví dụ:
Documents/claude-code-my-dashboard) - Nhấn Clone
5
Copy code vào thư mục repo
- Quay lại trình duyệt, mở repository
https://github.com/ngothanhtung/claude-code-shadcn-dashboardtrên github.com - Nhấn nút Code (màu xanh lá)
- Nhấn Download ZIP: https://github.com/ngothanhtung/claude-code-shadcn-dashboard/archive/refs/heads/main.zip
- Mở file ZIP đã tải về, giải nén (Extract) vào thư mục tạm trên máy tính của bạn (ví dụ: Desktop → thư mục “temp”)
- Mở thư mục đã giải nén, chọn tất cả files bên trong
- Copy (Ctrl+C hoặc Cmd+C)
- Mở thư mục
claude-code-my-dashboardmà bạn đã clone ở Bước 4 - Paste (Ctrl+V hoặc Cmd+V) vào thư mục đó
6
Đẩy code lên GitHub
- Quay lại GitHub Desktop
- Panel bên trái hiển thị danh sách files đã thay đổi
- Trong ô Summary, gõ mô tả:
Initial project setup - Nhấn Commit to main
- Nhấn Push origin (nút mũi tên hướng lên ở thanh toolbar)
claude-code-my-dashboard, bạn sẽ thấy tất cả files.Phần 2: Chạy dự án trên máy tính
1
Mở thư mục repo trong VS Code
- Mở VS Code
- Chọn File → Open Folder
- Tìm và chọn thư mục
claude-code-my-dashboard(thư mục mà GitHub Desktop đã clone) - Nhấn Open
2
Cài đặt npm packages
- Trong VS Code, mở Terminal (nhấn phím
Ctrl+`hoặcCmd+`) - Gõ lệnh sau và nhấn Enter:
- Chờ vài phút cho đến khi Terminal hiển thị dấu
>trở lại (không còn chạy)
npm install tải tất cả thư viện cần thiết cho dự án. Cần internet để chạy lệnh này.3
Tạo Firebase project
- Truy cập firebase.google.com
- Nhấn Get started
- Nhấn Add project
- Điền thông tin:
- Project name:
claude-code-my-dashboard - Description: Dự án dashboard đầu tiên (tùy chọn)
- Project name:
- Nhấn Continue
- Nhấn Create project
4
Tạo Web App trong Firebase project
- Chọn Dashboard project
- Nhấn nút Add app (hình web)
- Chọn Web
- Register app:
- App nickname: đặt tên tùy ý (ví dụ:
my-dashboard) - Firebase Hosting: BỎ TICK (chỉ dùng Firestore, không dùng hosting)
- Nhấn Register app
- App nickname: đặt tên tùy ý (ví dụ:
- Sau khi tạo xong, Firebase hiện ra object
firebaseConfigvới các thông số API key. - Tạo file
.env.localtrong thư mục gốc dự án, sao chép đoạn mã cấu hình Firebase và dán vào, thay thế các giá trị tương ứng như sau:
5
Chạy dự án
Trước khi chạy dự án, cấu hình các phần sau ở Firebase:
Firebase Auth
Email/Password Provider- Vào Authentication
- Chọn Sign-in method
- Chọn Email/Password
- Nhấn Enable
- Vào Authentication
- Chọn Sign-in method
- Chọn Google
- Nhấn Enable
Firebase Firestore
- Vào Firestore Database
- Nhấn Create database
- Chọn Start in test mode
- Chọn khu vực (Region) gần nhất với vị trí người dùng
- Nhấn Enable
Khởi động dự án
- Trong Terminal, gõ lệnh sau và nhấn Enter:
- Terminal sẽ hiển thị URL, thường là
http://localhost:3000 - Nhấn giữ Ctrl (hoặc Cmd) + click vào URL đó để mở trình duyệt
Phần 3: Deploy lên Vercel
1
Tạo tài khoản Vercel
- Truy cập vercel.com
- Nhấn Sign Up
- Chọn Continue with GitHub để đăng nhập bằng tài khoản GitHub
- Nhấn Authorize Vercel để cấp quyền truy cập GitHub
- Chọn All repositories hoặc Only select repositories rồi nhấn Install
Việc kết nối Vercel với GitHub cho phép Vercel tự động lấy code mỗi khi bạn push thay đổi lên GitHub.
2
Tạo Project mới
- Từ Vercel Dashboard, nhấn Add New… → Project
- Vercel hiển thị danh sách repository GitHub
- Tìm và chọn repository
claude-code-my-dashboard - Nhấn Import
3
Cấu hình Project
Trang Configure Project hiển thị các tuỳ chọn:
4
Deploy
- Nhấn Deploy
- Chờ 30-60 giây cho Vercel build và triển khai
- Khi hoàn tất, Vercel gán URL dạng:
https://claude-code-my-dashboard.vercel.app
Phần 4: Cập nhật ứng dụng sau khi deploy lần đầu
Khi bạn chỉnh sửa code trong VS Code:1
Sửa file trong VS Code
Mở file cần chỉnh sửa trong VS Code và lưu lại (Ctrl+S hoặc Cmd+S).
2
Commit và push lên GitHub
Mở GitHub Desktop → kiểm tra thay đổi → gõ mô tả trong ô Summary → nhấn Commit to main → Push origin.
3
Vercel tự động deploy
Vercel phát hiện thay đổi trên GitHub và tự động deploy sau 30-60 giây. Không cần làm gì thêm — auto-deploy!
Phần 5: Tạo Firebase Admin SDK
Firebase Admin SDK cho phép ứng dụng Next.js phía server (API Routes, Server Actions) giao tiếp với Firebase với quyền quản trị — không bị giới hạn bởi Security Rules.1
Tạo Service Account
- Truy cập Firebase Console → chọn project của bạn
- Nhấn Project settings (biểu tượng bánh răng ⚙️ ở thanh bên trái)
- Chọn tab Service accounts
- Nhấn Generate new private key
- Xác nhận bằng cách nhấn Generate key
- Firebase tải về một file JSON — lưu an toàn, không commit file này lên GitHub
2
Lấy 3 thông số từ file JSON
Mở file JSON vừa tải về, tìm và sao chép 3 giá trị sau:
Ví dụ file JSON trông như sau:
3
Thêm vào file .env.local
Mở file
.env.local trong thư mục gốc dự án, thêm 3 dòng sau:Giá trị
FIREBASE_PRIVATE_KEY phải để trong dấu nháy kép "..." và giữ nguyên các ký tự \n trong chuỗi.4
Thêm biến môi trường lên Vercel
Các biến Admin SDK không có tiền tố
NEXT_PUBLIC_ nên chỉ hoạt động phía server và cần thêm vào Vercel riêng:- Mở Vercel Dashboard → chọn project
- Vào Settings → Environment Variables
- Thêm lần lượt 3 biến:
FIREBASE_PROJECT_IDFIREBASE_CLIENT_EMAILFIREBASE_PRIVATE_KEY
- Nhấn Save
- Redeploy project để áp dụng