《HelloGitHub》第 112 期
興趣是最好的老師,HelloGitHub 讓你對開源感興趣!

簡介
HelloGitHub 分享 GitHub 上有趣、入門級的開源項目。
這里有實戰(zhàn)項目、入門教程、黑科技、開源書籍、大廠開源項目等,涵蓋多種編程語言 Python、Java、Go、C/C++、Swift...讓你在短時間內感受到開源的魅力,愛上開源!
以下為本期內容|每個月 28 號更新
C 項目
1、AltSnap:Windows 全局 Alt 鍵窗口管理器。這是一款將 Linux 系統(tǒng)中高效的窗口管理方式復刻到 Windows 平臺的工具。你只需按住 Alt 鍵,即可用鼠標在窗口的任何位置輕松拖動、縮放和停靠,徹底告別繁瑣地尋找并點擊標題欄和邊框的傳統(tǒng)操作。來自 @孤膽槍手 的分享

2、libpostal:兼容全球地址格式的解析庫。該項目是用 C 語言編寫的全球地址解析庫,支持多種語言、格式和國家的地址字符串,能夠將地址信息轉換為結構化數據。
#include <stdio.h>
#include <stdlib.h>
#include <libpostal/libpostal.h>
int main(int argc, char **argv) {
// Setup (only called once at the beginning of your program)
if (!libpostal_setup() || !libpostal_setup_parser()) {
exit(EXIT_FAILURE);
}
libpostal_address_parser_options_t options = libpostal_get_address_parser_default_options();
libpostal_address_parser_response_t *parsed = libpostal_parse_address("781 Franklin Ave Crown Heights Brooklyn NYC NY 11216 USA", options);
for (size_t i = 0; i < parsed->num_components; i++) {
printf("%s: %s\n", parsed->labels[i], parsed->components[i]);
}
// Free parse result
libpostal_address_parser_response_destroy(parsed);
// Teardown (only called once at the end of your program)
libpostal_teardown();
libpostal_teardown_parser();
}

C# 項目
3、dlss-swapper:免更新切換游戲 DLSS 版本的工具。這是一款用于管理和替換游戲的 DLSS、FSR 和 XeSS DLL 文件的工具,支持 Steam、GOG、Epic Games 等主流游戲平臺。它可以在不更新游戲的情況下,升級或降級游戲的 DLSS、FSR 和 XeSS 版本,從而優(yōu)化游戲畫質與性能。

4、Mate-Engine:開源的 VRM 桌面虛擬伴侶。這是一款開源的桌面虛擬伴侶應用,可作為 Desktop Mate 的開源替代品,支持將自定義的 3D 虛擬角色置于桌面,并內置流暢的閑置動畫、點擊互動、隨音樂舞動等功能。

C++ 項目
5、LunaTranslator:開源的視覺小說翻譯工具。這是一款專為 Windows 平臺設計的視覺小說(Galgame)翻譯器,支持 HOOK、OCR、剪貼板等多種文本提取方式,可靈活切換,并提供在線翻譯、離線翻譯、語音合成等功能。

6、mcpp-standard:動手學現代 C++ 語言特性。這是一套完全開源的現代 C++ 語言特性互動教程。它把 C++11 的核心語言特性(如類型自動推導、移動語義等),拆成可運行的迷你練習,通過自研的 xlings 工具,實現一鍵安裝依賴和實時判題等功能。

7、WindowsAppSDK:為舊桌面應用注入新活力的 SDK。該項目是微軟官方開源的 Windows 桌面應用開發(fā)組件和工具集,旨在幫助傳統(tǒng)的 Win32、WPF、WinForms 等應用,輕松集成最新的 Windows UI 和平臺功能。只需引入一個 NuGet 包,就能為原應用引入更美觀的 UI 和推送通知、窗口圓角等功能。

Go 項目
8、evcc:個人電車充電智能管理平臺。這是一個開源的 EV(電動汽車)充電器控制平臺,為電車車主提供靈活且易于安裝的充電解決方案。它提供了可視化且適配移動端的 Web 平臺,用戶可以通過該平臺遠程啟動、停止和監(jiān)控車輛的充電狀態(tài),支持多種充電設備和車輛型號。智能充電功能還可以根據電價、太陽儲能和日程安排,智能安排充電時間,從而節(jié)約電費。

9、genai-toolbox:Google 開源的數據庫 MCP 工具。該項目是 Google 開源的 MCP 服務器,專為 LLM 應用與各類數據庫之間提供統(tǒng)一、安全、可擴展的數據訪問層。它集成了連接池、身份驗證、監(jiān)控等功能,讓 AI agent 快速擁有查詢數據庫的能力,支持 PostgreSQL、MySQL 等多種數據庫。

10、gpt-load:企業(yè)級的多渠道大模型 API 管理平臺。這是一款用 Go 語言開發(fā)的企業(yè)級大模型接口管理平臺,支持 OpenAI、Gemini、Claude 等多種服務。它開箱即用、內置 Web 管理界面、保留原生 API 格式,支持密鑰自動輪詢、故障切換和水平擴展,專為高并發(fā)生產環(huán)境而設計。來自 @tbphp 的分享

11、zenta:快速恢復專注的命令行工具。這是一個 Go 語言開發(fā)的命令行工具,旨在幫助開發(fā)者在心煩意亂或注意力不集中時,通過簡單的呼吸練習,快速找回專注和內心的平靜。

Java 項目
12、javacv:全能的計算機視覺 Java 庫。該項目讓開發(fā)者能夠在 Java 虛擬機(JVM)直接調用如 OpenCV、FFmpeg、Tesseract 等常用的計算機視覺庫,快速開發(fā)出實時圖像分析、視頻編解碼、流式傳輸和 OCR 等功能模塊。
import org.bytedeco.opencv.opencv_core.*;
import org.bytedeco.opencv.opencv_imgproc.*;
import static org.bytedeco.opencv.global.opencv_core.*;
import static org.bytedeco.opencv.global.opencv_imgproc.*;
import static org.bytedeco.opencv.global.opencv_imgcodecs.*;
public class Smoother {
public static void smooth(String filename) {
Mat image = imread(filename);
if (image != null) {
GaussianBlur(image, image, new Size(3, 3), 0);
imwrite(filename, image);
}
}
}
13、JsonPath:像操作 XML 一樣輕松讀寫 JSON。該項目為 Java 開發(fā)者提供類似路徑查詢的方式,能夠輕松從復雜的 JSON 結構中提取數據,無需手動遍歷即可定位目標節(jié)點。來自 @塔咖 的分享
String json = "...";
Object document = Configuration.defaultConfiguration().jsonProvider().parse(json);
String author0 = JsonPath.read(document, "$.store.book[0].author");
String author1 = JsonPath.read(document, "$.store.book[1].author");
14、nifi:可視化拖拽的數據流管理平臺。這是一個基于流程編程理念的數據流管理系統(tǒng)。它提供可視化的 Web 管理界面,支持數據溯源、斷點續(xù)傳、彈性擴展和豐富的處理器。用戶可以像畫流程圖一樣設計、控制和監(jiān)控各系統(tǒng)間的數據流動,適用于數據湖、實時風控、AI 數據管道等場景。

JavaScript 項目
15、base-ui:輕松定制的無樣式 React 組件庫。該項目提供了一套基礎、無樣式的 React 組件,僅包含必要的功能邏輯,不附帶任何預設樣式。幫助開發(fā)者擺脫傳統(tǒng) UI 庫的樣式束縛,無需耗費大量精力覆蓋和修改默認樣式。

16、cap:輕量級的 CAPTCHA 替代方案。這是一個輕量級、開源的驗證碼方案,適用于防止機器人濫用和數據抓取等場景。它基于 SHA-256 工作量證明(Proof-of-Work)技術,易于集成、即插即用,為網站提供自托管的防濫用驗證機制。

17、drawnix:極簡的在線白板工具。這是一款免費、開源的在線白板工具。它提供一個無限畫布,支持自由繪制、思維導圖、流程圖、畫筆、插入圖片、自動保存等功能,以及移動端適配、Docker 部署和插件機制等特性。

18、FossFLOW:開源的偽 3D 圖繪制工具。這是一款專為創(chuàng)建專業(yè)的等距(isometric)基礎架構圖而設計的繪圖工具,支持離線使用。等距圖是以 2D 形式呈現 3D 效果,能夠更直觀、精準地展現復雜的設計和系統(tǒng)架構。來自 @孤膽槍手 的分享

19、snapdom:精準的網頁內容截圖庫。這是一個高效的網頁截圖 JavaScript 庫,可將網頁上的任意 Dom 元素快速、精確地轉化為高質量圖片,并支持導出為 PNG、JPG、WebP 或 Canvas 格式,適用于網頁自動化測試、生成預覽圖、內容保存等場景。來自 @Yee1014 的分享
const el = document.querySelector('#target');
const result = await snapdom(el, { scale: 2 });
const img = await result.toPng();
document.body.appendChild(img);
await result.download({ format: 'jpg', filename: 'my-capture' });

Kotlin 項目
20、Iconify:深度定制你的 Android 系統(tǒng)界面。這是一款功能強大的 Android 系統(tǒng)級美化工具,專為 Android 12 及以上的 Pixel 或 AOSP 類 ROM 設計。它支持對設備用戶界面(UI)進行深度定制和修改,包括但不限于狀態(tài)欄圖標(如 Wi-Fi、信號)、系統(tǒng)圖標、圖標形狀、鎖屏時鐘樣式、通知面板布局和顏色等。來自 @ewiro 的分享

Python 項目
21、jupyterlite:在瀏覽器中運行的 JupyterLab。這是一個完全在瀏覽器中運行的 JupyterLab,無需安裝 Python 或配置服務器。它提供在線交互式 Python 編程環(huán)境,可作為靜態(tài)文件部署到任何靜態(tài)網站托管平臺(如 GitHub Pages)。

22、mediacms:基于 Django 的在線視頻平臺。這是一個基于 Django 和 React 構建的視頻內容管理平臺,可快速搭建中小型視頻網站。它內置轉碼、搜索、播放列表、權限管理和移動端適配等功能,支持視頻、音頻、圖像、PDF 等多媒體格式。

23、requests-futures:優(yōu)雅的異步 Python HTTP 請求庫。這是一個為 Python requests 庫提供異步 HTTP 請求的輕量級封裝庫。它結合了 requests 庫的易用性和標準庫 concurrent.futures 的并發(fā)能力,支持以非阻塞方式發(fā)送單個或多個 HTTP 請求,從而顯著提升 I/O 密集型應用的性能。
from concurrent.futures import as_completed
from pprint import pprint
from requests_futures.sessions import FuturesSession
session = FuturesSession()
futures=[session.get(f'http://httpbin.org/get?{i}') for i in range(3)]
for future in as_completed(futures):
resp = future.result()
pprint({
'url': resp.request.url,
'content': resp.json(),
})
24、UavNetSim-v1:無人機通信網絡仿真平臺。這是一款基于 Python(SimPy)的無人機通信網絡仿真平臺,專為組建無人機集群通信而設計。它提供無人機網絡的多個層級(如網絡層、MAC 層、物理層),以及無人機移動性和能量模型的全面建模,適用于無人機網絡的協議設計、性能評估和可視化分析。來自 @凝望,劃過星空 的分享

25、ZSim:《絕區(qū)零》戰(zhàn)斗模擬器。這是一個專為游戲《絕區(qū)零》設計的傷害模擬和戰(zhàn)斗仿真工具,支持全自動仿真、可視化報告、自定義 APL 等功能。玩家可自由選擇游戲中的角色與裝備,并配置屬性參數,然后通過模擬器計算出在特定隊伍組合下的預期傷害。

Rust 項目
27、rustfs:基于 Rust 的高性能分布式存儲系統(tǒng)。該項是用 Rust 構建的高性能分布式對象存儲系統(tǒng),致力于成為 MinIO 的開源替代品。它安裝簡單、兼容 S3 協議,采用更友好的開源協議,并內置界面清爽的 Web 管理后臺。同時,支持國產保密設備和系統(tǒng),適用于海量數據存儲、大數據、互聯網、工業(yè)和保密存儲等場景。來自 @SR.李 的分享

28、tabiew:命令行數據文件可視化瀏覽工具。這是一款用于瀏覽和查詢表格數據文件(如 CSV、Parquet、Arrow、Excel 等)的命令行工具。它提供交互式界面體驗、支持 SQL 查詢、多表操作、模糊搜索和 Vim 風格快捷鍵等功能。來自 @HBSpy 的分享

Swift 項目
29、KeyboardCowboy:重塑你的 macOS 快捷鍵。這是一款能夠重塑 macOS 快捷鍵體驗的鍵盤工作流工具,可為任意應用創(chuàng)建強大且具備上下文感知能力的快捷鍵,無需手動觸發(fā)。它不僅能模擬點擊沒有原生快捷鍵的按鈕、選擇菜單項,還能將多步操作串聯為一鍵執(zhí)行的高效流程,提升工作流效率。

30、TrackWeight:MacBook 觸控板秒變電子秤。這是一款有趣的 macOS 應用,可以將 MacBook 的觸控板變身為數字電子秤。它利用觸控板內置的 Force Touch 壓力傳感器,只需將物體放在觸控板上,應用即可實時顯示其重量。

人工智能
31、gitingest:一鍵將代碼庫轉換為 AI 友好格式的工具。該項目可將任意 GitHub 倉庫快速轉換為適合大語言模型處理的純文本摘要。使用起來十分方便,只需將 GitHub 項目地址中的 hub 替換為 ingest 即可得到文本摘要。

32、ManimML:用 Python 動態(tài)演示神經網絡。這是一個基于 Manim 的 Python 庫,用于制作機器學習相關概念的動畫和可視化效果。只需編寫簡單的 Python 代碼,即可輕松生成神經網絡結構、卷積操作、Dropout 過程等動畫效果,幫助理解和展示復雜的機器學習原理。
from manim_ml.neural_network import NeuralNetwork, FeedForwardLayer
nn = NeuralNetwork([
FeedForwardLayer(num_nodes=3),
FeedForwardLayer(num_nodes=5),
FeedForwardLayer(num_nodes=3)
])
self.add(nn)

33、unsloth:新手友好的 LLM 微調工具庫。該項目是用于微調和優(yōu)化大型語言模型(LLM)的 Python 工具庫。它通過動態(tài)量化和顯存優(yōu)化技術,提高了模型微調速度,同時將顯存占用降低 70%-80%,并支持多種硬件配置、LLM、超長上下文任務等功能。除此之外,還提供了可直接在線體驗的 Jupyter Notebook 示例,降低了大模型微調的門檻。

34、uzu:MacBook 專屬的高性能 AI 推理引擎。這是一個專為 Apple M 系列芯片打造的高性能、輕量級 AI 模型推理引擎。它充分利用 Apple 硬件的特性提升推理速度,并提供簡單易用的 API,助你一鍵部署高效本地大模型服務。來自 @DeShuiYu 的分享

35、VideoCaptioner:開箱即用的智能字幕助手。這是一款基于大語言模型的智能視頻字幕處理工具。它界面簡潔、操作便捷,支持語音識別、智能校對和自動生成多語言字幕等功能。來自 @孤膽槍手 的分享

其它
36、12-factor-agents:構建生產級 LLM 應用的設計指南。這是一份為打造生產級大模型應用而編寫的設計指南。作者在與多位 AI 領域優(yōu)秀創(chuàng)始人交流后,提煉出 12 條系統(tǒng)化、切實可行的設計原則。

37、60s:每日 60 秒資訊 API 集合。該項目集合了包括每日新聞、實時票房、匯率、熱搜榜、隨機段子等多種數據的 API 服務。
38、bitwise-challenge-2048:基于位運算的 2048 游戲。這是一個通過位運算實現了經典的 2048 游戲,僅一個文件(.bash)、零依賴、不到 200 行代碼。與常見的二維數組模擬棋盤方式不同,該項目巧妙地利用位運算管理游戲狀態(tài)和邏輯,將整個 4x4 棋盤壓縮存儲在一個 64 位整數中,所有移動、合并和生成均通過位操作實現。

39、CSS-Minecraft:這個“世界”只有 HTML 和 CSS。該項僅用 CSS 和 HTML 實現了類似《我的世界》(Minecraft)的界面交互,沒用一行 JavaScript 代碼,支持方塊的放置、移除、切換視角等基礎操作。

40、pomodoro:自制電子墨水屏番茄時鐘。這是一個基于 ESP32 的實體番茄鐘計時器,配備 4.26 英寸黑白 ePaper 屏幕和旋鈕式操作。通過旋轉旋鈕可快速設定工作和休息時長,按下旋鈕即可立即開始計時。

41、scriptcat:可執(zhí)行用戶腳本的瀏覽器插件。這是一款開源的瀏覽器插件,支持用戶安裝和運行第三方的 JavaScript 代碼片段,可用于屏蔽廣告、增強網站功能、自動化網頁操作等場景。

開源書籍
42、book:《Crypto 101》密碼學入門。這是一本面向程序員的密碼學入門書籍,從 XOR 和一次性密碼本開始,循序漸進地講解對稱加密、公鑰加密、哈希、MAC、簽名、密鑰交換、隨機數等密碼學“積木”,并把它們組裝成 TLS、OpenPGP、OTR 等真實系統(tǒng)。
43、ThinkStats:《Think Stats》統(tǒng)計思維。這是一本寫給程序員的統(tǒng)計學電子書,所有代碼示例和練習均以 Python 實現。全書圍繞真實數據集展開,通過探索性數據分析、概率分布、假設檢驗、相關性與回歸分析等統(tǒng)計方法,用統(tǒng)計思維解決實際問題。

最后
感謝參與分享開源項目的小伙伴們,歡迎更多的開源愛好者來 HelloGitHub 自薦/推薦開源項目。如果你發(fā)現了 GitHub 上有趣的項目,就點擊這里分享給大家伙吧!
本期有你感興趣的開源項目嗎?如果有的話就留言告訴我吧~如果還沒看過癮,可以點擊閱讀往期內容。
感謝您的閱讀,如果覺得本期內容還不錯的話 求贊、求分享 ??
作者:削微寒
掃描左側的二維碼可以聯系到我

本作品采用署名-非商業(yè)性使用-禁止演繹 4.0 國際 進行許可。


浙公網安備 33010602011771號