第 09 站課堂與助教區v2 階段:補一個輕量工具
課堂即時白板
即時白板|獨立專案
一個小型的課堂工具:老師在課堂上發布指令與材料,學生不用登入就能讀取、複製。
第 09 站課堂與助教區v2 階段:補一個輕量工具
即時白板|獨立專案
一個小型的課堂工具:老師在課堂上發布指令與材料,學生不用登入就能讀取、複製。
本站:第 09 站,屬於課堂與助教區。
相連的站:資料從第 05 站進來;沒有從這一站往外的線。
課堂與助教區:上課與課後會用到的工具都在這一區,包括筆記本助教、Teams、即時白板、分組與互評平台,以及受限行政資料夾。
最小需求是什麼:學生不用登入,就能讀取並複製當下的指令。
程式、線上資料與使用者看到的畫面分開;每一部分有自己的更新方式。
這一站的界線
公開的白板不放學生個資;線上的公告存在資料庫裡,並沒有寫在原始碼檔案裡。
紀錄說明這一站示範白板怎麼接進課程,並沒有重現實際的開發日期。
這一站由誰動手、各做什麼:
決定需求、公開的範圍,以及要發布的內容。
寫程式、測試,依授權部署到網路上。
Agent 是會依照指示自己讀檔案、寫檔案、執行程式的 AI 工具;v2 稱為 Coding Agent,例如 Codex。
v2 標示的位置:live-board-mvp/。下表每一列是一個資料夾、檔案、平台紀錄或閘門;縮排的列,屬於上一個資料夾或項目。
| 名稱 | 類型 | 白話說明 |
|---|---|---|
src/位置:live-board-mvp/src/ | 資料夾 | 原始碼放在獨立的專案裡。線上的公告是存在資料庫裡的資料,並沒有直接寫在網頁的程式碼裡。 |
board.js · admin.js · data.js位置:live-board-mvp/src/board.js | 檔案 | 三個程式檔分工負責學生看到的畫面、老師的管理畫面,以及資料的存取。 |
supabase/migrations/位置:live-board-mvp/supabase/migrations/ | 資料夾 | 資料庫結構變更檔(英文是 migration;記錄資料表怎麼新增、修改的檔案,照順序執行就能重建資料庫的結構):包括資料表、權限與即時通知的結構變更。 |
Vercel 上的公開頁與老師控制台v2 名稱:Vercel|公開頁/教師控制台 | 平台或工具 | Agent 建置並依授權部署;Vercel(放網頁應用程式、讓它在網路上執行的平台)平台提供網頁實際執行的環境。學生看公開頁,老師用控制台。 |
| Supabase|boards/board_posts | 資料庫 | Supabase(一個線上資料庫服務)線上資料庫保存白板與公告;它不是雲端硬碟裡的資料夾。 |
學生開啟並複製公告v2 名稱:學生開啟/複製公告 | 紀錄或設定 | 公開閱讀的,只有已經發布的材料;老師要寫入內容,必須先通過身分驗證。 |
從 第 05 站 課程網站「白板入口」(入口連結)
學生從課程入口前往即時白板;公告本身存在白板的線上資料庫裡。
地圖上沒有從這一站往外的線。
首頁列出的三條路徑(「一份週教材」、「一份課堂逐字稿」、「一輪分組與互評」)都沒有經過這一站。
下面的連結會另開分頁,前往 v2 已經發布的實例頁。實例頁保留原文,有些是英文或程式碼。
即時白板的專案工作規範全文・去識別
學生的公開頁、老師的控制台、資料層與權限分開設計,學生只讀得到已發布的公告。
白板資料層的程式(JavaScript)全文・去識別
示範模式與線上資料庫的存取、公告清單與全文、附件與訂閱,都集中在這一層處理。
白板公告排序的程式(JavaScript)全文・去識別
一段短小的真實程式:鎖定、置頂、手動順序與發布時間,怎麼決定學生看到的順序。
學生在這裡閱讀並複製老師公布的課堂指令、文字與材料連結。