SlideFly: slide biết bay. Claude Code skill for single-file HTML decks with PowerPoint-Morph-like transitions, 47 styles, Vietnamese-ready
Overview
Skill cho Claude Code, Codex (ChatGPT) và Antigravity (Gemini) tạo : hình trang trí trượt, phóng to, đổi màu liền mạch giữa các slide. Một file HTML, mở bằng Chrome là trình chiếu được. Có , bố cục tự lấp đầy theo lượng chữ và tự đo độ trống của từng slide. An agent skill for Claude Code, Codex and Antigravity that builds single-file HTML decks with PowerPoint-Morph-like transitions: 85 styles, auto-filling layouts and an automatic fill/overflow audit. Docs are in Vietnamese. Thư viện 85 style · Deck mẫu 20 slide (Stencil & Tablet) · Deck mẫu 15 slide (Swiss Modern) Mỗi style có một nhóm hình cố định gọi là . Mỗi kiểu slide (bìa, mục lục, nội dung, hai cột...) quy định một cho các diễn viên. Khi chuyển slide, trình duyệt cho diễn viên trượt dần sang tư thế mới, đúng tinh thần Morph: cùng tên là cùng một vật.
README
SlideFly: slide biết bay
Skill cho Claude Code, Codex (ChatGPT) và Antigravity (Gemini) tạo slide HTML có hiệu ứng chuyển cảnh kiểu PowerPoint Morph: hình trang trí trượt, phóng to, đổi màu liền mạch giữa các slide. Một file HTML, mở bằng Chrome là trình chiếu được. Có 57 style, bố cục tự lấp đầy theo lượng chữ và tự đo độ trống của từng slide.
An agent skill for Claude Code, Codex and Antigravity that builds single-file HTML decks with PowerPoint-Morph-like transitions: 85 styles, auto-filling layouts and an automatic fill/overflow audit. Docs are in Vietnamese.
Xem trực tuyến: Thư viện 85 style · Deck mẫu 20 slide (Stencil & Tablet) · Deck mẫu 15 slide (Swiss Modern)
Cơ chế trong một câu
Mỗi style có một nhóm hình cố định gọi là diễn viên. Mỗi kiểu slide (bìa, mục lục, nội dung, hai cột…) quy định một tư thế cho các diễn viên. Khi chuyển slide, trình duyệt cho diễn viên trượt dần sang tư thế mới, đúng tinh thần Morph: cùng tên là cùng một vật.
Tính năng
- 85 style: 10 preset và 30 bold template phỏng theo frontend-slides, 1 style tái tạo mẫu Morph “vòng tròn xanh”, và 10 style mới: 3 style bản sắc Việt (sơn mài, tranh Đông Hồ, Hội An), 5 style xu hướng 2026 (aurora, bento, bauhaus, restorative, wabi), 2 style cho dịp đặc biệt (art deco, clay 3D), và 34 style hai lớp phỏng theo lemo-opuscar qua MotionFly (blueprint, thủy mặc, màu nước, cắt giấy đỏ, bảng trắng, kể chuyện số liệu, HUD hologram, tranh khắc gỗ, kính màu, phim câm, sách tranh sáp màu, ukiyo-e, đèn lồng giấy, múa rối bóng, pixel RPG, anime 80s…): ngoài lớp CSS còn có bản luật
.art.mdđể Claude vẽ minh họa SVG riêng cho từng slide. Mọi font đều có bộ chữ tiếng Việt. - 10 kiểu slide: cover, agenda, section, content, two-col, stats, timeline, quote, closing, và
diagram(sơ đồ chiếm cả vùng thân, hình trang trí dạt ra viền). - 8 dạng sơ đồ tự vẽ từ số liệu: thanh tỷ lệ, vòng tròn chia phần, mặt bằng có chuỗi kích thước, các ô dồn về tâm, ma trận, mạng lưới nút, phễu lọc, màn quét trước và sau. Khai báo bằng vài thuộc tính
data-*, biểu đồ có số phải ghi nguồn. - Hiệu ứng theo động từ: vẽ nét, đếm số, đóng dấu, rơi vào chỗ, bay vào nhóm, gộp về tâm, rung khi lệch, chấm chạy dọc đường ống.
- Icon Tabler: hơn 5.000 icon MIT (có logo công cụ như Python, GitHub) khai báo bằng một dòng;
icons.py suggestgợi ý icon theo chữ trên slide, kể cả từ tiếng Việt; audit chặn slide quá 6 icon. - 21 dáng slide: 9 kiểu gốc và 12 kiểu mới (số lớn, bento, ảnh chia đôi, hỏi đáp, trước và sau, quy trình, bảng so sánh, trích dẫn có chân dung, chương, đếm ngược, tuyên bố, kết có lời kêu gọi). Kiểu mới chạy trên cả 57 style mà không phải sửa style.
- 17 khung bố cục phá lưới:
data-frameđổi hẳn cách chia mặt slide: mảng màu một bên (split-left, split-right), tiêu đề khổng lồ (poster), dải ngang (band), cột tiêu đề (rail), tiêu đề cuối slide (bottom), cột hẹp (stack), khối góc (corner), mảng chéo (diagonal), khung viền (frame), thẻ so le (zigzag), số lớn (numbered), hình chiếm nửa slide (media-left, media-right), kiểu tạp chí (magazine), câu chốt giữa slide (spotlight), bậc thang (stairs). Nội dung nào cũng tự chạy vào vùng của khung. Mẫu:templates/deck-khung.html,templates/deck-khung-moi.html. - Chống rập khuôn: mọi style dùng chung một bộ khung chữ, nên dáng slide đến từ khung chứ không từ màu.
deck.audit()báo lỗi khi một dáng lặp quá 20% số slide hoặc deck dài dùng dưới 3 khung. - HTML trước: mặc định chỉ giao file HTML; xuất PowerPoint khi người dùng xin.
- Logo xuyên suốt: một logo (icon Tabler hoặc file ảnh) to ở bìa, thu về góc ở slide nội dung, ẩn ở slide trích dẫn, và tự bay giữa các vị trí đó.
- Khung giao diện giả: cửa sổ chat, terminal, trình duyệt, điện thoại vẽ bằng CSS. Prompt gõ từng chữ, trợ lý “nghĩ” rồi trả lời từng dòng, lệnh cài hiện dần theo cú bấm.
- Slide ảnh nền và lưới icon: ảnh tràn màn hình làm điểm nghỉ giữa các phần (lớp phủ giữ chữ dễ đọc, bắt buộc ghi nguồn ảnh); lưới 3 đến 6 icon cùng màu cho các ý ngắn.
- Không rập khuôn:
pick-styles.pygợi ý 3 style (hợp mục đích, khác nền, bất ngờ) và một cách kể chuyện, xáo mỗi lần chạy, nên cả lớp gõ cùng một prompt vẫn ra các bộ slide khác nhau. Deck dài thêm--parts N: mỗi phần một nhịp kể riêng, slide chương xen kẽ nền. - Bấm từng bước:
data-stepcho phép giảng tới đâu mở tới đó, phím lùi gỡ đúng một bước; slide códata-atđể đổi trạng thái theo từng cú bấm. - Tự lấp đầy: engine đếm số ý trên slide rồi chọn cỡ chữ lớn, vừa hoặc nhỏ. Slide nội dung có ô điểm nhấn, slide hai cột có câu kết luận.
- Không lặp nhàm: cùng một kiểu slide xuất hiện nhiều lần sẽ đổi dáng (biến thể 1, 2, 3) và đổi hướng chữ vào khung. Slide sơ đồ, bento, bảng so sánh vẫn giữ hình trang trí của style ở viền thay vì để sân khấu trống. Tiêu đề có hai biến thể: đặt giữa (
data-title="center") và chạy dọc mép trái (data-title="side"); slide nào cũng có thể mượn tư thế của kiểu khác bằngdata-stage. - Slide tự thiết kế:
data-layout="free"cho sân khấu trống để AI tự dựng bố cục riêng bằng CSS của deck (chữ khổng lồ cắt mép, lưới bất đối xứng, timeline uốn lượn…). Skill coi đồ nghề có sẵn là gợi ý, không phải khuôn, nên mỗi deck có vài slide mang dáng riêng (references/tu-thiet-ke.md). - Chữ bay giữa hai slide (FLIP): ví dụ tiêu đề mục ở trang mục lục bay sang thành tiêu đề phần.
- Tự kiểm tra ngay trong trang: mở deck rồi gõ
deck.audit()trong console (hoặc để agent gõ qua trình duyệt của app): đo khoảng trống và chữ tràn, độ tương phản của chữ với hình phía sau và với khung chứa nó, slide lặp dáng, biểu đồ thiếu nguồn. Không cần cài gì thêm. - Xuất PowerPoint có Morph:
scripts/export-pptx.pyghi file .pptx sửa được, hình trang trí cùng tên qua các slide nên PowerPoint Morph cho chúng bay như bản HTML. - Không phụ thuộc thư viện: chỉ HTML, CSS, JavaScript thuần. Có chế độ giảm chuyển động.
Cài đặt
Skill viết theo chuẩn chung SKILL.md, nên cùng một thư mục skill/slidefly chạy được trên ba app. Tải repo về một lần, rồi chép vào thư mục skill của app anh/chị dùng (cài nhiều app thì chép vào nhiều chỗ):
| App | Thư mục skill dùng cho mọi dự án |
|---|---|
| Claude Code, Claude Desktop (tab Code) | ~/.claude/skills/ |
| Codex: app ChatGPT/Codex trên máy tính, Codex CLI, tiện ích IDE | ~/.agents/skills/ |
| Antigravity (Gemini) | ~/.gemini/config/skills/ (bản cũ: ~/.gemini/antigravity/skills/) |
macOS, Linux, Git Bash:
git clone https://github.com/andyluu98/slidefly.git
mkdir -p ~/.claude/skills ~/.agents/skills ~/.gemini/config/skills
cp -r slidefly/skill/slidefly ~/.claude/skills/
cp -r slidefly/skill/slidefly ~/.agents/skills/
cp -r slidefly/skill/slidefly ~/.gemini/config/skills/
Windows PowerShell:
git clone https://github.com/andyluu98/slidefly.git
foreach ($d in "$HOME\.claude\skills", "$HOME\.agents\skills", "$HOME\.gemini\config\skills") {
New-Item -ItemType Directory -Force $d | Out-Null
Copy-Item -Recurse slidefly\skill\slidefly $d
}
Mở lại app (hoặc phiên mới) để app nhận skill. Gọi skill: Claude gõ /slidefly, Codex gõ $slidefly, Antigravity nói thẳng yêu cầu làm slide là agent tự chọn skill. Chỉ muốn dùng cho một dự án thì chép vào .claude/skills/ (Claude) hoặc .agents/skills/ (Codex, Antigravity) trong thư mục dự án.
Python chỉ cần cho các script kiểm tra và đóng gói. Deck tạo ra chạy được trên mọi trình duyệt hiện đại mà không cần Python.
Cách dùng
Trong Claude Code gõ /slidefly, trong Codex gõ $slidefly, hoặc nói tự nhiên (Antigravity và cả ba app đều tự nhận ra), ví dụ: “Làm 20 slide giải thích AI Agent, style stencil-tablet”. Skill sẽ lập dàn ý, chọn kiểu slide, dựng deck, tự kiểm tra rồi đóng gói thành một file HTML.
Dùng thủ công không qua Claude:
- Chép
skill/slidefly/templates/deck-mau.html, đổi dòng `` sang style muốn dùng (danh sách ởassets/styles/index.json). - Thay nội dung các `` (markup mẫu ở
references/layouts.md). - Đóng gói:
python scripts/inline-assets.py nguon.html deck.html - Kiểm tra: mở deck trong trình duyệt, gõ
deck.audit()trong console.
Trình chiếu: mũi tên hoặc Space để sang slide, mũi tên trái để lùi, F toàn màn hình, Home/End về đầu/cuối.
Cấu trúc
skill/slidefly/
├── SKILL.md quy trình cho agent (Claude, Codex, Antigravity đọc chung)
├── agents/openai.yaml tên và mô tả hiện trong app Codex
├── assets/
│ ├── morph-engine.js co giãn khung, diễn viên, biến thể, FLIP
│ ├── morph-nav.js phím, 2 nút rìa, vuốt (bấm thân slide không chuyển)
│ ├── morph-audit.js deck.audit(): đo khoảng trống và chữ tràn
│ ├── morph-base.css khung 1920x1080, chuyển cảnh, hiệu ứng chữ
│ ├── morph-layouts.css 9 kiểu slide tự co giãn
│ ├── morph-layouts-plus.css 12 kiểu slide mới
│ ├── morph-motion.css hiệu ứng theo động từ + màu dùng chung
│ ├── morph-viz*.js/.css 8 dạng sơ đồ tự vẽ
│ ├── morph-steps.js bấm từng bước
│ ├── morph-icons.css/.js icon Tabler (tự tải khi soạn, nhúng khi gộp)
│ ├── morph-brand.css logo xuyên suốt
│ ├── morph-mock.css/.js khung chat, terminal, trình duyệt, điện thoại
│ ├── morph-photo.css slide ảnh nền
│ ├── icons/ danh mục Tabler + từ khóa tiếng Việt
│ └── styles/ 85 style (+ .art.md cho style hai lớp) + index.json
├── references/ cơ chế, layout, công thức chuyển cảnh, chọn style, font tiếng Việt
├── scripts/ inline-assets.py, export-pptx.py, icons.py, pick-styles.py
└── templates/ deck-mau.html (10 slide đủ 9 kiểu), deck-so-do.html (16 slide, mỗi slide một dạng hình), deck-giao-dien.html (10 slide, logo, khung giao diện, ảnh nền, lưới icon), deck-bo-cuc.html (13 slide, 12 bố cục mới)
examples/ 2 deck mẫu về AI Agent
gallery/ 00-gallery.html + 85 deck demo
Ghi nguồn
Các style phỏng theo frontend-slides của Zara Zhang (MIT); 6 style hai lớp phỏng theo lemo-opuscar của LemoLab (MIT), qua MotionFly. Icon từ Lucide (ISC). Font tải từ Google Fonts (SIL Open Font License). Chi tiết ở THIRD_PARTY.md.
Giấy phép
Recommended Tools
Try a different keyword or remove a filter.
Install
npx skillfish add andyluu98/slidefly