天天看點

《HelloGitHub》第 29 期

公告

月刊現已支援 RSS 訂閱

《HelloGitHub》第 29 期

興趣是最好的老師,HelloGitHub 就是幫你找到興趣!
《HelloGitHub》第 29 期

分享 GitHub 上有趣、入門級的開源項目。

這是一個面向程式設計新手、熱愛程式設計、對開源社群感興趣 人群的月刊,月刊的内容包括:各種程式設計語言的項目、讓生活變得更美好的工具、書籍、學習筆記、教程等,這些開源項目大多都是非常容易上手,而且非常 Cool。主要是希望大家能動手用起來,加入到開源社群中。

會程式設計的可以貢獻代碼

不會程式設計的可以回報使用這些工具中的 Bug

幫着宣傳你覺得優秀的項目

Star 項目⭐️

在浏覽、參與這些項目的過程中,你将學習到更多程式設計知識、提高程式設計技巧、找到程式設計的樂趣。

???? 最後 HelloGitHub 這個項目就誕生了 ????

以下為本期内容|每個月 28 号釋出最新一期|點選檢視往期内容

1、libaco:一個極速、輕量級、C語言非對稱協程庫。中文文檔,項目介紹:

生産級别的 C 協程庫

核心實作不超過 700 行代碼,實作了一個協程庫應該有的全部功能

在 AWS c5d.large 機器上的性能測試,一次協程間上下文切換僅耗時 10 ns (獨立執行棧)

一千萬個協程并發執行僅消耗2.8GB的實體記憶體

2、redis-3.0-annotated:黃健宏 在編寫《Redis 設計與實作》期間,閱讀 Redis 3.0 源碼過程中寫的注釋。相信對于想要閱讀 redis 源碼的同學,會有很大的幫助

3、BurstLinker:主要為 Android 開發的一個 C++ GIF 編碼器。支援多種常見的顔色量化算法、顔色抖動算法

4、lazygit:終端裡的 Git 用戶端。該用戶端啟動比各路 GUI 用戶端快N倍,功能基本一緻。安裝 <code>go get github.com/jesseduffield/lazygit</code>,然後 <code>lazygit</code> 啟動。Ready?Go!

《HelloGitHub》第 29 期

5、rclone:Golang 版的 rsync,與 rsync 不同的是 rclone 可以将檔案同步到各種雲服務的存儲桶或 CDN 服務上

6、dgraph:開源、免費的分布式圖資料庫。如果你在建構使用者關系系統,圖資料庫絕對是比關系型資料庫更好的選擇。通過 SPARQL 查詢一個使用者相關的其他使用者會比 SQL 快百倍。自帶圖形界面、RDF 導入工具等必備工具。安裝:<code>curl https://get.dgraph.io -sSf | bash</code>

《HelloGitHub》第 29 期

7、git-bug:嵌入在 Git 中的分布式 bug 追蹤、管理系統。用來管理 git 項目的 bug,這些資訊會被存在 <code>.git</code> 檔案夾裡,是以其他人克隆也能看到 bug,不需要而外的存儲系統。基本指令:

《HelloGitHub》第 29 期

8、Heart-First-JavaWeb:走心的 Java Web 入門開發教程,對于初學者友好。教程中列舉了在初學 Java Web 的過程中,可能會遇到的問題、難點

9、CoolViewPager:自定義 ViewPager 元件,支援雙向自動循環、自動循環參數自由設定、界面實時重新整理、自定義邊緣及垂直切換效果。示例代碼:

《HelloGitHub》第 29 期

10、FileDownloader:Android 檔案下載下傳引擎,穩定、高效、靈活、簡單易用。特點:

單任務多線程/多連接配接/分塊下載下傳

高并發

獨立/非獨立程序

自動斷點續傳

《HelloGitHub》第 29 期

11、react-developer-roadmap:該倉庫中的線路圖展示了學習 React 的路徑,為成為一名 React 開發者指明了方向。中文

《HelloGitHub》第 29 期

12、pacman:基于 HTML5 的吃豆人遊戲。核心代碼就兩個檔案,代碼有注釋、整潔。對于新手來說是個很好的實踐項目。線上試玩

13、react-image-process:圖檔處理的 React 元件。支援壓縮、裁剪、加水印、濾鏡、擷取主色調等功能,線上示例

14、hotkeys:一個強健的 Javascript 庫用于捕獲鍵盤輸入和輸入的組合鍵。它沒有依賴,壓縮隻有 3kb 左右。線上展示

15、SGPlayer:一款基于 AVPlayer、FFmpeg 的媒體資源播放器架構。功能特點:

支援播放360°全景視訊

支援手勢、傳感器操控360°全景視訊

支援雙眼模式,具有畸變校正、色散校正

支援 iOS、macOS、tvOS

支援 H.264 硬體解碼(VideoToolBox)

支援 RTMP、RTSP 等直播流

等等

16、SBSAnimoji:最長可以錄60秒的 Animoji 畫面,錄制完成後可以直接按拓展按鈕分享,可以學習AvatarKit的使用

《HelloGitHub》第 29 期

17、hue:開源的 Apache Hadoop UI 系統。通過使用 Hue 我們可以在浏覽器端的 Web 控制台上與 Hadoop 叢集進行互動來分析處理資料。核心功能:

資料可視化

SQL 編輯器,支援 Hive、Impala、MySQL等

可進行 workflow 的編輯、檢視

《HelloGitHub》第 29 期

18、FeelUOwn:一個符合 Unix 哲學的跨平台的音樂播放器,主要面向 Linux/macOS 使用者。特性:

安裝簡單,新手友好

預設提供國内各音樂平台插件(網易雲、蝦米、QQ)

較強的可擴充性可以滿足大家折騰的欲望

核心子產品有較好文檔和測試覆寫

19、tinydb:TinyDB 是使用純 Python 編寫的 NoSQL 資料庫,使用 json 檔案存儲資料。它差別于 SQLite 的關系性資料庫。同樣的小、不需要依賴外部伺服器。适用于桌面程式、用戶端,不适用于 Web 應用、高性能的資料查詢。友好的 API,示例代碼:

《HelloGitHub》第 29 期

20、TGmeetup:搜集、整理、展示、報名技術類線下聚會的指令行工具,讓使用者可以更加友善、及時的擷取技術類活動資訊

《HelloGitHub》第 29 期

21、snibox:代碼片段管理器。支援各種程式設計語言的代碼片段、Markdown、純文字。線上示例

《HelloGitHub》第 29 期

22、Bartinter:狀态欄外觀管理元件。可根據背景的顔色,動态地更改狀态欄的顔色,使狀态欄的資訊可讀

《HelloGitHub》第 29 期

23、chinese-independent-developer:中國獨立開發者項目清單

24、system-design-primer:學習如何設計可擴充的系統将幫助你成為一個更好的工程師。這個倉庫就是整理、收集系統設計方面的資源。中文版

25、skill-map:程式員技能圖譜是由極客邦科技發起的一個技術社群開源項目。彙集、整理、共建泛 IT 技術領域(人工智能,前端開發,移動開發、後端開發等)、網際網路産品、營運等領域學習技能圖譜,幫助程式員梳理知識架構結構。并嘗試提供路徑指導和精華資源,友善大家學習成長

26、Front-End-Performance-Checklist:前端性能清單,讓你的網站跑的更快。性能問題不光是後端要考慮的,它也是前端需要關注的。該項目列舉了在設計和編寫前端項目時,性能方面需要考慮、檢查的地方

27、project-based-learning:程式設計教程倉庫,這些教程分别使用不同的程式設計語言,從零建構應用程式。使讀者通過實際項目案例,學習編譯原理、作業系統、計算機網絡、資料庫等等。面向項目學習,比面向書本學習可操作性更高,更容易獲得正向回報

28、simple_os_book:作業系統的基本原理與簡單實作的教學項目。以作業系統基本原理為教學引導,RISC-V CPU 為底層硬體基礎,設計并實作一個微型但全面的“麻雀”作業系統——ucore

網站: https://hellogithub.com

GitBook: https://gitbook.hellogithub.com

如果你發現了好玩、有意義的開源項目 點選這裡 分享你覺得有意思的項目。

歡迎轉載,請注明出處和作者,同時保留聲明。