最近,對于今年 5 月份 GitHub 上開源項目的排名已經統計出來了,本文列舉了 12 項最熱門的開源項目。
1.Node 之父的新項目 deno(Star 3625)
最近,Node 之父發布了新的開源項目 deno,從官方介紹來看,可以認為它是下一代 Node,通過使用 Go 語言代替 C++,重新編寫跨平臺底層內核驅動,上層仍然使用 V8 引擎,最終提供一個安全的 TypeScript 運行時。
2.Javascript-algorithms (Star 16607)
這個項目包含了多種基于 JavaScript 的算法與數據結構,每種算法和數據結構都有自己的 README,并提供了相關說明。
3.Build-your-own-x(Star 27118)
Build your own 系列包括了各種環境的構建技術集合,也有很多自己動手的實踐方法。
4.Architect-awesome(Star 17662)
這個項目中提供了史上最全的后端架構師技術圖譜。
5.ReLaXed (Star 8899)
這是一種使用 HTML 或 Pug(HTML 的簡寫)交互式創建 PDF 文檔的工具。它允許使用 CSS 和 JavaScript 定義復雜的布局。
6.gVisor (Star 5892)
這是一款新型的沙箱解決方案,它能夠為容器提供安全的隔離措施,同時繼續保持優于虛擬機的輕量化特性。gVisor 能夠與 Docker 和 Kubernetes 實現集成,從而在生產環境中更輕松地建立起沙箱化容器系統。
7.Day.js(Star 11119)
這是一個只有 2kb 大小的輕量級 JavaScript 時間日期處理庫,它與 Moment.js 的 API 設計完全一樣。也就是說,對于曾經使用過 Moment.js 的開發人員,那么就能夠輕松地掌握如何使用 Day.js 。
8.Tensorflow(Star 101347)
包含了使用 TensorFlow 構建的模型和示例的教程,旨在更好地維護、測試,并與最新的 TensorFlow API 保持同步最新。
9.Interview-Notebook(Star 23655)
這里對技術面試需要掌握的基礎知識進行了整理,主要分成算法、操作系統、網絡、面向對象、數據庫、Java、分布式、工具、編碼實踐這幾個大類。
10.proton-native(Star 7168)
它結合了 node 的環境、react 的語法和 libui 的跨平臺調用 ui 控件的能力,可以用于構建跨平臺的桌面應用上,構建方式也比較簡單。
11.Vue(Star 95976)
Vue.js 是構建 Web 界面的 JavaScript 庫,它提供了數據驅動的組件,還有簡單靈活的 API。
12.Vuido(Star 3689)
Vuido 讓使用 Vue.js 構建輕量級原生桌面應用成為可能。使用 Vuido 構建的應用可以在 Windows 和 Linux 上運行 。
關注@區塊鏈學習筆記,一起學習區塊鏈。
日,Pug 3.0.0 正式發布,Pug 原名 Jade,是由 TJHolowaychuk 開發的一款模板引擎,也是 Haml 的 JavaScript 實現版本。Pug 3.0.0 增加了一些新功能,除此之外新版本將不再支持 Node.js 6 和 Node.js 8。
例如:
復制代碼
// options.jsexports.filters={png: {// instead of a function, specify an object with a "renderBuffer" property// whose value is a function that takes a Buffer instead of a stringrenderBuffer: function(buffer, options) {var data=Buffer.from(buffer).toString('base64');return '<img src="data:image/png;base64, ' + data + '"/>'; } }};
然后就可以使用該過濾器了:
復制代碼
// foo.puginclude:png my-small-image.png
作者表示,自從他將 Pug 的單獨的軟件包合并到“mono repo”中以來,發行的難度增加了,后經一位 ThreadsStyling 的同事介紹了解到了語義釋放,進而廣泛地使用它,不過仍有一些限制:
作者一直認為解決此問題的方法是將更改日志附加到拉取請求,而不是提交請求。所以在過去的 6 個月中,他一直在探索這個問題的解決方案。此次的 Rolling 版本提供了一個簡單的用戶界面,可以將更改日志附加到請求中的特定軟件包。然后,它會提供一個 CLI 來發布軟件包,開發者可以在持續集成服務上運行該軟件包。
Pug 采用簡化語法的方式,將原本臃腫的 HTML 標記精簡化,同時還有很多優點:超強的可讀性、靈活易用的縮進、塊擴展、代碼默認經過代碼處理以增加安全性、擁有編譯和運行時的上下文錯誤報告、命令行編譯支持、HTML5 模式、可選的內存緩存、聯合動態的靜態標記類、利用過濾器解析樹的處理…
因為這些優點,Pug 收獲了很多開發者的好評。開發者表示,Pug 和 Vue 簡直是天作之合,大幅度提高了編碼效率,不過 Pug 似乎不太適合與 React 一起使用,因為關閉標簽會浪費太多行代碼。
isual Studio Code是一個免費跨平臺的開源代碼編輯器,具有廣泛的預構建擴展庫,具備很多有用的附加功能。但是在使用過程中,我們有時不需要所有的功能,例如Python擴展(超過220萬次安裝)提供很多支持,IntelliSense、代碼格式化等等,而我們往往指示想要快速查汝之行有用且重復的較小代碼塊,例如循環或條件語句。
現在已經有人編寫了這種小的代碼塊,并且打包好供其他程序員使用。
為什么我們不使用 Visual Studio Code Marketplace,而是要選擇"Snippets"呢?因為這種小的代碼片段不僅可以在擴展類別中使用,也適用于不同語言、調試器、格式化程序等等。
由于 VS Code是運行在Windows、Linux和MacOS上的跨平臺工具,而JavaScript正在成為各種跨平臺項目的首選編程語言,所以今天就為大家推薦一些實用的JavaScript代碼片段。評選標準主要是基于下載次數、評級以及個人主觀評估。
JavaScript (ES6) Code Snippets
隨著JavaScript的版本發展,ES6成為了新的JavaS核心語言標準,主流瀏覽器也實現了其很多功能。
為了幫助用戶快速上手新功能,開發者Charalampos Karypidis發布了JavaScript (ES6) code snippets。
該代碼片段包支持JavaScript和TypeScript,目前下載已超過41.5萬次,評級為4.6。自首次發布以來,Charalampos Karypidis一直都在更新維護,所以不斷有新功能出現,如1.4.0版本支持用戶請求HTML文件。如果您也對開源項目有興趣,可以去GitHub上查看補充。
這個代碼片段包包含34個小片段: import and export、class helpers、 various methods和console methods。
Angular v4 TypeScript Snippets
最初由Google開發的AngularJS和Angular(基于TypeScript)的框架全部可以在VS Code extension marketplace 中找到。其余不兼容的框架幾乎總是會出現在“XX JavaScript框架”類似的文章中。也許你現在還在看這種JavaScript頂級框架的文章,但是我已經在看 開發者John Papa為Angular 4.0.0開發的Angular v4 TypeScript Snippets。Angular v4 TypeScript Snippets三月剛剛發布,據說更快更小,同時也涵蓋了很多新功能,如ahead-of-time視圖引擎的改進,TypeScript 2.1和2.2兼容性,ES2015實驗性構建等等。
目前Papa代碼包已經被下載5.18萬次,是JavaScript代碼片段中下載量第一。該包中的42個片段可以分為三大類,TypeScript Angular Snippets、TypeScript RxJS Snippets (Reactive Extensions)和HTML Snippets。
使用該片段的方式與上述ES6片段相同,首先鍵入字母“a”,然后再輸入片段的名稱,直到您選擇所需的選項為止。要插入一個新組件的shell代碼,例如你開始輸入“a-component”,直到你可以選擇全名,你得到這個:
Angular v4 TypeScript片段包的平均評級為4.8,在GitHub上共獲得312星,以及112位開發者的支持,擁有MIT認證。
Vue 2 Snippets
Vue.js是一個熱門的JavaScript框架,StackFlow調查顯示Vue.js已經呈現出快速應用的趨勢,是StackFlow年度增長最快的,Backbone.js, Ember.js和Meteor等框架似乎已經開始進入到生命周期的后期了。
當你還在研究Vue是否能夠打入框架的最前列時,已經有人走在了最前端。hollowtree發布了Vue 2 Snippets。Vue 2 Snippets基于vue.tmLanguage,支持vue(.vue)、HTML(.html的)、JavaScript(.js)、TypeScript(.ts)和pug(.pug)語言。
請點
該軟件包包含82個片段,主要用于JavaScript,HTML和Vue Router功能。如果要收集錯誤,你可以使用字母“v”鍵入,直到找到VueConfigErrorHandler選項,按下ENTER鍵可以:
Vue.config.errorHandler=function(err,vm){
//處理錯誤
}
所有命令都不以“v”開始,如果要快速插入渲染器,你可以使用字母“r”開始輸入,直到找到渲染器選項,這樣您可以:
const renderer=require('vue-server-renderer').createRenderer()
如果您必須對很多選項進行排序,那么沒有一致的觸發器模式可能會令人困惑,但使用情況會變得常規,有一點經驗。
Vue 2 Snippets的安裝近5.4萬次,獲得了4.9的評級,在GitHub上獲得了九顆星,目前的發展比較積極規律。
React標準樣式代碼片段
開發者Timon van Spronsen發布了React 標準樣式代碼片段,比照ES6 語法中的JavaScript標準樣式指南開發的React代碼片段。
React是由Facebook創建和開源的流行框架。雖然Spronsen并不是安裝量第一的Reactjs代碼片段,
但是我還是建議希望遵循JavaScript標準樣式的開發者使用這一產品,它的安裝量達到21610,同時也為Karypidis項目提供了支持。
Spronsen說,他的片段基于babel-sublime-snippets package,可預見地提供了與Karypidis包相同的功能。支持以下文件類型:JavaScript(.js); TypeScript(.ts); JavaScript React(.jsx;)和TypeScript React(.tsx) 。
它包括51個片段,其中29個專門用于支持類型。例如,觸發器“rccp [TAB key]”在類之后引入了一個帶有prop類的類組件框架,如下所示:
該軟件包評論不多,但5.0的評級還是比較難得的,GitHub項目獲得了10顆星。
ES6 / ES7的React-Native / React / Redux代碼片段
相信React Native是眾多程序員的心頭之愛,雖然我已經安裝了完整的React Native Tools擴展,但是我相信EQuimper的ES6 / ES7軟件包的React-Native / React / Redux代碼片段對于功能需求范圍較窄的程序員來說還是很有吸引力的。
它一共提供了30個片段,包括從導入到測試,例如生成組件類的ccs觸發器,
該代碼片段包雖然已經被安裝了36000次,但是遺憾的是現在還沒有評價。
Visual Studio Marketplace中僅在代碼片段選項中搜索“JavaScript”就會出現105個相關結果,而且這些都是免費來源的,程序員還可以獲取源代碼,然后根據自己的需求來做定制化的修改。這么贊的資源,程序員快快行動起來吧。
*請認真填寫需求信息,我們會在24小時內與您取得聯系。