跳至主要內容

本機開發

感謝您有興趣參與 typescript-eslint 開發!❤️‍🔥

請參閱參與問題,以瞭解一般參與流程的詳細資訊。

設定

從 GitHub 分岔儲存庫安裝 Yarn

git clone https://github.com/<your-name-here>/typescript-eslint
cd typescript-eslint
yarn

您可以在根目錄的 package.json 檔案中查看 packageManager 欄位,以確定我們使用的 yarn 版本。

然後,安裝後指令碼將透過 (yarn build) 在本機完整建立您的儲存庫。至此,您就可以開始開發! 🚀

建置

您可以在根目錄下執行 yarn build 來建置所有套件,或在特定的套件內執行以建置該套件。

請注意,套件通常依賴於彼此的建置輸出,且您需要為相依套件執行 yarn build,才能讓其使用者套用任何新的本地變更。例如,如果您在 scope-manager 內進行變更,並想在 eslint-plugin 中使用,您需要從根目錄或在 packages/scope-manager 中執行 yarn build

驗證變更

以下檢查都會自動執行於 pull request 上。您也可以在本地執行這些檢查。

參閱 貢獻 > Pull Request,了解更多關於 pull request 的資訊。

格式化

我們使用 Prettier 來自動格式化程式碼。Git 的提交前掛鉤會將其套用至所有已提交的變更。您也可以在任何套件或根目錄中執行 yarn format

Linting

所有程式碼變更都必須通過 ESLint。您可以在任何套件或根目錄中執行 yarn lint 來執行 ESLint。

校對

變更必須通過兩套文件中檢查工具進行文件和命名檢查,其指令可從根目錄執行

  • yarn check-spelling: CSpell,針對所有程式碼
  • yarn lint-markdown: Markdownlint,針對 Markdown 文件

測試

理想情況下,所有程式碼變更都應經過單元測試,如果可行的話。您可以在任何套件中執行 yarn test 來執行其測試。

VS Code 啟動任務 提供任務,讓 視覺偵錯 執行測試。

類型檢查

所有程式碼都應通過 TypeScript 類型檢查。您可以在任何套件或根目錄中執行 yarn typecheck 來執行 tsc

執行 yarn typecheck -w,以觀察模式啟動 tsc

規則開發

本儲存庫的某些區段是透過手動執行腳本從規則檔讀取資料而產生的。如果你修改了規則,你可能需要從根目錄執行下列其中一個或兩個指令:

  • yarn generate-configs:重新產生 已共用的設定檔
  • yarn test docs -upackages/eslint-plugin:根據規則文件和選項重新產生快照

網站開發

我們的互動式文件網站是透過 Docusaurus 建置的。從根目錄或 packages/website 執行 yarn start 將會在 localhost:3000 上啟動一個本機開發伺服器。

website 套件仰賴其他已建置套件。我們建議在你執行 yarn start 之前,先從根目錄執行 yarn build