01101 component sẵn sàng cho production
Từ các thành phần cơ bản đến bố cục trang hoàn chỉnh — 101 component, mỗi cái được trích từ một sản phẩm chúng tôi đã phát hành thay vì thiết kế biệt lập. Component nào có trong PDS thì đã từng làm việc thực tế: website này, các bản demo sản phẩm và dashboard của khách hàng đều chạy trên nó.
02Design token
Màu sắc, kiểu chữ, khoảng cách và chuyển động đều xuất phát từ một lớp token duy nhất. Đổi một token, mọi component đổi theo — không ghi đè từng component, không lệch giữa các sản phẩm.
03Hai giao diện, năm màu nhấn
Một giao diện tối và một giao diện sáng, năm màu nhấn, tất cả đều do cùng các token điều khiển. Biến thể thương hiệu chỉ là hoán đổi token, không phải fork — mọi sản phẩm trong dòng đều render từ cùng một hệ thống.
04Ưu tiên giao diện tối
Độ tương phản, độ nổi và màu sắc được tinh chỉnh trên giao diện tối trước; giao diện sáng được suy ra từ cùng các token. Kết quả là chế độ tối tự nhiên, không phải bản đảo màu.
05Thành phần biểu mẫu
Nút, ô nhập, select, switch, slider và khung trường nhập — gồm cả nhãn, gợi ý và thông báo lỗi. Các trạng thái đã được thiết kế sẵn: focus, disabled, invalid và loading hoạt động giống nhau ở mọi sản phẩm.
06Bố cục và composition
Stack, grid, đường phân cách và khung trang giúp dựng màn hình mà không cần CSS ad-hoc. Các component lớn nhất là bố cục trang hoàn chỉnh — mẫu hero, section và footer được lấy từ những trang chúng tôi đã phát hành.
07Điều hướng
Header, tab, breadcrumb và menu với hành vi responsive và bàn phím được tích hợp sẵn. Thanh điều hướng của website này chính là component đó, không phải bản mô phỏng.
08Overlay
Modal, sheet, drawer, popover và tooltip trên cùng một mô hình phân lớp — bẫy focus, đóng và xếp chồng được xử lý một lần, tập trung. Không sản phẩm nào phải tự tính z-index.
09Hiển thị dữ liệu
Bảng, danh sách, thẻ số liệu, badge và timeline cho những sản phẩm sống bằng con số. Mật độ thông tin của các operator console trong toàn dòng sản phẩm đều đến từ các component này.
10Phản hồi và trạng thái
Toast, banner, trạng thái trống, tiến trình và skeleton — những trạng thái ít hào nhoáng nhưng được thiết kế từ đầu. Sản phẩm xây trên PDS luôn có câu trả lời chu đáo cho các trạng thái đang tải, trống và lỗi.
11Kiểu chữ
Thang kiểu chữ mang phong cách biên tập, với nhãn mono cho sắc thái kỹ thuật — giọng điệu bạn thấy trên mọi bề mặt của Protocore. Thang chữ là các token, nên sản phẩm có thể tinh chỉnh mà không rời khỏi hệ thống.
12Chuyển động
Thời lượng và easing được phát hành dưới dạng token, kèm các component đã dùng sẵn. Giao diện chuyển động nhất quán giữa các sản phẩm vì không ai chỉnh lại thời gian animation bằng tay.
13Khả năng truy cập mặc định
Độ tương phản, trạng thái focus và hành vi bàn phím được tích hợp trong component, không bỏ lại như một bài tập. Dùng mặc định là có sẵn khả năng truy cập.
14CSS zero-runtime
Phần styling là CSS tĩnh được xử lý lúc build — không có runtime CSS-in-JS, không tính toán gì trong trình duyệt. Lớp styling không thêm một dòng JavaScript nào vào trang.
15Lớp CSS không phụ thuộc framework
Hệ thống cũng được phát hành dưới dạng gói CSS thuần — token và utility class, không cần React. Trang server-rendered, email và các stack không dùng React đều lấy từ cùng một nguồn chuẩn.
16Xuất token theo từng stack
Token được xuất cho web dưới dạng biến CSS, preset Tailwind và các định dạng native cho nền tảng di động. Một định nghĩa duy nhất về thương hiệu, dùng ở bất cứ nơi nào sản phẩm chạy.
17Theme provider và hook
Lớp React bọc ứng dụng trong một provider và cung cấp token qua hook — component đọc theme và màu nhấn đang dùng thay vì gắn cứng giá trị. Đổi giao diện là đổi state, không phải build lại.
18Theming whitelabel
Cơ chế giúp PDS có năm màu nhấn cũng mang lại thương hiệu riêng cho sản phẩm whitelabel: đổi giá trị token, giữ nguyên component. Mọi ứng dụng whitelabel trong dòng sản phẩm đều là bằng chứng cho điều đó.
19Bản đồ llms.txt
Một bản đồ máy đọc được của toàn hệ thống — component, token, pattern — xuất bản dưới dạng llms.txt. Trỏ LLM tới đó, mã được sinh ra sẽ dùng component PDS thật thay vì tự bịa ra những cái nghe có vẻ hợp lý.
20MCP server
MCP server mở hệ thống trực tiếp cho coding agent: component, prop và token, truy vấn được ngay khi agent đang xây dựng. Design system tự trả lời câu hỏi thay vì bị dán vào prompt.
21Tài liệu đầy đủ từ đầu đến cuối
Mọi component đều có tại pds.protocore.io kèm ví dụ trực tiếp, prop và đoạn mã sao chép dùng ngay. Tài liệu được render bằng chính PDS — bạn đọc gì thì phát hành đúng cái đó.
22Phát hành theo phiên bản
PDS được phát hành dưới dạng các gói có phiên bản ngữ nghĩa và changelog. Nâng cấp là quyết định chủ động: đội ngũ tự chọn lúc chuyển, và changelog nói rõ chính xác điều gì đã thay đổi.
23Registry riêng
Các gói được cài từ npm registry riêng của Protocore bằng token theo từng team trong .npmrc — quy trình npm chuẩn, giới hạn cho các team có giấy phép. Không file zip đính kèm, không cài đặt bằng sao chép thủ công.
24Khóa cấp phép offline
Khóa cấp phép đã ký được xác minh cục bộ — không phone-home, không kiểm tra mạng trong quá trình build. Vấn đề về giấy phép chỉ hiện dưới dạng cảnh báo khi phát triển và không bao giờ làm hỏng ứng dụng production.
25Cấp phép theo team
PDS là phần mềm độc quyền và được cấp phép theo từng team. Hãy yêu cầu quyền truy cập, chúng tôi sẽ thiết lập cho bạn — gói, tài liệu và nguồn token — để một team có thể áp dụng chỉ trong một buổi chiều.