Community寫作與編輯github.com

RinDig/lecture-deck

從分鏡腳本建立高品質的動畫 HTML 授課或工作坊投影片,適用任何主題。每當有人要求投影片組、會議投影片、工作坊投影片、課程螢幕、演出流程投影片或演講者備忘錄時使用,特別適用於現場演講(會議室或 Zoom),包含分組討論、螢幕分享和交接環節。產生一個自包含的 HTML 檔案,包含鍵盤導航、演講者備忘錄、總覽、列印、複製到剪貼簿提示以及每個畫面上的模式列,還有 PNG 渲染供檢查。附帶三個主題以及用於圖表、動畫、重複出現的角色和用語檢查的工具包。不適用於必須是 PowerPoint 的提案簡報或資料儀表板。

lecture-deck 是什麼?

RinDig/lecture-deck 是一個強大的 AI 技能,專為建立高品質、動畫化的 HTML 授課或工作坊投影片而設計。它遵循「一個螢幕一個主張」的原則,將每個投影片的重點放在一個核心論點上,並輔以一張說明其機制的圖片和一個簡短的標題,所有詳細資訊則放在備忘錄中。此技能將製作流程從初始的故事板腳本、螢幕建置、PNG 渲染檢查,到最終的用語檢查,全部自動化,確保輸出的投影片組清晰、專業且易於理解。它支援在任何支援 Python 3.9+ 和基於 Chromium 的渲染器(如 Playwright、Chrome 或 Edge)的平台上運作,並能生成單一的自包含 HTML 檔案,具備鍵盤導航、演講者備忘錄、總覽、列印和剪貼簿複製功能。lecture-deck 最突出的特點是其對用語嚴格把關,例如禁止使用呈現句、強制使用完整的句子,以及確保所有範例順序一致,這保證了投影片組前後連貫、專業且具說服力。另外,它還提供多種主題、重複使用的角色元素(figure、machine、rigid)以及一個模式列(slides、share、breakout 等),讓演講者和觀眾都能清楚掌握當前的互動模式與畫面歸屬。

相容平台~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/RinDig/lecture-deck-skill/tree/main

Installed? Explore more 寫作與編輯 skills: steipete/notion, langchain-ai/langchain, bytedance/podcast-generation · View all 6 →

在你喜歡的 AI 中提問

開啟一個已預先載入此 Agent Skill 的新對話。

說明文件

授課投影片

一個螢幕一個主張、一張說明機制的圖片、一個標題,其餘內容全放在備忘錄裡。投影片由 Python 螢幕模組根據主題建構,渲染成 PNG 供檢查,並在輸出前執行用語檢查。

收到請求時

  1. 詢問或推斷會議資訊:誰、多少人、哪裡、多久、他們已經知道什麼、誰發言、誰主持會議。如果存在活動流程表(主持人的時間安排),則將其視為既定的。
  2. 先撰寫 storyboard.md,使用 reference/storyboard-template.md。目標、以編號的主張呈現的論點、附帶模式的活動流程,然後每頁一個項目,包含圖片和過渡橋段。僅閱讀標題應能理解論點;然後僅閱讀過渡橋段應能串連起來。在此步驟修正順序。
  3. 對於超過十個螢幕的內容,在建置前先評審故事板(流程、受眾程度、每張圖片是否解釋其主張、是否涵蓋簡報要求)。將修改意見納入。
  4. 搭建並建置螢幕(reference/workflow.md、reference/kit-api.md)。對於較長的投影片組,將螢幕拆分為模組並平行建置。
  5. 渲染每個螢幕並查看所有聯繫表。修正溢出、裁剪、文字無法閱讀、圖片為裝飾而非說明的問題。
  6. 使用 --dump 執行用語檢查並閱讀純文本。修正、重新渲染已變更的部分,重複直到乾淨為止。
  7. 交付 HTML 檔案,說明哪些是暫定的內容(日期、姓名、可能尚未準備好的平台),並說明如何呈現(方向鍵、N、O、B、F、列印)。

讓它變好的規則

  • 負載規則。 標題就是主張。一張圖片。最多一個標題。僅對已驗證的引文使用腳註。僅在練習和後勤螢幕上使用提示。深度內容放入「SAY」和「IF THE ROOM IS AHEAD」,逐字寫下。
  • 圖片展示機制。 一張可以放在任何標題下的圖片只是裝飾。畫出實際的東西:聊天視窗、檔案、資料夾、彎腰的人、正在填滿的箱子。按照講者說話的順序,使用 anim、draw、grow、rise、slide_in、drop 來建構它。複雜度只要能夠解釋就沒問題。
  • 統一角色。 對每個人物、系統和剛性盒子使用 figure、machine、rigid,讓觀眾在整個投影片組中看到相同的圖示。
  • 角色而非顏色。 HIGHLIGHT 代表主體和當前;COOL 代表系統;WARM 代表書面內容;SOFT 代表另一方;NEUTRAL 代表間隙;LIVE 僅用於模式點。這樣任何主題都可以運作。
  • 模式列。 每個螢幕以 mode(kind, label, who) 開頭:投影片、分享、分組討論、個人作業、交接、休息。觀眾永遠知道誰在分享螢幕;講者永遠知道何時切換應用程式或交接。活動流程列使用相同的顏色。
  • 用語。 以主張開頭,使用完整句子,解釋而非表演。不要有揭示句,整份投影片組中最多只允許一個「不是 X 而是 Y」,不要使用碎片化句子來製造效果,不要強制使用三數列,不要使用破折號,不要使用 AI 常用詞語,不要在觀眾螢幕上使用方法論詞彙。僅使用已驗證的引文。每個受眾群體的範例只有一個,且順序每次都相同。詳見 reference/writing.md。
  • 備忘錄就是講稿。 使用講者的語氣撰寫「SAY」,為主持人提供帶有時間的「DO NOW」、「LOOK FOR」、「IF STUCK」、「IF THE ROOM IS AHEAD」,以及一個引導進入下一個標題的「BRIDGE」。
  • 以實際尺寸檢查。 渲染器的靜態模式會顯示每個動畫元素的最終狀態。在瀏覽器面板中看不見的錯誤,在 1280×720 解析度下會顯現。

命令

python scripts/new_deck.py path/to/deck --title "第一節" --theme eduba --left "議程" --right "第一節"
python scripts/build_deck.py path/to/deck            # 寫入 deck/out/<name>.html
python scripts/build_deck.py path/to/deck --theme slate   # 以另一個主題建立第二個檔案
python scripts/render.py path/to/deck/out/<name>.html     # 每頁 PNG + 聯繫表,靜態模式
python scripts/check_text.py path/to/deck/out/<name>.html --dump

需求:Python 3.9+、用於渲染的 Chromium(Playwright 內建的、Chrome 或 Edge;或設定 DECK_CHROME)、用於聯繫表的 Pillow。字型在開啟時從 Google Fonts 載入;主題內含備援字型堆疊。

檔案

  • scripts/deckkit/kit.py 包含輔助工具、常數、角色、常用圖片。scripts/deckkit/shell.py 是頁面外殼。scripts/deckkit/themes/*.json 是主題。
  • reference/workflow.md 工作流程 · reference/writing.md 用語規則 · reference/kit-api.md 每個輔助工具 · reference/themes.md 角色與如何製作主題 · reference/storyboard-template.md。
  • examples/demo/ 一個九頁的示範投影片組,展示了大部分工具包的功能;可以以每個主題建置它,看看效果範圍。

相關技能