diff --git a/translations/zh-HK/.co-op-translator.json b/translations/zh-HK/.co-op-translator.json index 1bcefc62c..a2327f719 100644 --- a/translations/zh-HK/.co-op-translator.json +++ b/translations/zh-HK/.co-op-translator.json @@ -493,7 +493,7 @@ }, "AGENTS.md": { "original_hash": "a362efd06d64d4134a0cfe8515a86d34", - "translation_date": "2026-04-06T16:03:06+00:00", + "translation_date": "2026-04-20T16:59:47+00:00", "source_file": "AGENTS.md", "language_code": "zh-HK" }, diff --git a/translations/zh-HK/AGENTS.md b/translations/zh-HK/AGENTS.md index f75e167a7..e84c0c44d 100644 --- a/translations/zh-HK/AGENTS.md +++ b/translations/zh-HK/AGENTS.md @@ -2,27 +2,27 @@ ## Project Overview -這是一個用於教授初學者網頁開發基礎的教育課程儲存庫。該課程是一個由 Microsoft Cloud Advocates 開發的全面 12 週課程,包括 24 個涵蓋 JavaScript、CSS 和 HTML 的實作課程。 +這是一個教育課程資源庫,旨在教導初學者網頁開發基礎。該課程由 Microsoft Cloud Advocates 開發,為期12週,包含24個實作課程,涵蓋 JavaScript、CSS 及 HTML。 ### Key Components -- 教育內容:24 個結構化課程,組織成基於專案的模組 -- 實作專案:溫室生態箱、打字遊戲、瀏覽器擴充功能、太空遊戲、銀行應用程式、程式碼編輯器及 AI 聊天助理 -- 互動測驗:48 個包含 3 題的測驗(課程前後評量) -- 多語言支援:透過 GitHub Actions 自動翻譯 50 多種語言 -- 技術:HTML、CSS、JavaScript、Vue.js 3、Vite、Node.js、Express、Python(AI 專案用) +- 教育內容:24個結構化課程,組成專案式模組 +- 實作專案:溫室效應、打字遊戲、瀏覽器擴充功能、太空遊戲、銀行應用程式、程式碼編輯器及 AI 聊天助理 +- 互動測驗:48個測驗,每個包含3題(課前/課後評量) +- 多語言支援:透過 GitHub Actions 自動翻譯50多種語言 +- 技術:HTML、CSS、JavaScript、Vue.js 3、Vite、Node.js、Express、Python(用於 AI 專案) ### Architecture -- 以課程為基礎結構的教育儲存庫 -- 每個課程資料夾包含 README、程式碼範例和解決方案 -- 獨立專案存放在單獨目錄(quiz-app、各課程專案) +- 教育資源庫,採課程結構 +- 每個課程資料夾包含 README、範例程式碼及解答 +- 獨立專案存於不同目錄(quiz-app、多個課程專案) - 使用 GitHub Actions (co-op-translator) 的翻譯系統 -- 文件透過 Docsify 提供並有 PDF 格式 +- 文件由 Docsify 提供,並以 PDF 形式可用 ## Setup Commands -此儲存庫主要用於教育內容消費。若要操作特定專案: +本資源庫主要用於教育內容瀏覽。若要操作特定專案: ### Main Repository Setup @@ -56,7 +56,7 @@ npm run format # 使用 Prettier 格式化 ```bash cd 5-browser-extension/solution npm install -# 遵循瀏覽器專用的擴充功能加載指示 +# 遵循瀏覽器特定的擴充功能載入指示 ``` ### Space Game Projects @@ -72,7 +72,7 @@ npm install ```bash cd 9-chat-project/solution/backend/python pip install openai -# 設定 GITHUB_TOKEN 環境變數 +# 設定 GITHUB_TOKEN 環境變量 python api.py ``` @@ -80,29 +80,29 @@ python api.py ### For Content Contributors -1. **Fork 儲存庫** 至您的 GitHub 帳號 -2. **本地複製您的 fork** -3. 建立新分支 以進行修改 +1. 派生資源庫至您的 GitHub 帳號 +2. 將派生版本複製(clone)到本機 +3. 為變更建立新分支 4. 修改課程內容或程式碼範例 5. 在相關專案資料夾測試程式碼變更 -6. 按照貢獻指南提交 pull requests +6. 依照貢獻指引提交 pull request ### For Learners -1. Fork 或複製儲存庫 -2. 依序導覽各課程目錄 -3. 閱讀每課程的 README 檔案 -4. 完成 https://ff-quizzes.netlify.app/web/ 中的課前測驗 -5. 練習課程資料夾中的程式範例 -6. 完成作業及挑戰 -7. 進行課後測驗 +1. 派生或複製資源庫 +2. 依序瀏覽課程資料夾 +3. 閱讀每個課程的 README 文件 +4. 完成課前測驗 https://ff-quizzes.netlify.app/web/ +5. 練習課堂範例程式碼 +6. 完成作業與挑戰 +7. 參加課後測驗 ### Live Development -- 文件:在根目錄執行 `docsify serve` (預設埠 3000) -- 測驗應用程式:在 quiz-app 目錄執行 `npm run dev` -- 專案:使用 VS Code 的 Live Server 外掛實作 HTML 專案服務 -- **API 專案**:在對應 API 目錄執行 `npm start` +- 文件:於根目錄執行 `docsify serve`(預設連接埠3000) +- 測驗應用:在 quiz-app 目錄執行 `npm run dev` +- 專案:使用 VS Code Live Server 擴充功能開發 HTML 專案 +- **API 專案**:在相應 API 目錄執行 `npm start` ## Testing Instructions @@ -111,32 +111,32 @@ python api.py ```bash cd quiz-app npm run lint # 檢查代碼風格問題 -npm run build # 驗證構建是否成功 +npm run build # 驗證構建成功 ``` ### Bank API Testing ```bash cd 7-bank-project/api -npm run lint # 檢查代碼風格問題 -node server.js # 驗證服務器啟動時無錯誤 +npm run lint # 檢查程式碼風格問題 +node server.js # 驗證伺服器能否無錯誤啟動 ``` ### General Testing Approach -- 這是教育儲存庫,沒有完整自動化測試 +- 本教育資源庫未包含全面的自動測試 - 手動測試重點: - - 程式碼範例可順利執行 - - 文件內連結功能正常 - - 專案建置成功 - - 範例遵循最佳實務 + - 範例程式碼無錯誤執行 + - 文件中的連結均正常 + - 專案能成功編譯與建置 + - 範例符合最佳實踐 ### Pre-submission Checks -- 在含有 package.json 的目錄執行 `npm run lint` +- 在有 package.json 的目錄執行 `npm run lint` - 驗證 Markdown 連結有效 -- 在瀏覽器或 Node.js 中測試程式範例 -- 確認翻譯保持正確結構 +- 瀏覽器或 Node.js 測試範例程式碼 +- 確認翻譯結構維持正確 ## Code Style Guidelines @@ -144,48 +144,48 @@ node server.js # 驗證服務器啟動時無錯誤 - 使用現代 ES6+ 語法 - 遵循專案中提供的標準 ESLint 設定 -- 使用有意義的變數與函數名稱以利教育理解 -- 添加解說概念的註解給學習者 -- 在有設定的地方使用 Prettier 格式化 +- 使用明確的變數與函式命名,利於教學理解 +- 添加解說概念的註解 +- 於配置的情況下使用 Prettier 格式化 ### HTML/CSS -- 使用語義化 HTML5 元素 -- 採用響應式設計原則 -- 清晰的 class 命名規則 -- 註解說明 CSS 技術給學習者 +- 使用語意化 HTML5 元素 +- 響應式設計原則 +- 清晰的類別命名規則 +- 為教學目的解釋 CSS 技巧的註解 ### Python -- 遵循 PEP 8 樣式指南 -- 清晰且有教育意義的程式範例 -- 在有助學習的地方使用型別提示 +- 遵守 PEP 8 編碼風格指南 +- 清晰且具教育意義的範例程式碼 +- 於有助於學習處使用型別提示 ### Markdown Documentation -- 明確的標題階層 -- 具語言宣告的程式碼區塊 -- 連結到補充資源 -- 在 `images/` 目錄包含截圖與圖片 -- 圖片包含無障礙的替代文字 +- 清晰的標題層級 +- 語言指定的程式碼區塊 +- 連結至額外資源 +- `images/` 目錄內的截圖與圖片 +- 圖片需有替代文字以利無障礙 ### File Organization - 課程依序編號(1-getting-started-lessons、2-js-basics 等) -- 每個專案有 `solution/`,通常有 `start/` 或 `your-work/` 目錄 -- 圖片儲存在特定課程的 `images/` 資料夾 -- 翻譯在 `translations/{language-code}/` 結構中 +- 每個專案含 `solution/`,通常也有 `start/` 或 `your-work/` 目錄 +- 圖片存放於各課程專屬的 `images/` 資料夾 +- 翻譯存於 `translations/{language-code}/` 結構下 ## Build and Deployment ### Quiz App Deployment (Azure Static Web Apps) -quiz-app 已配置為 Azure Static Web Apps 部署: +quiz-app 已設定用於 Azure Static Web Apps 部署: ```bash cd quiz-app npm run build # 建立 dist/ 資料夾 -# 當推送到 main 分支時透過 GitHub Actions 工作流程進行部署 +# 在推送至 main 時通過 GitHub Actions 工作流程部署 ``` Azure Static Web Apps 配置: @@ -203,80 +203,80 @@ npm run convert # 從 docs 生成 PDF ### Docsify Documentation ```bash -npm install -g docsify-cli # 全局安裝 Docsify +npm install -g docsify-cli # 全域安裝 Docsify docsify serve # 在 localhost:3000 提供服務 ``` ### Project-specific Builds -每個專案目錄可能有獨立建置流程: -- Vue 專案:使用 `npm run build` 產生正式包 +每個專案目錄可能有自己的建置流程: +- Vue 專案:`npm run build` 產生生產用套件 - 靜態專案:無建置步驟,直接提供檔案服務 ## Pull Request Guidelines ### Title Format -使用清晰描述變更領域的標題: -- `[Quiz-app] 新增第 X 課的測驗` -- `[Lesson-3] 修正溫室生態箱專案的錯字` -- `[Translation] 新增第 5 課西班牙語翻譯` -- `[Docs] 更新設置說明` +使用清晰、有描述性的標題以指明變更範圍: +- `[Quiz-app] 新增第X課測驗` +- `[Lesson-3] 修正溫室專案錯字` +- `[Translation] 新增第5課的西班牙文翻譯` +- `[Docs] 更新設定指引` ### Required Checks 提交 PR 前: 1. 程式碼品質: - - 在受影響的專案目錄執行 `npm run lint` - - 修復所有錯誤與警告 + - 在受影響的專案資料夾執行 `npm run lint` + - 修正所有 lint 錯誤及警告 2. 建置驗證: - - 如適用執行 `npm run build` - - 確保無建置錯誤 + - 執行 `npm run build`(如適用) + - 確認無建置錯誤 -3. 連結檢查: +3. 連結驗證: - 測試所有 Markdown 連結 - - 確認圖片引用正確 + - 確認圖片參照正常 4. 內容審核: - 校對拼字與文法 - - 確保程式範例正確且具教育意義 - - 確認翻譯保持原意 + - 確保程式碼範例正確且具教育意義 + - 驗證翻譯保持原意 ### Contribution Requirements -- 同意 Microsoft CLA(首次 PR 有自動檢查) -- 遵守 [Microsoft 開源行為守則](https://opensource.microsoft.com/codeofconduct/) -- 參考 [CONTRIBUTING.md](./CONTRIBUTING.md) 詳細指引 -- 如適用,在 PR 描述中引用 Issue 編號 +- 同意 Microsoft CLA(首個 PR 自動檢查) +- 遵守 [Microsoft 開源行為準則](https://opensource.microsoft.com/codeofconduct/) +- 詳細指引請參閱 [CONTRIBUTING.md](./CONTRIBUTING.md) +- 如適用於 Issue,請於 PR 說明中引用編號 ### Review Process -- PR 由維護者與社群審核 -- 優先考量教育清晰度 -- 程式範例需遵循最新最佳實務 -- 翻譯會審核準確性與文化適切性 +- PR 由維護者與社群審查 +- 優先考量教育清晰性 +- 程式碼範例需符合現行最佳實踐 +- 翻譯確認準確且文化適切 ## Translation System ### Automated Translation -- 使用 GitHub Actions 與 co-op-translator 工作流程 -- 自動翻譯至 50 多種語言 -- 原始檔在主要目錄 -- 翻譯檔位於 `translations/{language-code}/` 目錄 +- 使用 GitHub Actions 及 co-op-translator 工作流程 +- 自動翻譯成50多種語言 +- 主要檔案位於主目錄 +- 翻譯檔案位於 `translations/{language-code}/` 目錄 ### Adding Manual Translation Improvements -1. 找到 `translations/{language-code}/` 中的檔案 -2. 在保持結構下進行修正 -3. 確保程式碼範例依然可用 -4. 測試本地化的測驗內容 +1. 在 `translations/{language-code}/` 找到檔案 +2. 在維持結構的前提下優化翻譯 +3. 確保範例程式碼可運作 +4. 測試本地化測驗內容 ### Translation Metadata -翻譯檔案包含 metadata 標頭: +翻譯檔含有元數據標頭: ```markdown **免責聲明**: -此文件是使用 AI 翻譯服務 [Co-op Translator](https://github.com/Azure/co-op-translator) 進行翻譯。雖然我們致力於翻譯的準確性,但請注意,自動翻譯可能包含錯誤或不準確之處。原始文件的原文版本應被視為權威來源。對於重要資訊,建議進行專業人工翻譯。我們不對因使用此翻譯而產生的任何誤解或誤釋負責。 +本文件乃使用 AI 翻譯服務 [Co-op Translator](https://github.com/Azure/co-op-translator) 所翻譯。雖然我們致力於確保準確性,但請注意自動翻譯可能包含錯誤或不準確之處。原始文件之母語版本應被視為權威來源。對於關鍵資訊,建議採用專業人工翻譯。我們不對因使用本翻譯所產生之任何誤解或誤譯承擔責任。 \ No newline at end of file diff --git a/translations/zh-MO/.co-op-translator.json b/translations/zh-MO/.co-op-translator.json index 97d82e83f..b8bd2cde4 100644 --- a/translations/zh-MO/.co-op-translator.json +++ b/translations/zh-MO/.co-op-translator.json @@ -493,7 +493,7 @@ }, "AGENTS.md": { "original_hash": "a362efd06d64d4134a0cfe8515a86d34", - "translation_date": "2026-04-06T16:01:53+00:00", + "translation_date": "2026-04-20T16:58:49+00:00", "source_file": "AGENTS.md", "language_code": "zh-MO" }, diff --git a/translations/zh-MO/AGENTS.md b/translations/zh-MO/AGENTS.md index 0215736ab..004d0265f 100644 --- a/translations/zh-MO/AGENTS.md +++ b/translations/zh-MO/AGENTS.md @@ -1,78 +1,78 @@ # AGENTS.md -## 項目概覽 +## 專案概覽 -這是一個用於教導初學者網頁開發基礎的教育課程庫。該課程為一個由 Microsoft Cloud Advocates 開發的全面12週課程,包含24個涵蓋 JavaScript、CSS 和 HTML 的實作課程。 +這是一個用於教導初學者網頁開發基礎的教育課程資源庫。該課程為 Microsoft 雲端倡導者開發的全面 12 週課程,包含 24 個實作課程,涵蓋 JavaScript、CSS 及 HTML。 ### 主要組成部分 -- 教育內容:24堂結構化課程,組織成以項目為基礎的模塊 -- 實作項目:植物生態瓶、打字遊戲、瀏覽器擴充功能、太空遊戲、銀行應用程式、程式碼編輯器及 AI 聊天助理 -- 互動測驗:48個測驗,每個測驗有3題(課前/課後評估) -- 多語言支援:透過 GitHub Actions 自動翻譯超過50種語言 -- 技術棧:HTML、CSS、JavaScript、Vue.js 3、Vite、Node.js、Express、Python(AI 項目用) +- 教育內容:24 個結構化課程,按計劃式模組組織 +- 實作專案:玻璃箱生態缸、打字遊戲、瀏覽器擴充功能、太空遊戲、銀行應用、程式碼編輯器及 AI 聊天助理 +- 互動測驗:48 次測驗,每次含 3 題(課前/課後評量) +- 多語言支援:透過 GitHub Actions 自動翻譯超過 50 種語言 +- 技術棧:HTML、CSS、JavaScript、Vue.js 3、Vite、Node.js、Express、Python(用於 AI 專案) ### 架構 -- 以課程為基礎結構的教學倉庫 -- 各課程資料夾包含 README、程式碼範例及解決方案 -- 獨立項目位於不同目錄(quiz-app、各種課程項目) -- 使用 GitHub Actions 的翻譯系統(co-op-translator) -- 文件以 Docsify 提供,亦可下載 PDF +- 以課程為基礎的教育資源庫結構 +- 每個課程資料夾包含 README、程式碼範例與解答 +- 獨立專案分別放在不同目錄(quiz-app、各種課程專案) +- 採用 GitHub Actions 實現的翻譯系統(co-op-translator) +- 以 Docsify 提供文件服務並可匯出為 PDF -## 設置指令 +## 安裝指令 -此倉庫主要用於教育內容的使用。如欲使用特定項目: +本資源庫主要用於教育內容瀏覽。若欲操作特定專案: -### 主要倉庫設置 +### 主資源庫安裝 ```bash git clone https://github.com/microsoft/Web-Dev-For-Beginners.git cd Web-Dev-For-Beginners ``` -### 測驗應用程式設置 (Vue 3 + Vite) +### 測驗應用安裝(Vue 3 + Vite) ```bash cd quiz-app npm install -npm run dev # 開始開發伺服器 -npm run build # 為生產環境建置 +npm run dev # 啟動開發伺服器 +npm run build # 建置生產版本 npm run lint # 執行 ESLint ``` -### 銀行項目 API (Node.js + Express) +### 銀行專案 API(Node.js + Express) ```bash cd 7-bank-project/api npm install npm start # 啟動 API 伺服器 npm run lint # 執行 ESLint -npm run format # 使用 Prettier 格式化 +npm run format # 用 Prettier 格式化 ``` -### 瀏覽器擴充功能項目 +### 瀏覽器擴充功能專案 ```bash cd 5-browser-extension/solution npm install -# 遵循瀏覽器特定的擴展加載說明 +# 遵循瀏覽器特定的擴充功能載入說明 ``` -### 太空遊戲項目 +### 太空遊戲專案 ```bash cd 6-space-game/solution npm install -# 於瀏覽器中開啟 index.html 或使用即時伺服器 +# 在瀏覽器中打開 index.html 或使用 Live Server ``` -### 聊天項目 (Python 後端) +### 聊天專案(Python 後端) ```bash cd 9-chat-project/solution/backend/python pip install openai -# 設定 GITHUB_TOKEN 環境變數 +# 設定 GITHUB_TOKEN 環境變量 python api.py ``` @@ -80,29 +80,29 @@ python api.py ### 內容貢獻者指南 -1. Fork 倉庫到你的 GitHub 帳戶 -2. Clone 你的 Fork到本地 -3. 建立新分支以進行修改 +1. 將本資源庫分叉至您的 GitHub 帳戶 +2. 克隆您的分叉庫到本地 +3. 建立新分支用於您的修改 4. 修改課程內容或程式碼範例 -5. 在相關項目目錄中測試程式碼變更 -6. 根據貢獻指引提交 Pull Request +5. 在相關專案目錄測試程式碼變動 +6. 按照貢獻指南提交拉取請求 ### 學習者指南 -1. Fork 或 clone 此倉庫 -2. 按順序進入課程目錄 -3. 閱讀每堂課的 README -4. 完成 https://ff-quizzes.netlify.app/web/ 上的課前測驗 -5. 操作課程資料夾中的程式碼範例 +1. 分叉或克隆本資源庫 +2. 依序瀏覽課程目錄 +3. 閱讀每課的 README 文件 +4. 完成課前測驗,網址:https://ff-quizzes.netlify.app/web/ +5. 練習課程資料夾內的程式碼範例 6. 完成作業與挑戰 -7. 進行課後測驗 +7. 參加課後測驗 -### 實時開發 +### 即時開發 -- 文件:在根目錄運行 `docsify serve` (默認埠 3000) -- 測驗應用:在 quiz-app 目錄中執行 `npm run dev` -- 項目:對 HTML 項目使用 VS Code Live Server 擴充 -- **API 項目**:在相應 API 目錄中運行 `npm start` +- 文件:於根目錄執行 `docsify serve`(預設埠號 3000) +- 測驗應用:於 quiz-app 目錄執行 `npm run dev` +- 專案:使用 VS Code Live Server 擴充套件服務 HTML 專案 +- **API 專案**:於各 API 目錄執行 `npm start` ## 測試說明 @@ -111,84 +111,84 @@ python api.py ```bash cd quiz-app npm run lint # 檢查程式碼風格問題 -npm run build # 驗證建置成功 +npm run build # 確認構建成功 ``` ### 銀行 API 測試 ```bash cd 7-bank-project/api -npm run lint # 檢查程式碼風格問題 -node server.js # 確認伺服器無錯誤啟動 +npm run lint # 檢查代碼風格問題 +node server.js # 驗證伺服器啟動時無錯誤 ``` ### 一般測試方法 -- 此為教育用倉庫,未配置全面自動測試 -- 手動測試聚焦於: - - 程式碼範例能無錯誤執行 - - 文件中的連結能正常運作 - - 項目能成功構建 - - 範例符合最佳實踐 +- 本教育資源庫無全面自動化測試 +- 手動測試重點包括: + - 程式碼範例能夠無錯誤執行 + - 文件中所有連結均正常 + - 專案能成功建置 + - 範例維持最佳實務 -### 送出前檢查 +### 提交前檢查 -- 在含 package.json 目錄下執行 `npm run lint` -- 確認 Markdown 連結有效 +- 在含有 package.json 的目錄執行 `npm run lint` +- 確認 markdown 連結有效 - 在瀏覽器或 Node.js 測試程式碼範例 -- 確認翻譯保持正確結構 +- 確認翻譯維持良好結構 ## 程式碼風格指南 ### JavaScript - 使用現代 ES6+ 語法 -- 遵循項目中提供的標準 ESLint 配置 -- 使用有意義的變量及函式名稱以利教育理解 -- 添加註解解釋概念供學習者理解 -- 在配置了 Prettier 的地方進行格式化 +- 遵循專案中提供的 ESLint 標準設定 +- 變數與函式名稱具意義,方便教學理解 +- 添加說明性註解幫助學習者理解 +- 使用配置好的 Prettier 格式化 ### HTML/CSS -- 使用語義化 HTML5 元素 -- 遵循響應式設計原則 -- 明確的類別命名規則 -- 添加 CSS 技巧註解供學習者參考 +- 採用語意化 HTML5 元素 +- 採用響應式設計原則 +- 使用清晰的類別命名規則 +- 註解說明 CSS 技巧助學習 ### Python -- 遵循 PEP 8 風格指引 -- 清晰且具教育意義的程式碼範例 -- 適當使用型別提示以協助學習 +- 遵守 PEP 8 風格指南 +- 提供清楚且具教育意義的範例程式碼 +- 適時使用類型提示促進學習 ### Markdown 文件 -- 清楚的標題層級 -- 含語言標示的程式碼區塊 -- 連結至額外資源 -- `images/` 目錄中的截圖與圖片 -- 圖片備註文字以輔助無障礙 +- 清晰的標題層級 +- 所有程式碼區塊指定語言 +- 提供連結至更多資源 +- `images/` 目錄內包含截圖與圖片 +- 圖片提供可及性說明的替代文字 ### 檔案組織 -- 課程依序編號 (1-getting-started-lessons, 2-js-basics 等) -- 每個項目包含 `solution/`,常有 `start/` 或 `your-work/` 目錄 -- 圖片存放於課程專屬的 `images/` 資料夾 -- 翻譯存放於 `translations/{language-code}/` 結構 +- 課程依序編號(如 1-getting-started-lessons、2-js-basics 等) +- 每個專案有 `solution/` 資料夾,常見也有 `start/` 或 `your-work/` +- 課程專屬的 `images/` 資料夾存放圖片 +- 翻譯內容存放在 `translations/{language-code}/` 結構 ## 建置與部署 -### 測驗應用部署 (Azure 靜態網站) +### 測驗應用部署(Azure Static Web Apps) -quiz-app 已配置為 Azure 靜態網站部署: +quiz-app 已配置為 Azure Static Web Apps 部署: ```bash cd quiz-app npm run build # 建立 dist/ 資料夾 -# 在推送到 main 時,透過 GitHub Actions 工作流程進行部署 +# 當推送到 main 分支時,透過 GitHub Actions 工作流程進行部署 ``` -Azure 靜態網站配置: +Azure Static Web Apps 配置: - 應用程式位置:`/quiz-app` - 輸出位置:`dist` - 工作流程:`.github/workflows/azure-static-web-apps-ashy-river-0debb7803.yml` @@ -197,86 +197,86 @@ Azure 靜態網站配置: ```bash npm install # 安裝 docsify-to-pdf -npm run convert # 從 docs 產生 PDF +npm run convert # 從 docs 生成 PDF ``` ### Docsify 文件 ```bash -npm install -g docsify-cli # 全局安裝 Docsify -docsify serve # 在 localhost:3000 上提供服務 +npm install -g docsify-cli # 全域安裝 Docsify +docsify serve # 在 localhost:3000 提供服務 ``` -### 各項目專用建置 +### 專案特定建置 -每個項目目錄可能有其專屬建置流程: -- Vue 項目:使用 `npm run build` 建立生產束檔 -- 靜態項目:無建置步驟,直接提供檔案服務 +各專案目錄可能有獨立建置流程: +- Vue 專案:執行 `npm run build` 產生生產包 +- 靜態專案:無建置步驟,直接提供檔案服務 -## Pull Request 指引 +## 拉取請求指引 ### 標題格式 -使用清晰描述修改範圍的標題: -- `[Quiz-app] 新增第X課測驗` -- `[Lesson-3] 修正植物生態瓶項目錯字` -- `[Translation] 新增第5課西班牙語翻譯` -- `[Docs] 更新設定指引` +使用清楚、具描述性的標題表明更改範圍: +- `[Quiz-app] 新增課程 X 測驗` +- `[Lesson-3] 修正玻璃箱專案錯字` +- `[Translation] 新增第 5 課西班牙語翻譯` +- `[Docs] 更新安裝說明` -### 必要檢查 +### 必須檢查項目 -提交 PR 之前: +提交 PR 前: 1. 程式碼品質: - - 在影響的項目目錄執行 `npm run lint` - - 修正所有 lint 錯誤及警告 + - 於受影響專案目錄執行 `npm run lint` + - 修正所有 lint 警告與錯誤 2. 建置驗證: - - 如適用,執行 `npm run build` + - 若適用,執行 `npm run build` - 確保無建置錯誤 3. 連結驗證: - - 測試所有 Markdown 連結 - - 確認圖片引用可用 + - 測試所有 markdown 連結 + - 確認圖片引用有效 -4. 內容審查: - - 拼字及文法校對 - - 確認程式碼範例正確且具教育意義 - - 確認翻譯維持原意 +4. 內容檢視: + - 校對拼寫與語法 + - 確保程式碼範例正確且具教育意義 + - 核對翻譯保持原意 ### 貢獻要求 -- 同意 Microsoft CLA(首次 PR 自動檢查) -- 遵循 [Microsoft 開源行為守則](https://opensource.microsoft.com/codeofconduct/) +- 同意 Microsoft CLA(首次 PR 時自動檢查) +- 遵守 [Microsoft 開源行為守則](https://opensource.microsoft.com/codeofconduct/) - 詳細指南見 [CONTRIBUTING.md](./CONTRIBUTING.md) -- 如有,於 PR 描述中引用 Issue 號碼 +- 若有,於 PR 描述內提及相關議題編號 ### 審查流程 -- PR 由維護者及社群審查 -- 優先以教育清晰度為準 -- 程式碼範例應遵循當前最佳實踐 +- PR 由維護者與社群審核 +- 優先確保教育清晰度 +- 程式碼範例應符合當前最佳實務 - 翻譯需審核準確性與文化適切性 ## 翻譯系統 ### 自動翻譯 -- 使用 GitHub Actions 和 co-op-translator 工作流 -- 自動翻譯超過50種語言 -- 原始檔案位於主目錄 -- 翻譯檔案位於 `translations/{language-code}/` 目錄 +- 利用 GitHub Actions 配合 co-op-translator 工作流程 +- 自動翻譯超過 50 種語言 +- 原始檔案放在主目錄 +- 翻譯檔案存放於 `translations/{language-code}/` ### 手動翻譯改進 -1. 尋找 `translations/{language-code}/` 中的檔案 -2. 在保留結構的前提下改進翻譯 -3. 確保程式碼範例維持可用性 +1. 找到對應的 `translations/{language-code}/` 檔案 +2. 在保持檔案結構的情況下進行優化 +3. 確保程式碼範例能正確執行 4. 測試本地化測驗內容 ### 翻譯元資料 -翻譯檔包含元資料標頭: +翻譯檔含有元資料標頭: ```markdown ``` -## 除錯與疑難排解 +## 偵錯與問題排解 ### 常見問題 測驗應用無法啟動: -- 檢查 Node.js 版本 (建議 v14+) -- 刪除 `node_modules` 與 `package-lock.json`,重新執行 `npm install` -- 檢查埠號衝突(預設:Vite 使用埠 5173) +- 檢查 Node.js 版本(建議 v14 以上) +- 刪除 `node_modules` 及 `package-lock.json`,重新執行 `npm install` +- 檢查埠號衝突(預設 Vite 使用埠 5173) **API 伺服器無法啟動**: -- 確認 Node.js 版本符合最低要求(node >=10) -- 檢查埠號是否已被使用 -- 確認所有相依已使用 `npm install` 安裝完成 +- 確認 Node.js 版本達最低要求 (node >=10) +- 確認埠號未被占用 +- 確認全部依賴已透過 `npm install` 安裝 瀏覽器擴充功能無法載入: -- 確保 manifest.json 格式正確 -- 查看瀏覽器主控台錯誤訊息 -- 遵循瀏覽器專屬擴充安裝指引 +- 確認 manifest.json 格式正確 +- 查看瀏覽器控制台錯誤訊息 +- 遵循瀏覽器擴充程式安裝指引 -**Python 聊天項目問題**: +**Python 聊天專案問題**: - 確認已安裝 OpenAI 套件:`pip install openai` -- 確認 GITHUB_TOKEN 環境變量已設定 +- 確認環境變數 GITHUB_TOKEN 已設定 - 檢查 GitHub Models 存取權限 -**Docsify 無法提供文件**: -- 全域安裝 docsify-cli:`npm install -g docsify-cli` -- 從倉庫根目錄執行 -- 確認存在 `docs/_sidebar.md` +**Docsify 無法提供文件服務**: +- 全局安裝 docsify-cli:`npm install -g docsify-cli` +- 於資源庫根目錄執行 +- 確認 `docs/_sidebar.md` 檔案存在 -### 開發環境提示 +### 開發環境小技巧 -- 對 HTML 項目使用 VS Code 與 Live Server 擴充功能 -- 安裝 ESLint 與 Prettier 擴充以統一格式 +- 使用 VS Code 搭配 Live Server 擴充開發 HTML 專案 +- 安裝 ESLint 與 Prettier 擴充以維持格式統一 - 使用瀏覽器開發者工具偵錯 JavaScript -- Vue 項目安裝 Vue DevTools 瀏覽器擴充 +- Vue 專案安裝 Vue DevTools 瀏覽器擴充 -### 性能注意事項 +### 效能考量 -- 大量翻譯檔案(50+語言)導致完整 clone 較大 -- 僅需處理內容時,可使用淺層 clone:`git clone --depth 1` -- 編輯英文內容時,建議排除翻譯目錄搜索 -- 首次運行建置流程可能較慢(npm install、Vite 建置) +- 超過 50 種語言的翻譯檔案量大,完整複製佔用空間多 +- 只開發內容可用淺層複製:`git clone --depth 1` +- 進行英文內容工作時建議排除翻譯資料夾搜尋 +- 首次建置可能較慢(npm install、Vite 建置) -## 安全注意事項 +## 安全事項 -### 環境變量 +### 環境變數 -- API 金鑰嚴禁提交至倉庫 -- 使用 `.env` 檔案(已加入 `.gitignore`) -- 必要環境變量於項目 README 中記錄 +- API 金鑰絕不可提交至資源庫 +- 使用 `.env` 檔(已加入 `.gitignore`) +- 專案 README 中記錄所需環境變數 -### Python 項目 +### Python 專案 - 使用虛擬環境:`python -m venv venv` -- 保持依賴更新 -- GitHub 令牌應設定最低必要權限 +- 維護相依套件更新 +- GitHub 令牌設定最低必要權限 ### GitHub Models 存取 -- GitHub Models 需個人訪問令牌(PAT) -- 令牌應存為環境變量 -- 絕對不得提交令牌或憑證 +- 需使用個人訪問令牌 (PAT) +- 令牌應儲存在環境變數 +- 禁止提交令牌或認證資訊 ## 附加說明 -### 目標受眾 +### 目標對象 -- 完全初學者的網頁開發學習者 -- 學生與自學者 -- 用於課堂教學的教師 -- 內容設計符合無障礙並逐步增強技能 +- 完全沒有網頁開發經驗的初學者 +- 學生及自學者 +- 在課堂中使用本課程的教師 +- 內容設計強調易懂性與循序漸進技能建立 -### 教學理念 +### 教育理念 -- 以項目導向學習 -- 頻繁的知識檢測(測驗) -- 實作編碼練習 -- 真實應用案例 -- 重視基礎再談框架 +- 採用專案導向學習方式 +- 定期知識檢核(測驗) +- 實作程式練習 +- 真實世界應用範例 +- 強調基礎概念後再著重框架 -### 倉庫維護 +### 資源庫維護 -- 積極的學習者與貢獻者社群 -- 定期更新相依與內容 -- 維護者監控 Issues 和討論 -- 透過 GitHub Actions 自動更新翻譯 +- 積極活躍的學習者與貢獻者社群 +- 定期更新依賴與內容 +- 維護者監控問題與討論 +- 翻譯更新自動化使用 GitHub Actions ### 相關資源 - [Microsoft Learn 模組](https://docs.microsoft.com/learn/) - [學生中心資源](https://docs.microsoft.com/learn/student-hub/) -- 推薦學習者使用 [GitHub Copilot](https://marketplace.visualstudio.com/items?itemName=GitHub.copilot) -- 額外課程:生成式 AI、資料科學、機器學習、物聯網課程可用 +- 建議學習者使用 [GitHub Copilot](https://marketplace.visualstudio.com/items?itemName=GitHub.copilot) +- 另有生成式 AI、資料科學、機器學習、物聯網課程可供學習 -### 特定項目操作指南 +### 操作特定專案 -個別項目詳細說明見以下 README 檔案: +有關各專案詳細說明,請參閱對應 README: - `quiz-app/README.md` - Vue 3 測驗應用 -- `7-bank-project/README.md` - 具認證功能銀行應用 +- `7-bank-project/README.md` - 含認證的銀行應用 - `5-browser-extension/README.md` - 瀏覽器擴充開發 - `6-space-game/README.md` - Canvas 遊戲開發 -- `9-chat-project/README.md` - AI 聊天助理項目 +- `9-chat-project/README.md` - AI 聊天助理專案 -### Monorepo 結構 +### Monorepo 結構說明 -雖非傳統 monorepo,此倉庫包含多個獨立項目: -- 各課程自成一體 -- 項目間不共享依賴 -- 可獨立工作不互相影響 -- 克隆整個倉庫可獲得完整課程體驗 +儘管非傳統 monorepo,本資源庫含多個獨立專案: +- 每課程獨立自成一體 +- 專案間無相依套件共用 +- 可個別專案工作不影響其他專案 +- 若需完整課程體驗,請完整複製此資源庫 --- -**免責聲明**: -本文件由 AI 翻譯服務 [Co-op Translator](https://github.com/Azure/co-op-translator) 進行翻譯。雖然我們力求準確,但請注意自動翻譯可能包含錯誤或不準確之處。原始文件之原文版本應視為權威來源。對於重要資訊,建議尋求專業人工翻譯。我們對因使用此翻譯而引起的任何誤解或誤釋概不負責。 +**免責聲明**: +本文件係使用 AI 翻譯服務 [Co-op Translator](https://github.com/Azure/co-op-translator) 進行翻譯。雖然我們致力於保持準確性,但請注意自動翻譯可能包含錯誤或不準確之處。原始語言版本的文件應被視為權威來源。對於重要資訊,建議採用專業人工翻譯。我們不對使用本翻譯文件所產生之任何誤解或誤釋負責。 \ No newline at end of file diff --git a/translations/zh-TW/.co-op-translator.json b/translations/zh-TW/.co-op-translator.json index 884c4957e..04bceeec5 100644 --- a/translations/zh-TW/.co-op-translator.json +++ b/translations/zh-TW/.co-op-translator.json @@ -493,7 +493,7 @@ }, "AGENTS.md": { "original_hash": "a362efd06d64d4134a0cfe8515a86d34", - "translation_date": "2026-04-06T16:04:20+00:00", + "translation_date": "2026-04-20T17:01:01+00:00", "source_file": "AGENTS.md", "language_code": "zh-TW" }, diff --git a/translations/zh-TW/AGENTS.md b/translations/zh-TW/AGENTS.md index 8ebfabebc..30514b42e 100644 --- a/translations/zh-TW/AGENTS.md +++ b/translations/zh-TW/AGENTS.md @@ -2,42 +2,42 @@ ## 專案概覽 -這是一個用於教學網頁開發基礎的教育課程儲存庫,適合初學者。課程由 Microsoft Cloud Advocates 開發,為期 12 週,包含 24 個實作課程,涵蓋 JavaScript、CSS 與 HTML。 +這是一個用於教授初學者網頁開發基礎的教育課程儲存庫。該課程是由 Microsoft Cloud Advocates 開發的完整 12 週課程,包含 24 個涵蓋 JavaScript、CSS 和 HTML 的實作課程。 -### 主要組成 +### 主要組成部分 -- 教育內容:24 個結構化課程,依專案模組組織 -- 實作專案:生態瓶、打字遊戲、瀏覽器擴充功能、太空遊戲、銀行應用程式、代碼編輯器與 AI 聊天助理 -- 互動測驗:48 個測驗,每項包含 3 個問題(課前/課後評估) -- 多語言支援:透過 GitHub Actions 自動翻譯至 50+ 種語言 -- 技術棧:HTML、CSS、JavaScript、Vue.js 3、Vite、Node.js、Express、Python(專案使用 AI) +- 教育內容:24 個結構化課程,組成以專案為基礎的模組 +- 實作專案:生態瓶、打字遊戲、瀏覽器擴充功能、太空遊戲、銀行應用、程式碼編輯器和 AI 聊天助理 +- 互動測驗:48 個測驗,每個測驗包含 3 題(課前/課後評量) +- 多語言支援:透過 GitHub Actions 自動翻譯超過 50 種語言 +- 技術堆疊:HTML、CSS、JavaScript、Vue.js 3、Vite、Node.js、Express、Python(用於 AI 專案) ### 架構 -- 教育專案庫,依課程組織結構 -- 每堂課資料夾內包含 README、程式碼範例及解答 -- 獨立專案存放於獨立目錄(quiz-app 及各課程專案) -- 透過 GitHub Actions(co-op-translator)進行翻譯系統管理 -- 文件使用 Docsify 服務,並提供 PDF 版本 +- 教育儲存庫,採用以課程為基礎的結構 +- 每個課程資料夾包含 README、程式碼範例及解答 +- 獨立專案置於不同目錄(quiz-app、各種課程專案) +- 透過 GitHub Actions (co-op-translator) 進行翻譯系統 +- 文件以 Docsify 提供,並可匯出為 PDF -## 設置指令 +## 安裝指令 -本儲存庫主要用於教育內容瀏覽。針對特定專案開發: +此儲存庫主要用於教育內容的學習。若要操作特定專案: -### 主要儲存庫設置 +### 主要儲存庫安裝 ```bash git clone https://github.com/microsoft/Web-Dev-For-Beginners.git cd Web-Dev-For-Beginners ``` -### 測驗應用設置 (Vue 3 + Vite) +### 測驗應用安裝 (Vue 3 + Vite) ```bash cd quiz-app npm install npm run dev # 啟動開發伺服器 -npm run build # 建置生產環境 +npm run build # 為生產環境建置 npm run lint # 執行 ESLint ``` @@ -56,7 +56,7 @@ npm run format # 使用 Prettier 格式化 ```bash cd 5-browser-extension/solution npm install -# 請依照瀏覽器特定的擴充功能載入指示進行操作 +# 遵循瀏覽器特定的擴充功能載入說明 ``` ### 太空遊戲專案 @@ -64,7 +64,7 @@ npm install ```bash cd 6-space-game/solution npm install -# 在瀏覽器中打開 index.html 或使用 Live Server +# 在瀏覽器中開啟 index.html 或使用 Live Server ``` ### 聊天專案 (Python 後端) @@ -78,31 +78,31 @@ python api.py ## 開發工作流程 -### 內容貢獻者指南 +### 內容貢獻者 -1. **Fork 儲存庫** 至您的 GitHub 帳號 -2. **本地 Clone 您的 Fork** -3. 建立新分支 以進行變更 +1. **將儲存庫分支 (fork)** 至你的 GitHub 帳號 +2. **在本機複製 (clone) 你的分支** +3. 建立新分支 來進行修改 4. 修改課程內容或程式碼範例 -5. 在相關專案資料夾測試程式碼變更 -6. 提交 PR,遵循貢獻指導規範 +5. 在相關專案目錄中測試程式碼變更 +6. 按照貢獻指南提交 Pull Request -### 學習者指南 +### 學習者 -1. Fork 或 clone 本儲存庫 -2. 按順序瀏覽課程資料夾 -3. 閱讀每課 README 文件 -4. 完成課前測驗:https://ff-quizzes.netlify.app/web/ -5. 操作課程內的程式碼範例 -6. 完成作業及挑戰任務 +1. 分支或複製儲存庫 +2. 按順序瀏覽課程目錄 +3. 閱讀各課程的 README 文件 +4. 在 https://ff-quizzes.netlify.app/web/ 完成課前測驗 +5. 在課程資料夾中練習程式碼範例 +6. 完成作業與挑戰 7. 參加課後測驗 -### 即時開發 +### 實時開發 -- 文件:在根目錄執行 `docsify serve`(預設埠 3000) -- 測驗應用:在 quiz-app 目錄執行 `npm run dev` -- 專案:使用 VS Code Live Server 外掛運行 HTML 專案 -- **API 專案**:在相應 API 目錄執行 `npm start` +- 文件:於根目錄執行 `docsify serve`(預設端口 3000) +- 測驗應用:於 quiz-app 資料夾執行 `npm run dev` +- 專案:使用 VS Code Live Server 擴充功能提供 HTML 專案服務 +- **API 專案**:於相應 API 目錄執行 `npm start` ## 測試指令 @@ -111,7 +111,7 @@ python api.py ```bash cd quiz-app npm run lint # 檢查程式碼風格問題 -npm run build # 驗證建置是否成功 +npm run build # 確認建置成功 ``` ### 銀行 API 測試 @@ -119,76 +119,76 @@ npm run build # 驗證建置是否成功 ```bash cd 7-bank-project/api npm run lint # 檢查程式碼風格問題 -node server.js # 確認伺服器啟動無錯誤 +node server.js # 驗證伺服器是否無錯誤啟動 ``` -### 測試一般方針 +### 一般測試方式 -- 本教育儲存庫無全面自動化測試 -- 手動測試重點: - - 程式碼範例無錯誤執行 +- 此為教育用儲存庫,不包含全面自動化測試 +- 以手動測試為主,重點為: + - 程式碼範例能正常執行無錯誤 - 文件中的連結有效 - - 專案能成功建置 + - 專案能成功編譯 - 範例遵循最佳實踐 ### 提交前檢查 -- 在含有 package.json 的目錄執行 `npm run lint` -- 驗證 markdown 連結有效性 -- 在瀏覽器或 Node.js 測試程式碼範例 -- 確認翻譯檔結構正確 +- 於含有 package.json 的目錄執行 `npm run lint` +- 確認 markdown 連結正確 +- 在瀏覽器或 Node.js 中測試程式碼範例 +- 確保翻譯內容結構完整 -## 程式碼風格指南 +## 程式碼風格指導 ### JavaScript -- 採用現代 ES6+ 語法 -- 遵循專案內的 ESLint 標準設定 -- 使用具意義的變數及函數名稱,加強教育清晰度 -- 加入說明概念的註解 -- 有設定時使用 Prettier 格式化 +- 使用現代 ES6+ 語法 +- 遵循專案內標準 ESLint 配置 +- 使用有意義的變數和函數名稱以利教學理解 +- 添加說明註解解釋概念給學習者 +- 配置 Prettier 的地方使用其格式化 ### HTML/CSS -- 採用語意化 HTML5 元素 -- 響應式設計原則 -- 明確的 class 命名規範 -- 加入說明 CSS 技巧的註解,方便學習者 +- 採用語意化的 HTML5 元素 +- 遵循響應式設計原則 +- 清晰的類別命名規範 +- 用註解解釋 CSS 技巧給學習者 ### Python -- 遵守 PEP 8 風格規範 -- 提供清晰且具教育意義的程式碼範例 -- 適用時添加型別提示促進學習 +- 遵循 PEP 8 風格規範 +- 清晰且具教育意義的程式碼範例 +- 適當使用型別註記方便學習 ### Markdown 文件 -- 明確的標題層級 -- 程式碼區塊標明語言 -- 連結額外資源 -- 在 `images/` 資料夾存放截圖與圖片 -- 圖片添加替代文字以利無障礙 +- 清楚的標題層級 +- 含有語言指示的程式區塊 +- 附加資源連結 +- 在 `images/` 資料夾中的截圖與圖片 +- 針對圖片附加替代文字以利無障礙 ### 檔案組織 -- 課程目錄依序編號 (1-getting-started-lessons, 2-js-basics 等) -- 各專案含 `solution/` 及多為 `start/` 或 `your-work/` 目錄 -- 圖片存放於各課程專屬 `images/` 資料夾 -- 翻譯存於 `translations/{language-code}/` 架構 +- 課程依序編號(1-getting-started-lessons、2-js-basics 等) +- 每個專案有 `solution/` 且通常有 `start/` 或 `your-work/` 目錄 +- 圖片儲存在課程專屬的 `images/` 資料夾中 +- 翻譯存放於 `translations/{language-code}/` 結構中 ## 建置與部署 -### 測驗應用部署 (Azure 靜態網站應用) +### 測驗應用部署 (Azure 靜態網站) -quiz-app 配置用於 Azure 靜態網站應用部署: +quiz-app 配置為 Azure 靜態網站部署: ```bash cd quiz-app npm run build # 建立 dist/ 資料夾 -# 在推送到 main 分支時,透過 GitHub Actions 工作流程部署 +# 在推送至 main 分支時,透過 GitHub Actions 工作流程進行部署 ``` -Azure 靜態網站應用設定: +Azure 靜態網站配置: - 應用位置:`/quiz-app` - 輸出位置:`dist` - 工作流程:`.github/workflows/azure-static-web-apps-ashy-river-0debb7803.yml` @@ -197,81 +197,81 @@ Azure 靜態網站應用設定: ```bash npm install # 安裝 docsify-to-pdf -npm run convert # 從 docs 生成 PDF +npm run convert # 從 docs 產生 PDF ``` ### Docsify 文件 ```bash -npm install -g docsify-cli # 全局安裝 Docsify +npm install -g docsify-cli # 全域安裝 Docsify docsify serve # 在 localhost:3000 提供服務 ``` -### 專案專屬建置流程 +### 專案建置 各專案目錄可能有獨立建置流程: -- Vue 專案:執行 `npm run build` 生成生產包 -- 靜態專案:無建置步驟,直接提供檔案 +- Vue 專案:使用 `npm run build` 產生生產包 +- 靜態專案:不需建置,直接提供檔案服務 -## 拉取請求指導方針 +## Pull Request 指南 ### 標題格式 -使用清晰描述性標題,明確變更範圍: -- `[Quiz-app] 新增第 X 課測驗` +使用清晰且描述性標題指示修改範圍: +- `[Quiz-app] 新增課程 X 測驗` - `[Lesson-3] 修正生態瓶專案錯字` -- `[Translation] 新增第 5 課西班牙語翻譯` -- `[Docs] 更新安裝指示` +- `[Translation] 新增課程 5 之西班牙文翻譯` +- `[Docs] 更新安裝說明` -### 必須檢查 +### 必要檢查 提交 PR 前: 1. 程式碼品質: - - 在改動專案目錄執行 `npm run lint` + - 在相關專案目錄執行 `npm run lint` - 修正所有 lint 錯誤與警告 2. 建置驗證: - 如適用,執行 `npm run build` - - 確認無建置錯誤 + - 確保無建置錯誤 -3. 連結驗證: +3. 連結校驗: - 測試所有 markdown 連結 - 確認圖片引用有效 -4. 內容審查: - - 校對拼寫與文法 - - 確定程式碼範例正確且教學性佳 - - 確認翻譯保持原意 +4. 內容審核: + - 校對拼字與語法 + - 確保程式碼範例正確且具教育意義 + - 確認翻譯準確且保持原意 -### 貢獻要求 +### 貢獻條件 -- 同意 Microsoft CLA(首個 PR 自動檢查) -- 遵守 [Microsoft 開源行為準則](https://opensource.microsoft.com/codeofconduct/) +- 同意 Microsoft CLA(首次 PR 自動檢查) +- 遵循 [Microsoft 開源行為準則](https://opensource.microsoft.com/codeofconduct/) - 詳細指南見 [CONTRIBUTING.md](./CONTRIBUTING.md) -- 如有,於 PR 描述中參照議題編號 +- 如適用於 PR 描述中註明 issue 編號 -### 審核過程 +### 審核程序 - PR 由維護者與社群審核 -- 優先考慮教育清晰度 -- 程式碼範例應遵循當前最佳實踐 -- 翻譯需準確且符合文化背景 +- 優先考量教育清晰度 +- 程式碼範例應符合最佳實務 +- 翻譯審核確保準確且符合文化背景 ## 翻譯系統 ### 自動翻譯 -- 使用 GitHub Actions 配合 co-op-translator 工作流程 +- 透過 GitHub Actions 配合 co-op-translator 工作流程 - 自動翻譯超過 50 種語言 -- 原始檔位於主目錄 -- 翻譯檔存放於 `translations/{language-code}/` +- 來源檔置於主要目錄中 +- 翻譯檔存於 `translations/{language-code}/` 目錄 ### 手動翻譯改進 -1. 定位 `translations/{language-code}/` 中的檔案 -2. 在保留結構下進行改進 -3. 確保程式碼範例可正確運行 +1. 定位於 `translations/{language-code}/` 中的檔案 +2. 進行改進並保留結構 +3. 確保程式碼範例依然可運作 4. 測試任何本地化測驗內容 ### 翻譯元資料 @@ -289,120 +289,122 @@ CO_OP_TRANSLATOR_METADATA: --> ``` -## 除錯與故障排除 +## 除錯與疑難排解 ### 常見問題 測驗應用無法啟動: -- 檢查 Node.js 版本(建議 v14+) -- 刪除 `node_modules` 與 `package-lock.json`,重啟 `npm install` -- 確認埠口無衝突(預設 Vite 埠 :5173) +- 確認 Node.js 版本(建議 v14 以上) +- 刪除 `node_modules` 和 `package-lock.json`,重新執行 `npm install` +- 檢查端口是否衝突(預設 Vite 使用 5173 端口) **API 伺服器無法啟動**: -- 檢查 Node.js 版本(node >=10) -- 確認埠口未被佔用 -- 確保已執行 `npm install` 安裝所有相依套件 +- 確認 Node.js 版本符合最低要求(node >=10) +- 檢查該端口是否已被占用 +- 確保已執行 `npm install` 以安裝所有相依套件 瀏覽器擴充無法載入: -- 檢查 manifest.json 格式是否正確 -- 查看瀏覽器控制台錯誤訊息 -- 遵循瀏覽器專用擴充安裝說明 +- 確認 manifest.json 格式正確 +- 查看瀏覽器主控台有無錯誤訊息 +- 參考瀏覽器專屬擴充安裝說明 **Python 聊天專案問題**: -- 確認已安裝 OpenAI 套件:`pip install openai` -- 確認已設定 GITHUB_TOKEN 環境變數 -- 檢查 GitHub Models 存取權限 +- 確保安裝了 OpenAI 套件:`pip install openai` +- 確認 GITHUB_TOKEN 環境變數已設定 +- 檢查 GitHub Models 訪問權限 **Docsify 無法提供文件服務**: - 全域安裝 docsify-cli:`npm install -g docsify-cli` -- 於儲存庫根目錄執行 +- 從儲存庫根目錄執行 - 確認存在 `docs/_sidebar.md` -### 開發環境提示 +### 開發環境建議 -- 使用 VS Code 搭配 Live Server 外掛瀏覽 HTML 專案 -- 安裝 ESLint 與 Prettier 外掛保持格式一致 -- 透過瀏覽器開發者工具調試 JavaScript -- Vue 專案可安裝 Vue DevTools 瀏覽器外掛 +- 使用 VS Code 搭配 Live Server 擴充執行 HTML 專案 +- 安裝 ESLint 和 Prettier 擴充以維持格式一致 +- 利用瀏覽器開發者工具除錯 JavaScript +- Vue 專案建議安裝 Vue DevTools 瀏覽器擴充 ### 性能考量 -- 翻譯檔案量大(50+ 種語言)導致完整 clone 檔案龐大 -- 若只處理內容,可用淺層 clone:`git clone --depth 1` -- 編輯英文內容時,可排除翻譯檔搜索 -- 建置流程初次執行較慢(npm install、Vite 建置) +- 多達 50 種語言之翻譯使完整克隆資料龐大 +- 僅編輯內容可使用淺層克隆:`git clone --depth 1` +- 編輯英文內容時可排除翻譯搜尋 +- 第一次執行建置流程可能較慢(npm install、Vite build) -## 安全考量 +## 安全性考量 ### 環境變數 -- API 金鑰切勿提交至儲存庫 -- 使用 `.env` 檔(已列入 `.gitignore`) +- API 金鑰不可提交至儲存庫 +- 使用 `.env` 檔案(已列入 `.gitignore`) - 文件中說明所需環境變數 ### Python 專案 - 使用虛擬環境:`python -m venv venv` -- 維持相依性更新 -- GitHub 令牌應限制在必須權限 +- 持續更新相依套件 +- GitHub Token 需具最小必要權限 -### GitHub Models 存取 +### GitHub Models 存取權限 -- 需個人存取令牌 (PAT) -- 將令牌設為環境變數保存 -- 切勿提交令牌或認證資訊 +- 使用個人存取權杖(PAT) +- 將 Token 設為環境變數 +- 絕不提交 Token 或帳密 -## 補充說明 +## 附加說明 ### 目標對象 -- 完全沒有網頁開發經驗者 -- 學生及自學者 -- 教師於教室中使用此課程 -- 內容設計強調無障礙與逐步技能建立 +- 完全初學者的網頁開發學習者 +- 學生與自我學習者 +- 在教室使用課程的老師 +- 內容設計強調無障礙性及技能逐步建立 ### 教育理念 -- 專案導向學習法 -- 頻繁的知識檢測(測驗) -- 動手編寫程式練習 -- 實務應用範例 -- 著重基礎概念,漸進探索框架 +- 以專案為基礎的學習方式 +- 頻繁的知識檢核(測驗) +- 實作程式練習 +- 真實世界應用範例 +- 注重基礎概念,先於框架學習 ### 儲存庫維護 -- 積極活躍的學習及貢獻社群 +- 積極的學習及貢獻社群 - 定期更新相依套件與內容 - 維護者監控議題與討論 -- 翻譯透過 GitHub Actions 自動更新 +- 透過 GitHub Actions 自動化翻譯更新 ### 相關資源 - [Microsoft Learn 模組](https://docs.microsoft.com/learn/) -- [學生資源中心](https://docs.microsoft.com/learn/student-hub/) -- 推薦使用 [GitHub Copilot](https://marketplace.visualstudio.com/items?itemName=GitHub.copilot) +- [學生中心資源](https://docs.microsoft.com/learn/student-hub/) +- 推薦學習者使用 [GitHub Copilot](https://marketplace.visualstudio.com/items?itemName=GitHub.copilot) - 其他課程:生成式 AI、資料科學、機器學習、物聯網課程 -### 個別專案操作 +### 使用特定專案說明 + +個別專案詳細說明請參考: -詳細說明請參閱下列 README: - `quiz-app/README.md` - Vue 3 測驗應用 -- `7-bank-project/README.md` - 含驗證的銀行應用 -- `5-browser-extension/README.md` - 瀏覽器擴充開發 +- `7-bank-project/README.md` - 帶身份驗證的銀行應用 +- `5-browser-extension/README.md` - 瀏覽器擴充功能開發 - `6-space-game/README.md` - Canvas 遊戲開發 - `9-chat-project/README.md` - AI 聊天助理專案 ### Monorepo 結構 -雖非傳統 monorepo,但包含多個獨立專案: -- 每堂課皆自成一格 -- 專案間無相依共享 -- 可單獨作業不影響其他專案 -- 克隆完整儲存庫以取得完整課程體驗 +雖非傳統 monorepo,此儲存庫包含多個獨立專案: + +- 各課程自成一體 +- 專案間不共用相依套件 +- 可單獨工作不影響其他專案 +- 克隆整個儲存庫可獲得完整課程體驗 --- **免責聲明**: -本文件係使用 AI 翻譯服務 [Co-op Translator](https://github.com/Azure/co-op-translator) 進行翻譯。雖然我們致力於保持準確性,但請注意,自動翻譯可能包含錯誤或不準確之處。原始文件的母語版本應視為權威資料來源。對於重要資訊,建議採用專業人工翻譯。我們不對因使用本翻譯所引起之任何誤解或誤釋負責。 +本文件使用 AI 翻譯服務 [Co-op Translator](https://github.com/Azure/co-op-translator) 進行翻譯。雖然我們努力追求準確性,但請注意,自動翻譯可能包含錯誤或不準確之處。原始文件的母語版本應被視為權威來源。對於關鍵資訊,建議採用專業人工翻譯。我們對因使用此翻譯而產生的任何誤解或誤釋概不負責。 \ No newline at end of file