simonw/browser-compat-db
受Mozilla新推出的MDN MCP服務啓發,Simon Willison將mdn/browser-compat-data倉庫中的瀏覽器兼容性數據轉換為SQLite數據庫。他使用Claude Code for web (Opus 4.8)和sqlite-utils生成轉換腳本,並通過GitHub Actions工作流將約66MB的數據庫部署到GitHub CDN,支持開放CORS頭,用户可以直接下載或通過Datasette Lite在線探索。
2026年6月24日,Simon Willison在其博客上發佈了一個名為simonw/browser-compat-db的新項目。該項目源於Mozilla新推出的MDN MCP服務,該服務提供了一種通過模型上下文協議訪問MDN文檔的方式。受此啓發,Willison決定將Mozilla維護的全面瀏覽器兼容性數據倉庫mdn/browser-compat-data轉換為SQLite數據庫,以便更便捷地訪問和查詢。
為了實現這一轉換,Willison利用了Claude Code for web(Opus 4.8)來生成Python腳本。該腳本依賴於他之前開發的sqlite-utils工具包,能夠將JSON格式的兼容性數據高效地導入SQLite數據庫。生成的數據庫文件大小約為66MB,包含了大量關於瀏覽器、版本及特性支持的詳細信息。
一個關鍵的挑戰是如何讓這個數據庫能夠通過GitHub CDN公開訪問,並且支持開放的CORS頭,以便其他應用能夠直接獲取數據。Willison注意到GitHub Releases並不提供CORS頭,但存儲在常規GitHub倉庫中的文件默認支持CORS。於是他藉助Codex Desktop(GPT-5.5)構建了一個GitHub Actions工作流。該工作流在每次更新時自動構建數據庫文件,然後將生成的browser-compat.db文件強制推送到一個名為“db”的獨立孤兒分支上。這樣,數據庫文件就託管在了GitHub的CDN上,並帶有開放的CORS頭。
用户可以直接從GitHub倉庫的db分支下載該數據庫文件,也可通過Datasette Lite在線工具進行交互式探索。Datasette Lite是一個基於Web的SQLite數據庫瀏覽器,支持SQL查詢,使得開發者能夠快速檢索特定瀏覽器版本的兼容性信息。例如,用户可以查詢某個CSS屬性在哪些瀏覽器版本中受支持。
Willison的這一舉措展示瞭如何利用AI輔助編程工具(如Claude Code和Codex Desktop)與自動化工作流(GitHub Actions)相結合,將複雜的數據源轉化為開放、可交互的資源。這不僅降低了前端開發中兼容性查詢的門檻,也體現了AI在數據處理和工具構建中的潛力。