2020年度JavaScript開源大獎揭曉,共有6個項目獲獎

自2018年以來,JavaScript開源大獎每年都會選出四個類別最有影響力的開源項目:年度突破獎、最激動人心技術應用獎、年度最有趣項目獎和對社區最有影響力貢獻獎。2020年獎勵了6個開源項目。

Deno和Svelte獲得了年度突破獎。

Deno是一個簡單、安全的現代JavaScript和TypeScript運行時,使用了V8,基於Rust開發。經過兩年的開發,Deno最終在2020年5月發佈了1.0版本,並準備投產使用。Deno支持WebAssembly,使用可編譯到WebAssembly的語言(Rust、Go、C++等)開發的原生庫可在Deno應用程序中運行。

Svelte是一個基於組件的UI框架,用於構建交互式Web應用程序,如React或Vue。但與React和Vue不同的是,Svelte在構建時會對應用程序代碼進行編譯,並生成小而高性能的編譯代碼。Svelte最近添加了TypeScript支持。據wappalyzer.com報道,《紐約時報》、Spotify、chess.com、飛利浦等很多網站都在使用Svelte。

Mock Service Worker(MSW)獲得了最激動人心技術應用獎。MSW是一個針對瀏覽器和Node的API模擬庫。MSW的工作原理如下:

Mock Service Worker與其他工具的區別在於它的用法。MSW利用Service Worker API(攔截請求進行緩存)將定義的網絡級別的響應發給捕獲的請求。在這種情況下,應用程序不知道底層響應是模擬的。

在開發、測試和調試時都可以啓用MSW的API模擬,無需後端支持。MSW支持REST和GraphQL API。

Pose Animator贏得今年的年度最有趣項目獎。Pose Animator基於二維矢量圖,根據從PoseNetFaceMesh識別出的結果實時呈現曲線動畫。它從計算機圖形學中借鑑了基於骨架的動畫的思想,並將其應用於向量角色:

來源:GitHub項目

PoseNet是一個使用了TensorFlow.js的獨立模型,支持在瀏覽器中進行實時姿勢計算。MediaPipe Facemesh能夠基於486個3D面部進行人臉識別。

對社區最具影響力貢獻獎授予Perfume.js。這個庫是一個Web性能庫,用於度量所有以用戶爲中心的性能指標。Perfume.js利用了最新的Performance API(High Resolution Time)來收集現場數據,用以度量真實用戶的體驗。收集的數據包括第一次繪製(FP)、第一次內容繪製(FCP)、最大內容繪製(LCP)、第一次輸入延遲(FID)、累計佈局移位(CLS)、總阻塞時間(TBT)、導航時間、資源時間,等等。收集到的數據被輸入到分析工具用於監控:

www.coinbase.com美國、意大利、印尼、尼日利亞站點的FCP。圖片來源爲Perfume的GitHub主頁

Perfume還會在測量的數據中加入與設備能力(設備內存、CPU數量和Service Worker的狀態)有關的附加信息。

最後,“生產力促進獎”頒給了Snowpack。Snowpack致力於構建恆定時間(<50毫秒)的Web應用程序。它利用了JavaScript的原生模塊系統(稱爲ESM),並在開發期間爲未打包的應用程序提供服務。Snowpack通過插件支持生產打包構建。Snowpack爲avaScript、TypeScript、JSX、CSS和圖像文件提供內置支持,並可通過插件支持Vue和Svelte文件。

Svelte作者Rich Harris最近在Svelte峯會上演示了與Svelte下一個版本相關的工作,其中就使用了Snowpack。Harris解釋說:

我認爲我們很快就會到達一個點,即在開發過程中使用打包器的項目看起來會有點過時。

JavaScript開源大獎是由GitNation發起的,每年舉辦一次。GitNation還負責管理React開源大獎Vue開源大獎

原文鏈接

JavaScript Open Source Awards 2020 Distinguishes Six Impactful Projects

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章