gh、再輸入查詢字串,就會直接前往 GitHub 搜尋結果。過程中你會串接一份 manifest.json,並在背景 service worker 中處理輸入。同時也會熟悉每個專案都會遵循的開發循環(create → dev → build)。
你會做出什麼
| 能力 | 你會獲得的成果 |
|---|---|
| Omnibox 關鍵字流程 | 在瀏覽器網址列輸入 gh 觸發擴充功能行為 |
| 背景事件處理 | 透過 service worker 處理使用者輸入 |
| 本地開發循環 | 快速執行、載入並驗證擴充功能行為 |
| 漸進式強化 | 在基本流程運作後加入即時的 GitHub 搜尋建議 |
計畫
讓 GitHub 搜尋速度像瀏覽器原生捷徑一樣快。擴充功能會保留關鍵字gh;當你輸入 gh 加上查詢字串後,會打開 GitHub 的搜尋結果。
步驟 1:建立擴充功能
使用 Extension.js 的create 指令來建立一個名為 github-search 的最小擴充功能。
步驟 2:建立 manifest 檔案
gh 捷徑並加入處理使用者事件的 service worker。
omnibox.keyword:當你輸入gh時,瀏覽器會觸發事件。background.service_worker:監聽你觸發的事件。
步驟 3:建立背景 service worker
在瀏覽器擴充功能中,背景 service worker(一個獨立於任何可見頁面執行的腳本)負責處理瀏覽器事件。 在這個範例中,加入一段腳本來監聽 Omnibox 輸入,並把查詢字串導向 GitHub 搜尋。 建立service_worker.js:
步驟 4:載入你的擴充功能
你的package.json 檔案現在看起來像這樣:
github-search,並在終端機印出就緒訊息。Chrome 的網址列現在已認得 gh 為關鍵字。
輸入 gh 接著按一下空白鍵,輸入 extension.js,按下 Enter。會開啟新分頁前往 https://github.com/search?q=extension.js&type=issues。
步驟 5:讓它變得更好
透過 Omnibox 輸入監聽器,在網址列直接顯示建議,藉此改善搜尋體驗。 更新service_worker.js,在輸入時抓取 GitHub 建議並顯示出來。
service_worker.js
後續步驟
- 用範本再建立一個擴充功能。
- 用 Playwright E2E 加入自動化檢查。
- 隨著擴充功能成長,瀏覽疑難排解、安全檢查清單與效能手冊。

