Compose Motion (Animation cho Jetpack Compose)
Skill hướng dẫn chọn API animation trong Jetpack Compose, tinh chỉnh spring và tránh các anti-pattern gây jank.
Lập trìnhTrung cấp★ 286⑂ 25Điểm AI 9/10Cập nhật lần cuối: 31 thg 7, 2026
Skill này làm gì
- Cung cấp cây quyết định để biết nên dùng
animate*AsState,AnimatedVisibility,Crossfade,AnimatedContent,updateTransition,AnimatablehaySharedTransitionLayout. - Đưa ra giá trị spring mặc định (stiffness, dampingRatio) cho từng tình huống: modal, nhấn nút, toast, kéo theo ngón tay.
- Chỉ ra các anti-pattern hiệu năng kèm code BAD/GOOD: animate kích thước layout,
LaunchedEffect(true), thiếukeytrongLazyColumn, lồngAnimatedContenttrong item danh sách. - Bảng ánh xạ gesture (
draggable,anchoredDraggable,transformable) và cách tôn trọng tuỳ chọn giảm chuyển động (accessibility).
Phù hợp với ai
- Lập trình viên Android dùng Jetpack Compose hoặc Compose Multiplatform.
- Người đang gặp jank, tụt frame khi scroll danh sách có animation.
- Người muốn làm hero animation (shared element) khi chuyển màn hình.
Ví dụ sử dụng
- "Thêm hiệu ứng trượt khi đổi tab" → nhận code
AnimatedContentvớitogetherWith. - "Làm hero animation ảnh từ danh sách sang trang chi tiết" → nhận mẫu
SharedTransitionLayout+rememberSharedContentState(key). - "Animation mở rộng thẻ bị giật" → được hướng dẫn đổi từ animate
widthsanggraphicsLayerscale.
· · · 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/AThevon/genjutsu/HEAD/skills/_jutsu/compose-motion/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)
- Tải tệp ZIP bằng nút bên dưới.
- Trong Claude, mở Settings → Capabilities và bật 'Code execution and file creation'. (chỉ một lần)
- Vào Customize → Skills → + → 'Upload a skill' rồi tải tệp ZIP lên.
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/_jutsu/compose-motion từ repo GitHub AThevon/genjutsu vào ~/.claude/skills/compose-motion/ 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/AThevon/genjutsu.git && mkdir -p ~/.claude/skills && cp -r genjutsu/skills/_jutsu/compose-motion ~/.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.
- Mở Terminal.
- Tải repo:
git clone https://github.com/AThevon/genjutsu.git - Tạo thư mục skills:
mkdir -p ~/.claude/skills - Copy skill:
cp -r genjutsu/skills/_jutsu/compose-motion ~/.claude/skills/ - Kiểm tra đã có thư mục
references/:ls ~/.claude/skills/compose-motion - Khởi động lại Claude Code, mở project Compose và yêu cầu về animation để skill được kích hoạt.
Xem mã nguồn trên GitHub ↗Giấy phép: MIT