xueweihan:
兴趣是最好的老师,HelloGitHub 让你对开源感兴趣!

简介
HelloGitHub 分享 GitHub 上有趣、入门级的开源项目。
github.com/521xueweihan/HelloGitHub
这里有实战项目、入门教程、黑科技、开源书籍、大厂开源项目等,涵盖多种编程语言 Python 、Java 、Go 、C/C++、Swift...让你在短时间内感受到开源的魅力,对开源产生兴趣!
以下为本期内容|每个月 28 号更新
C 项目
1 、Catime:简洁小巧的 Windows 计时器。这是一款轻巧易用的 Windows 计时器,集显示时间、倒计时和番茄时钟功能于一体。它采用 C 语言编写,体积小、占用少,支持透明界面。用户可以调整界面大小和位置,设置超时动作(锁屏/通知/关机),以及自定义颜色和字体,满足个性化需求。来自 @VerSion1312 的分享

2 、nq:Unix 命令行任务队列工具。这是一个轻量级命令行队列工具,用户可以将任务添加到队列中,并在后台按顺序执行。它支持在 Linux 、FreeBSD 和 macOS 等系统上运行,适用于需要依次执行多个脚本或命令的场景。
# 将命令加入队列并在后台执行
nq COMMAND
# 等待所有队列中的任务完成
nq -w
# 例如,将 make clean 命令加入队列
nq make clean
# 将 make depends 命令加入队列
nq make depends
# 将 make all 命令加入队列
nq make all
# 查看当前任务日志
nqtail
3 、xash3d-fwgs:带你重温《半条命》的游戏引擎。这是一款开源的游戏引擎,主要用于运行和修改 GoldSrc 引擎的游戏。GoldSrc 是 Valve 公司用于开发《半条命》等经典游戏的引擎。Xash3D FWGS 通过提供一个兼容、跨平台的游戏引擎,让用户可以在现代系统、移动设备、掌机上运行这些经典游戏,并进行深度修改和扩展,例如添加触屏控制、语音聊天和渲染器选项等功能。来自 @天涯孤雁 的分享

C# 项目
4 、OpenUtau:开源的歌声合成工具。这是一款用于创作和编辑歌声合成作品的工具,兼容 UTAU 的音色库和重采样器。它拥有简洁直观的界面,支持鼠标与键盘协同操作,并提供 MIDI 编辑、歌词调整、音色修改等功能,适用于 Windows 、Linux 和 macOS 平台。

C++ 项目
5 、Diagon:交互式 ASCII 图表生成器。这是一个交互式的 ASCII 风格图表生成器,可以将类似 Markdown 的表达式转换为 ASCII 艺术形式。它支持生成数学表达式、序列图、树形图、表格、流程图等,并可以将图表导出为 WebAssembly ,在网页中展示和交互。

6 、ggwave:通过声音传输数据的工具。这是一款创新的数据传输工具,通过声音在设备间传输少量数据。它采用频移键控( FSK )传输协议,并结合错码( ECC )提升数据传输的可靠性,传输速度在每秒 8-16 字节。

7 、wukong-minimap:《黑神话:悟空》小地图插件。这是一款专为《黑神话:悟空》设计的实时地图插件。它完全免费且安装简单,支持实时位置追踪、导航、关键点位,以及地图放大、缩小和隐藏等功能。

CSS 项目
8 、nord:好看的北极蓝配色方案。这是一个开源的北极蓝主题配色方案,包含 16 种柔和的色调,适用于代码编辑器、终端和网页设计等应用场景。无法亲临北极,也能用这抹宁静的蓝,给视觉一次沉浸式旅行。

Go 项目
9 、gqlgen:Go 语言的 GraphQL 服务器生成库。该项目是用于快速构建 GraphQL 服务的 Go 语言库,可解析 GraphQL 模式文件(.graphql )并生成对应的 Go 代码。它强调类型安全,并支持自定义模型、类型映射、中间件和解析器等功能。

10 、hcache:快速找到占用大量缓存的罪魁祸首。这是一个快速查找系统中占用空间最大的缓存文件和进程的命令行工具,简单易用方便快捷,支持 JSON 、表格和直方图的输出格式。

11 、wechatDataBackup:一键备份微信聊天记录的工具。该项目是用 Go 语言开发的工具,可一键导出 PC 端微信聊天记录的工具,帮助用户轻松备份、导出、查找重要对话,适用于 Windows 平台。来自 @蠢🐷 的分享

Java 项目
12 、ysoserial:Java 反序列化漏洞的攻击工具。这是一个专门生成利用 Java 反序列化漏洞载荷( payload )的工具,用于测试和验证 Java 应用程序中的反序列化漏洞。它通过将用户指定的命令封装到特定的 gadget chain 中,并将其序列化为字节流,从而在目标 Java 应用程序中执行指定命令。

JavaScript 项目
13 、CloudSaver:开箱即用的网盘资源转存平台。该项目是基于 Vue 3 和 Express 构建的网盘资源搜索与转存平台,支持多资源搜索、豆瓣热门榜单、网盘资源一键转存、多用户等功能,完美适配移动端和 PC 端。

14 、gitify:将 GitHub 通知带入你的系统菜单栏。这是一款开源免费的 GitHub 通知管理工具,可以将 GitHub 通知集成到用户的菜单栏,支持 Windows 、Linux 和 macOS 平台。

15 、hedgedoc:极简的 Markdown 协作平台。这是一款基于 Markdown 的实时协作平台,界面清爽、功能实用,支持多人同时编辑同一份文档,实时同步内容,非常适合小型团队共享和管理文档。

16 、mitata:让基准测试变得轻松又高效。这是一款即插即用的基准测试( benchmark )工具,帮助开发者快速、精准地评估代码性能。它提供高精度的测量结果和直观的可视化报告,支持 JavaScript 和 C++ 语言。
import { run, bench, boxplot, summary } from 'mitata';
function fibonacci(n) {
if (n <= 1) return n;
return fibonacci(n - 1) + fibonacci(n - 2);
}
bench('fibonacci(40)', () => fibonacci(40));
boxplot(() => {
summary(() => {
bench('Array.from($size)', function* (state) {
const size = state.get('size');
yield () => Array.from({ length: size });
}).range('size', 1, 1024);
});
});
await run();

17 、react-bits:让人惊艳的 React 动画库。该项是集动画与交互于一体的 React 组件库,包含文本动画和背景效果等多种类型。每个组件均提供了 JavaScript 和 TypeScript 版本,并全面支持 CSS 和 Tailwind CSS ,满足不同的技术栈,帮助开发者快速构建出色的用户界面。

Kotlin 项目
18 、Alibi:将安卓手机变成行车记录仪。这是一款开源的手机行车记录仪应用,可将手机变成行车记录仪。它会在后台持续录制音视频,并可在需要时保存最近 30 分钟的内容。所有操作均在本地处理,无需联网保护用户隐私。来自 @VerSion1312 的分享

Python 项目
19 、audiblez:一键将电子书转换为有声书。这是一款能够将 EPUB 格式的电子书转换为 M4B 格式有声书的桌面工具。它采用 Kokoro-82M 语音合成模型,生成效果流畅自然,支持 CUDA 加速和多种语言,包括中文、英文、日文等。

20 、beaverhabits:无需设定目标的习惯追踪工具。这是一款基于 Python 开发的自托管习惯追踪 Web 应用,帮助用户轻松记录和管理日常习惯。它提供适配移动端的直观界面,专注于习惯的持续养成,而非单纯追求目标达成,让养成好习惯变得更自然。

21 、deepdiff:深度比较 Python 对象的工具。这是一个用于深度比较、搜索和操作 Python 对象数据的 Python 库。它提供了多种模块,支持处理字典、可迭代对象、字符串等 Python 对象的差异,以及内容搜索、哈希生成和增量更新等功能。

22 、gixy:让 NGINX 配置更安全。这是一个活跃的 NGINX 配置静态分析工具,专注于发现配置中的安全问题。它能够检测多种常见的 NGINX 配置漏洞,如服务器端请求伪造、主机伪造、路径遍历等,支持命令行或在 Docker 和 Kubernetes 中使用。

23 、toga:轻松打造原生桌面应用的 Python 框架。这是一个简单易用的 Python GUI 框架,专为构建跨平台原生桌面应用而设计。它结合了 Python 的简洁易懂和操作系统的原生体验,支持丰富的组件库和展示动态网页等功能。
import toga
def button_handler(widget):
print("hello")
def build(app):
box = toga.Box()
button = toga.Button("Hello world", on_press=button_handler, style={"margin": 50, "flex": 1})
box.add(button)
return box
def main():
return toga.App("First App", "org.beeware.toga.examples.tutorial", startup=build)
if __name__ == "__main__":
main().main_loop()

Rust 项目
24 、bili-shadowreplay:B 站直播切片助手。这是一款专为 bilibili 直播设计的切片工具,帮助用户在直播过程中实时生成和管理切片,支持实时切片、直播缓存、编辑切片、记录时间点、投稿以及多账户等功能。

25 、evcxr:没错 Rust 也有解释器。这是一个交互式的 Rust 编程工具,类似于 Jupyter Notebook 和 IPython 。它提供一个交互式的 Rust 编程环境,用户可以实时执行 Rust 代码并查看结果。来自 @chenxu 的分享
Swift 项目
26 、purchases-ios:一站式应用内购买解决方案。该项目是用于简化应用内购买和订阅实现的 Swift 库,支持 iOS 、watchOS 、tvOS 、macOS 和 visionOS 平台。

人工智能
27 、ai-agents-for-beginners:微软开源的 AI Agent 初学者教程。该项目是微软专为初学者打造的 AI 智能代理( AI Agents )教程,内容分为 10 个课程,包含详细的教程、视频和示例代码。

28 、ivy:机器学习代码跨框架转换利器。该项目可以将机器学习模型、工具和库从一个框架转换到另一个框架。开发者通过简单的函数即可完成代码的转换,支持 TensorFlow 、PyTorch 、JAX 等主流框架。
import ivy
import torch
import tensorflow as tf
def torch_fn(x):
x = torch.abs(x)
return torch.sum(x)
x1 = torch.tensor([1., 2.])
x1 = tf.convert_to_tensor([1., 2.])
# Transpilation happens eagerly
tf_fn = ivy.transpile(test_fn, source="torch", target="tensorflow")
# tf_fn is now tensorflow code and runs efficiently
ret = tf_fn(x1)
29 、meeting-minutes:开源的 AI 会议助手。这是一款 AI 驱动的实时会议记录和摘要生成工具,可离线使用。它完全免费且开源,支持自托管、语义搜索、内容导出等功能,适用于 Windows 和 macOS 平台。

30 、minimind-v:从零开始训练视觉多模态模型。该项目是手把手教你从零开始训练一个 26M 参数的视觉多模态模型,包括完整的训练流程和全套的工具集,成本 1.3 元、耗时仅 1 小时。

31 、pyspur:AI 智能体可视化开发平台。这是一个基于 Python 的可视化 AI 智能体开发平台,功能强大且简单易用。它支持构建工作流、运行测试用例、记忆管理、文件上传、结构化输出、RAG 、多模态和评估等功能,同时兼容 100 多家大模型服务供应商。

其它
32 、EffectMidi:打造属于你的 MIDI 键盘灯光秀。这是一个利用 Arduino 开发板控制 88 键 MIDI (音乐数字接口)键盘灯光的开源项目。它由桌面端控制程序和 Arduino 端程序组成,可读取 MIDI 键盘输入,并实时控制灯带效果。来自 @Chiru Mori 的分享

33 、jupyterlab:提升 JupyterLab 视觉体验的主题。该项目为 JupyterLab 提供了一个舒适、统一且富有色彩的界面,易于安装和切换,内置多种配色方案,支持 JupyterLab v3 和 v4 版本。

34 、NetQuality:一键检测网络质量的开源脚本。这是一个方便的网络质量测试脚本,能够快速评估网络质量和性能,支持中英双语、三网 TCP 大包延迟、回程路由、网速测试、国际互联等功能。

35 、overseas-website-note:出海网站经验总结。该项目是作者在开发海外网站过程中积累的经验,涵盖海外公司注册、银行开户、支付系统对接及网站开发等方面。
36 、saber:更懂你的手写笔记应用。这是一款开源的手写笔记应用,支持 Android 、iOS 、Windows 、macOS 、Linux 等平台。它提供夜间模式、多行公式高亮、密码保护等功能,适用于记录课堂笔记和整理工作思路等场景。

开源书籍
37 、RustBook:Rust 数据结构与算法的开源书籍。这是一本讲解 Rust 数据结构和算法的开源书籍,支持简/繁体中文和英文三种语言版本。全书共 10 章,内容涵盖 Rust 基础、计算机科学概念、算法分析、基本数据结构、递归、搜索、排序、树、图以及实战等。
38 、self-consistent-coder:《自洽的程序员》。这是一本关于程序员如何管理自己的情绪和职业心态的书籍,帮助程序员从负面情绪中解脱出来,更加坦然地面对自己的内心,从而实现“自洽“。
39 、The-Art-of-Problem-Solving-in-Software-Engineering_How-to-Make-MySQL-Better:《软件工程中的问题解决艺术:如何让 MySQL 更好》。这是一本通过实际案例分析和解决 MySQL 问题的书籍,结合深入讨论,帮助读者更好地理解逻辑推理、数据结构、算法等计算机基础知识。
最后
感谢您的阅读❤️
Read More