畫風(fēng)清奇!盤點(diǎn)各編程語(yǔ)言中有趣的開(kāi)源項(xiàng)目!
生活不易,編程苦悶,不如“人為制造”點(diǎn)趣味,讓日子過(guò)得更加有玩味感。
本文參考了一些項(xiàng)目推薦,整理了一些編程語(yǔ)言中個(gè)人認(rèn)為比較有意思,也相對(duì)實(shí)用的開(kāi)源項(xiàng)目,每個(gè)語(yǔ)言列的都不多,感興趣的有空可以試試看。
一、Go
1、Gobot
Gobot 是一個(gè)機(jī)器人、無(wú)人機(jī)和物聯(lián)網(wǎng)框架,提供在同一時(shí)間合并多個(gè)不同設(shè)備的簡(jiǎn)單且強(qiáng)大的解決方案。
Gobot 目前共支持18個(gè)不同的平臺(tái),它包含一個(gè) cppp.io 兼容的 RESTful API 來(lái)查詢?cè)谌褐羞\(yùn)行的任何連接、設(shè)備或機(jī)器人的狀態(tài),還能夠直接向設(shè)備和機(jī)器人發(fā)出命令。
Go, Robot, Go!
2、Cayley
Cayley 是一個(gè)開(kāi)源圖(Graph)數(shù)據(jù)庫(kù),其靈感來(lái)自于 Freebase 和 Google 的 Knowledge Graph 背后的圖數(shù)據(jù)庫(kù)。
Cayley 的目標(biāo)是成為開(kāi)發(fā)人員工具箱中關(guān)聯(lián)數(shù)據(jù)和圖形數(shù)據(jù)的一部分。運(yùn)行簡(jiǎn)單,只需 3 到 4 個(gè)命令。
3、Traefik
Træfɪk 是一個(gè)新型的http反向代理、負(fù)載均衡軟件,能輕易的部署微服務(wù)。
Træfɪk 支持多種后端 (Docker、Swarm、Mesos/Marathon、 Consul、Etcd、 Zookeeper、BoltDB、Rest API、file...) ,可以對(duì)配置進(jìn)行自動(dòng)化、動(dòng)態(tài)的管理。
二、Python
1、Falcon
Falcon 是一個(gè)高性能的 Python 框架,用于構(gòu)建云端 API 和 Web 應(yīng)用的后端程序。
Falcon 采用的是一個(gè)干凈的設(shè)計(jì),追求 HTTP 和 REST 的“建筑風(fēng)格”。不需要大量的依賴和不必要的抽象。
2、Locust
Locust 是一個(gè)負(fù)載測(cè)試工具。使用 Python 代碼定義用戶行為,也可以仿真百萬(wàn)個(gè)用戶。
Locust 是非常簡(jiǎn)單易用,能測(cè)試出一個(gè)系統(tǒng)可以并發(fā)處理多少用戶。相比其他許多事件驅(qū)動(dòng)的應(yīng)用,Locust 不使用回調(diào),而是使用輕量級(jí)的處理方式 gevent。
3、Coala
Coala 能提供一個(gè)統(tǒng)一的命令行接口用于代碼分析和修復(fù),無(wú)論你使用的是哪種開(kāi)發(fā)語(yǔ)言,使用者可以創(chuàng)建源代碼應(yīng)遵循的規(guī)則和標(biāo)準(zhǔn)。
Coala 有著友好的用戶界面,可以完全自己定制,而且它還可以在任意的開(kāi)發(fā)環(huán)境中運(yùn)行并且是完全模塊化的。
三、JavaScript
1、Chart.js
Chart.js 是使用 <canvas> 元素的簡(jiǎn)易 HTML5 圖表,支持6種統(tǒng)計(jì)圖形,不依賴其他庫(kù)。
Chart.js 提供了兩種可供使用的不同構(gòu)建。Chart.js 和 Chart.min.js 文件包含 Chart.js 和附帶的顏色解析庫(kù)。
2、EME
EME 是一款優(yōu)雅的 markdown 編輯器。設(shè)有專注模式,寫作不受干擾。
EME 可從 Markdown 導(dǎo)出到 HTML/PDF...等各種格式,支持?jǐn)?shù)學(xué)排版,適用于學(xué)生和專業(yè)人士。
3、N1
N1 是一個(gè)可擴(kuò)展的郵件客戶端,設(shè)計(jì)友好,排版簡(jiǎn)潔,帶有輕微的陰影效果。
N1 兼容上百種郵件提供商,包括 Gmail、Yahoo、iCloud、Microsoft Exchange 等等。作為桌面 app 它可以離線運(yùn)行。適用于 Mac、 Windows 和 Linux。
四、Shell
1、oh-my-zsh
oh-my-zsh 是基于 zsh 的功能做的一個(gè)擴(kuò)展,方便的插件管理、主題自定義,以及漂亮的自動(dòng)完成效果。
oh-my-zsh 包括200多個(gè)可選的插件(rails、git、OSX、hub、capistrano、brew、ant、php、python等),140多個(gè)主題,和一個(gè)自動(dòng)更新工具。
Dokku 是一個(gè)迷你版的 Heroku,由 Docker 使用不多于 100 行的 Bash 編寫,是最小的 PaaS 實(shí)現(xiàn)。
Dokku 一旦安裝完成,你就可以通過(guò) Git 推送兼容 Heroku 的應(yīng)用到平臺(tái)上運(yùn)行。
五、Swift
1、Kitura
Kitura 是來(lái)自 IBM 的基于 Web 框架,也是一個(gè) HTTP 服務(wù)器。
Kitura 具有可插拔的中間件,支持 SSL/TLS 和 FastCGI,支持 JSON 解析。
2、Quick
Quick 是一個(gè)行為驅(qū)動(dòng)的 Swift 和 Objective-C 的開(kāi)發(fā)測(cè)試框架。靈感來(lái)自 RSpec、Specta 和 Ginkgo。
3、Alamofire
Alamofire 是一個(gè) HTTP 網(wǎng)絡(luò)開(kāi)發(fā)工具包,功能強(qiáng)大,支持各種 HTTP Method、JSON、文件上傳、文件下載和多種認(rèn)證方法。
六、C/C++
1、Libuv
Libuv 是一個(gè)專注于異步 I / O 的多平臺(tái)支持庫(kù),目標(biāo)是在這個(gè)庫(kù)中包含所有平臺(tái)的差異性。
Libuv 主要被用于 Node.js,但它也被 Luvit、Julia、pyuv 和其它項(xiàng)目使用。
2、Netdata
Netdata 是一個(gè)分布式實(shí)時(shí)性能和健康監(jiān)控系統(tǒng),使用現(xiàn)代化的交互式 Web 儀表板,為其運(yùn)行的系統(tǒng)(包括 Web 和數(shù)據(jù)庫(kù)服務(wù)器等應(yīng)用)提供高效的實(shí)時(shí)洞察力。
Netdata 旨在永久運(yùn)行在所有系統(tǒng)(物理和虛擬服務(wù)器、容器、IoT設(shè)備)上,而不中斷其核心功能。
3、Torch7
Torch7 是一個(gè)科學(xué)計(jì)算框架,支持機(jī)器學(xué)習(xí)算法。易用而且提供高效的算法實(shí)現(xiàn),得益于 LuaJIT 和一個(gè)底層的 C 實(shí)現(xiàn)。
Torch7 的目標(biāo)是在構(gòu)建科學(xué)算法時(shí)具有最大的靈活性和速度,同時(shí)使過(guò)程非常簡(jiǎn)單。