有趣的開源項(xiàng)目集結(jié)完畢,HelloGitHub月刊第63期發(fā)布啦!
興趣是最好的老師,HelloGitHub 讓你對(duì)編程感興趣!

簡(jiǎn)介
分享 GitHub 上有趣、入門級(jí)的開源項(xiàng)目。
這里有實(shí)戰(zhàn)項(xiàng)目、入門教程、黑科技、開源書籍、大廠開源項(xiàng)目等,涵蓋多種編程語(yǔ)言 Python、Java、Go、C/C++、Swift...讓你在短時(shí)間內(nèi)感受到開源的魅力,對(duì)編程產(chǎn)生興趣!
感謝大家點(diǎn)亮的每一個(gè) Star ?
以下為本期內(nèi)容|每個(gè)月28 號(hào)更新
C 項(xiàng)目
1、mgba:用 C 語(yǔ)言實(shí)現(xiàn)的 GBA 模擬器。喚起你童年回憶的同時(shí),還能邊學(xué)邊玩,然后再約上三兩好友一起看看源碼和實(shí)現(xiàn),快樂(lè)就是這么簡(jiǎn)單
C++ 項(xiàng)目
2、Rocksdb:用 C++ 編寫的高性能鍵值存儲(chǔ)引擎。該項(xiàng)目是由 Fackbook 數(shù)據(jù)庫(kù)團(tuán)隊(duì)基于 levelDB 開發(fā),鍵值均支持二進(jìn)制流,能夠充分利用多核 CPU 獲得高性能,并兼容 levelDB 的 API 可謂是青出于藍(lán)而勝于藍(lán)。RocksDB 當(dāng)下十分流行,一些開源數(shù)據(jù)庫(kù)底層存儲(chǔ)用的就是它
Go 項(xiàng)目
3、learngo:適合新手學(xué)習(xí) Go 語(yǔ)法的開源項(xiàng)目。學(xué)習(xí)一門編程語(yǔ)言最好的方法就是動(dòng)手寫,該倉(cāng)庫(kù)擁有 1000 多個(gè) Go 語(yǔ)法的問(wèn)題,讓你可以跟著練并附有答案
4、tunny:可設(shè)置固定數(shù)量協(xié)程的 goroutine pool 庫(kù)。通過(guò)這個(gè)項(xiàng)目可實(shí)現(xiàn) goroutine 重復(fù)使用,從而避免過(guò)度創(chuàng)建 goroutine 而造成的內(nèi)存占用過(guò)多等問(wèn)題
5、glab:用 Go 寫的 GitLab 命令行工具。通過(guò)它除了能夠在命令行管理項(xiàng)目、issues、合并提交之外,還能夠查看 CI 的運(yùn)行狀態(tài)

6、fzf:能夠搜“一切”的模糊搜索命令行工具。它能夠搜文件、歷史命令、進(jìn)程、git 提交記錄等信息,支持預(yù)覽內(nèi)容、整合到 Vim/Neovim 編輯器,而且搜索速度極快

7、godis:用 Go 語(yǔ)言寫的 Redis 服務(wù)器。它實(shí)現(xiàn)了 Redis 通信協(xié)議并兼容 redis-cli 客戶端,包含 5 種常用的數(shù)據(jù)結(jié)構(gòu)和命令比如:TTL、發(fā)布訂閱、地理位置以及 AOF 持久化等,Go 的初學(xué)者可以通過(guò)該項(xiàng)目能夠?qū)W習(xí)到關(guān)于 TCP、通信協(xié)議實(shí)現(xiàn)、常用的數(shù)據(jù)結(jié)構(gòu)等知識(shí),Web 開發(fā)學(xué)煩了?換一個(gè)口味,寫個(gè) Redis 作為實(shí)戰(zhàn)項(xiàng)目吧
Java 項(xiàng)目
8、ExoPlayer:谷歌官方開源的 Android 媒體播放器。易于定制和擴(kuò)展,支持豐富的數(shù)據(jù)格式比如:FMP4、FLV、SmoothStreaming、MP3 等

9、traccar:GPS 追蹤平臺(tái)。此項(xiàng)目支持 170 多種 GPS 協(xié)議,1500 多種型號(hào)的 GPS 設(shè)備,功能包含:實(shí)時(shí) GPS 追蹤、數(shù)據(jù)統(tǒng)計(jì)報(bào)告、報(bào)警和通知等等
10、airbyte:一個(gè)開源的 EL(T) 平臺(tái)。能簡(jiǎn)單快速地把用戶提供的應(yīng)用、數(shù)據(jù)庫(kù)等地方的數(shù)據(jù)聚合到平臺(tái),從而可以在一個(gè)平臺(tái)查詢、展示、更新、管理這些數(shù)據(jù)
11、Ward:擁有漂亮儀表盤的服務(wù)器監(jiān)控工具

JavaScript 項(xiàng)目
12、moovie.js:專注于電影的 HTML5 播放器。容易上手和使用,支持倍速播放、快捷鍵操作、字幕偏移即時(shí)調(diào)整等功能

13、nativefier:能夠把 Web 頁(yè)面變成本地應(yīng)用的命令行工具。通過(guò) Electron+Chromium 把網(wǎng)站包裝成本地 .app、.exe 等可執(zhí)行文件,支持運(yùn)行在 Windows、macOS 和 Linux 操作系統(tǒng)上

14、lowdb:支持瀏覽器和 Electron 的輕量級(jí) JSON 文件數(shù)據(jù)庫(kù)。如果是創(chuàng)建沒(méi)有后端的小型前端項(xiàng)目,但還有存儲(chǔ)和管理數(shù)據(jù)的需求,那就快試試 lowdb 吧
15、eruda:一個(gè)專為手機(jī)端設(shè)計(jì)的前端頁(yè)面調(diào)試工具。類似手機(jī)端迷你版開發(fā)者模式,可用于在手機(jī)端調(diào)試頁(yè)面。主要功能包括:顯示 console 日志、檢查元素狀態(tài)、捕獲 XHR 請(qǐng)求、顯示本地存儲(chǔ)和 Cookie 等信息

16、cusdis:這是一個(gè)界面清爽、注重隱私的輕量級(jí)博客評(píng)論系統(tǒng)??梢院芊奖愕嘏c React、Vue 或其他博客系統(tǒng)結(jié)合,并且還提供了一個(gè)后臺(tái)來(lái)管理所有的評(píng)論。除此之外,還支持一鍵從 Disqus 導(dǎo)入、郵件通知等強(qiáng)大的功能

Kotlin 項(xiàng)目
17、mirai:由 Kotlin 語(yǔ)言編寫的 QQ 機(jī)器人框架。該項(xiàng)目提供了 Android QQ 協(xié)議的 API,通過(guò)這些 API 可以實(shí)現(xiàn)自動(dòng)化操作,比如:群管理等功能,注意!該項(xiàng)目不支持一切商業(yè)使用。最后項(xiàng)目的 Kotlin 代碼寫的很好,感興趣的同學(xué)可以去看下源碼
Python 項(xiàng)目
18、pygame:用來(lái)開發(fā)游戲的 Python 庫(kù)。Pygame 已經(jīng)持續(xù)更新多年,網(wǎng)上的教程和資料十分充足,雖然在游戲開發(fā)領(lǐng)域 Python 只是個(gè)弟弟,但如果只是用這個(gè)庫(kù)開發(fā)個(gè) 2D 小游戲還是很順手的。推薦給想用 Python 寫個(gè)小游戲的朋友

19、GitHubPoster:能夠把多個(gè)平臺(tái)上的數(shù)據(jù),生成類似 GitHub 綠墻圖像的工具。比如能夠把發(fā)推的頻率、扇貝單詞打卡等情況生成類似 GitHub 綠墻圖像,使用簡(jiǎn)單感興趣的同學(xué)可以把玩一下

20、guietta:用于制作簡(jiǎn)單 GUI 程序的 Python 庫(kù)。換一種簡(jiǎn)單的方式寫 GUI(圖形用戶界面)程序?

Ruby 項(xiàng)目
21、forem:用來(lái)構(gòu)建社區(qū)的 Ruby 開源項(xiàng)目。一款開源、現(xiàn)成的論壇項(xiàng)目,能夠讓你快速搭建起來(lái)一個(gè)社區(qū)平臺(tái)。國(guó)外知名的程序員社區(qū) dev 用的就是它

Rust 項(xiàng)目
22、rustdesk:免費(fèi)開源的遠(yuǎn)程桌面軟件。開箱即用無(wú)需任何配置,支持 Linux/Mac/Win/Android 等平臺(tái)。還能夠自行搭建服務(wù)器,由用戶自己掌控?cái)?shù)據(jù),不必?fù)?dān)心隱私數(shù)據(jù)泄露的問(wèn)題。在當(dāng)下越來(lái)越多的遠(yuǎn)程桌面軟件都收費(fèi)的情況下的另一個(gè)選擇

23、indicatif:樣式豐富的 Rust 終端進(jìn)度條庫(kù)

24、azul:一個(gè)跨平臺(tái)的 Rust 和 C/C++ 的 GUI 框架。使用 WebRender 渲染引擎和 CSS/HTML-like DOM 構(gòu)建,可用于開發(fā)漂亮的原生桌面應(yīng)用程序

Swift 項(xiàng)目
25、Grid:受 CSS Grid 啟發(fā),用 SwiftUI 編寫關(guān)于視圖(view)布局的開源項(xiàng)目
26、SwiftyJSON:一個(gè) Swift JSON 三方庫(kù),用更簡(jiǎn)單的方式處理 JSON
其它
27、aind:實(shí)現(xiàn)在 Docker 中啟動(dòng)安卓應(yīng)用的項(xiàng)目

28、librime:一款開源的中文輸入法。市面上的輸入法有很多,但你找到讓自己稱心如意的那款了嗎?或許通過(guò)今天的開源項(xiàng)目你就能找到它。RIME 這款開源的輸入法,它不追蹤輸入的內(nèi)容源碼完全開放,可自由切換繁/簡(jiǎn)中文,選擇/設(shè)計(jì)輸入方案和主題,對(duì)繁體字輸入尤為優(yōu)秀。作為輸入法給予用戶無(wú)限的自由和個(gè)性化,作為輸入法框架讓開發(fā)者有更多的發(fā)揮空間。比如支持不同操作系統(tǒng)的版本:Linux(中州韻)、Windows(小狼毫)、macOS(鼠須管)、Android(同文)由于自由度較高上手需要一些時(shí)間,這大概就是獲得自由的代價(jià)吧

29、android-foss:開源的安卓客戶端應(yīng)用集合
30、secguide:騰訊開源的代碼安全指南。該項(xiàng)目包含:C/C++、Python、JavaScript、Java、Go 等語(yǔ)言的安全編碼指南,內(nèi)容簡(jiǎn)單易懂能夠幫助開發(fā)者,在代碼源頭規(guī)避安全風(fēng)險(xiǎn)減少漏洞

31、Kanmail:以看板的方式管理郵件的客戶端應(yīng)用。適用于 Mac/Windows 操作系統(tǒng),支持 Gmail、Outlook 等郵箱

32、hello-world:匯集了 800 多種編程語(yǔ)言 Hello World 的項(xiàng)目
33、material-theme-jetbrains:一款 JetBrains IDE 的 Material 風(fēng)格主題

開源書籍
34、awesome-fenix:講述“如何構(gòu)建大型且可靠的分布式系統(tǒng)”的開源書籍。推薦給想成為架構(gòu)師的你
35、google-sre-ebook:Google SRE 相關(guān)的書籍。Google SRE 是谷歌的專業(yè)運(yùn)維團(tuán)隊(duì)的工程師,他們有一個(gè)共同的名字:Site Reliability Engineer,而這本書由 Google SRE 們撰寫,分享了谷歌運(yùn)維相關(guān)的一些技術(shù)和知識(shí)

機(jī)器學(xué)習(xí)
36、AugLy:Facebook 開源的一個(gè)數(shù)據(jù)增強(qiáng) Python 庫(kù)。該庫(kù)目前支持音頻、圖像、文本和視頻四種模式,一方面可以用現(xiàn)實(shí)數(shù)據(jù)對(duì)數(shù)據(jù)進(jìn)行增強(qiáng),另一方面還可以檢測(cè)出相似內(nèi)容,消除重復(fù)數(shù)據(jù)帶來(lái)的干擾

37、Real-Time-Voice-Cloning:克隆某個(gè)人說(shuō)話聲音的 AI 項(xiàng)目。僅需幾秒音頻,就能模仿出原音頻的人聲

HelloGitHub 分享 GitHub 上有趣、入門級(jí)的開源項(xiàng)目。
如果在本期月刊找到了感興趣的開源項(xiàng)目,就趕緊玩起來(lái)吧!
以上就是 HelloGitHub 月刊本期的全部?jī)?nèi)容,下個(gè)月28 號(hào)見(jiàn)。