為核心貢獻心力

Blockly 核心存放區包含執行任何以 Blockly 為基礎的應用程式所需的程式碼。

重要須知

以下簡要說明 Blockly 核心的相關資訊,您必須瞭解這些資訊才能建立提交要求。

  • 工作分支是 develop,所有 PR 都應針對 develop 進行。
  • 您必須填寫要求的資訊,才能完成提取要求範本。
  • 程式碼必須符合 Google 的 TypeScript 樣式指南
  • 在提交訊息和提取要求標題中使用傳統提交
  • 使用者可見的字串必須位於 /msg/messages.js 檔案中,才能進行翻譯。全球只有不到 6% 的人以英語為母語。
  • 區塊中的文字通常應全部使用小寫字母 (就像大多數程式設計語言中的關鍵字一樣)。
  • 維持回溯相容性。市面上有許多 Blockly 應用程式,請勿破壞其他人的應用程式。
  • 任何新的程式碼檔案都必須在前面加上 Apache License v2.0:

    /**
     *   @license
     *   Copyright <Current YYYY> Google LLC
     *   SPDX-License-Identifier: Apache-2.0
     */
    

進行變更並驗證

  1. 執行 npm install 以安裝依附元件。
  2. 執行 npm run start 來啟動執行 Playground 的伺服器。您可以使用這個頁面測試現有的行為。詳情請參閱「Playground」頁面。
  3. 對程式碼進行必要變更。
  4. 如果您讓伺服器繼續執行,請重新整理畫面,查看變更內容。否則,請重新啟動伺服器,並確認程式碼的運作情形是否如預期,且控制台中沒有任何錯誤或警告。
  5. 執行 npm run build,並確認沒有建構錯誤。
  6. 編寫自動化測試。這些通常是 tests/mocha 目錄中的 Mocha 測試,但我們可能會要求您提供其他類型的測試。
  7. 執行 npm run format 即可設定程式碼格式,並自動修正部分 Lint 問題。
  8. 執行 npm test 來執行自動化測試。這也會執行 eslint
  9. 如果有 Lint 錯誤,請執行 npm run lint:fix 來修正可自動修正的問題。處理任何剩餘的 Lint 警告或錯誤。
  10. 如果所有測試都通過,您就可以針對develop 開啟 PR,並在其中加入變更。