Claude Skill MartKhám phá skillCâu dùng ngayHọc qua videoDùng terminalSkill là gì?
← Về danh sách

Compose Data Layer Guard

Bộ quy tắc nghiêm ngặt để thiết kế và review tầng data (repository, Ktor, Room, Paging) cho ứng dụng Compose / Compose Multiplatform.

Lập trìnhNâng cao★ 300⑂ 25Điểm AI 9/10Cập nhật lần cuối: 2 thg 10, 2026

Làm được gì

Đây là bộ luật dành riêng cho tầng data của dự án Compose / Compose Multiplatform.

  • Ép ranh giới DTO → domain → UiModel (DTO/Entity luôn internal, bắt buộc có mapper)
  • Ktor client với expectSuccess = true, refresh bearer token, chọn WebSocket hay SSE
  • Room, DataStore (Preferences), Paging 3, offline-first bằng RemoteMediator
  • Nguyên tắc lan truyền lỗi: không catch trong repository, đẩy lên launchGuarded
  • Test tầng data bằng MockEngine và fake thay vì mock
  • Cổng kiểm tra cuối cùng gồm lệnh grep và build/test

Phù hợp với ai

  • Lập trình viên Android / Kotlin Multiplatform dùng Jetpack Compose
  • Tech lead muốn biến chuẩn review của team thành quy tắc AI tự áp dụng
  • Người đang dọn dẹp tầng data cũ lộn xộn giữa network, DB và cache

Ví dụ sử dụng

  1. "Tạo repository cho danh sách đơn hàng" → đặt tên hợp đồng (getOrdersStream), bố trí DTO/mapper, liệt kê đường lỗi.
  2. "Review tầng data của PR này" → phát hiện *Dto public, timestamp dạng String trong domain, NetworkException bị nuốt.
  3. "Thêm cache offline cho feed cuộn vô hạn" → gợi ý RemoteMediator + Room và tách PagingData ra khỏi UiState.

· · · Hướng dẫn cài đặt · · ·

Dùng thử ngay, không cần cài

Dán đoạn dưới vào Claude là dùng được skill này mà không cần cài đặt.

Hãy đọc hướng dẫn trong tệp này và làm theo để giúp mình:
https://raw.githubusercontent.com/Meet-Miyani/compose-skill/HEAD/skills/compose-data/SKILL.md

Mình muốn: (viết việc bạn cần ở đây)

Nếu Claude không mở được liên kết, hãy mở liên kết và copy nội dung vào rồi dán.

↓ Thấy hữu ích thì tải ZIP bên dưới và cài. Sau đó skill tự chạy, không phải dán lại mỗi lần.

Cài vào ứng dụng Claude (không cần terminal)
  1. Tải tệp ZIP bằng nút bên dưới.
  2. Trong Claude, mở Settings → Capabilities và bật 'Code execution and file creation'. (chỉ một lần)
  3. Vào Customize → Skills → + → 'Upload a skill' rồi tải tệp ZIP lên.
↓ Tải ZIP
Cài vào Claude Code

Để Claude làm — dán câu dưới đây vào Claude Code

Hãy cài skill mình tìm thấy trên Claude Skill Mart.
Copy thư mục skills/compose-data từ repo GitHub Meet-Miyani/compose-skill vào ~/.claude/skills/compose-data/ của mình.
Sau khi cài xong, cho mình biết skill này làm được gì trong một câu.

Cài bằng lệnh thủ công

git clone https://github.com/Meet-Miyani/compose-skill.git /tmp/compose-skill && mkdir -p ~/.claude/skills && cp -r /tmp/compose-skill/skills/compose-data ~/.claude/skills/

⚠ Đây là skill do người khác tạo. Hãy kiểm tra repo gốc trước khi cài.

  1. Mở Terminal.
  2. Tải repo: git clone https://github.com/Meet-Miyani/compose-skill.git
  3. Tạo thư mục skill: mkdir -p ~/.claude/skills
  4. Sao chép skill (nên chép toàn bộ vì skill này tham chiếu các skill anh em): cp -r compose-skill/skills/* ~/.claude/skills/
  5. Khởi động lại Claude Code, sau đó yêu cầu kiểu "thiết kế repository cho…" trong dự án Kotlin/Compose để skill tự kích hoạt.
  6. Đảm bảo dự án có file gradle/libs.versions.toml để phần kiểm tra phiên bản hoạt động đúng.