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

简介
HelloGitHub 分享 GitHub 上有趣、入门级的开源项目。
这里有实战项目、入门教程、黑科技、开源书籍、大厂开源项目等,涵盖多种编程语言 Python、Java、Go、C/C++、Swift...让你在短时间内感受到开源的魅力,爱上开源!
以下为本期内容|每个月 28 号更新
C 项目
1、clay:零依赖 C 语言 UI 布局库。这是一个基于 C 语言实现的高性能 2D UI 布局库,能够提供微秒级的布局性能和灵活的响应式布局能力。它采用类似 flexbox 的布局模型,支持响应式设计、文本换行、滚动容器等功能。Clay 具有零依赖和轻量级的特性,核心文件仅为 2KB,且可编译为 wasm 文件(15KB),适用于游戏开发、嵌入式设备以及轻量级 Web 应用等场景。

2、shairport-sync:开源的 AirPlay 音频无缝接入方案。这是一款支持 AirPlay/AirPlay 2 协议的音频播放器,能够接收并播放来自苹果设备的 AirPlay 音频流。只需树莓派等低成本设备,就可以将普通音响升级为支持 AirPlay 的无线音响,轻松打造家庭多房间无线音频系统。

C# 项目
3、duplicati:跨平台的多云安全备份工具。这是一款跨平台的备份客户端,支持多种主流云存储服务(如 S3、Dropbox、Google Drive 等)。它可将加密、增量、压缩的备份文件安全地存储到云端或服务器,适用于个人隐私数据的云备份。

4、HunterPie:《怪物猎人》游戏内数据展示工具。这是一款专为《怪物猎人》系列打造的游戏叠加层工具,适用于《怪物猎人:世界》和《怪物猎人:崛起》。它界面简洁,完全免费且开源,可为玩家实时展示怪物信息、异常状态、伤害统计等丰富的游戏数据,并支持插件扩展,助力提升狩猎体验。

5、Pinta:简单易用的轻量级绘画工具。这是一款基于 C# 和 GTK 框架开发的免费绘图软件,兼容 Windows、Linux 和 macOS 系统。它不仅提供类似 Microsoft Paint 的基础绘图功能,还增加了丰富的滤镜、多样的绘画工具、多图层管理和透明度编辑等高级功能。

C++ 项目
6、perfetto:Google 开源的性能分析工具。该项目是谷歌开源的面向生产环境的性能分析与追踪工具,适用于 Android、Linux 和 Chrome。它提供可视化追踪数据的 Web 界面,支持系统与应用级的追踪、Java 堆栈分析、SQL 分析等功能。

7、redex:Android 应用的字节码优化器。这是一款由 Meta 开源的字节码优化工具,能够显著缩小 APK 体积、提升应用运行效率。它提供了一套完整的 DEX 文件读写和分析框架,并内置了多种优化模块,适用于体积较大、对性能有较高要求的应用优化场景。来自 @想念小鱼干的清蒸 的分享

Go 项目
8、anubis:保护你的网站免受 AI 爬虫攻击。这是一个用于保护网站免受 AI 爬虫和恶意抓取的工具。它通过 SHA256 工作量证明(Proof-of-Work, PoW)挑战来验证每个连接的合法性,从而阻止恶意爬虫和大规模抓取行为。

9、bitplay:在线播放视频资源的 Web 应用。该项目是用 Go 语言开发的在线视频流媒体应用,让用户能够直接在线播放视频资源。它支持通过磁力链接或 .torrent 文件流式传输高清视频,以及实时字幕转换和 Docker 部署。

10、landrun:安全执行 Linux 命令的工具。这是一个轻量级、安全的 Linux 沙箱工具,基于 Linux 内核自带的 Landlock 模块实现。它为用户提供无需 root 权限和容器,即可运行任何命令的安全方式,并支持对文件读写和网络访问权限的灵活控制。

11、litestream:零侵入 SQLite 数据库灾备工具。该项目是专为 SQLite 数据库设计的实时增量同步和备份工具。它作为后台进程运行,通过监控数据库变更,自动将数据同步至本地文件或云端存储。只需简单部署,即可为你的 SQLite 项目带来企业级的数据安全保障。
Java 项目
12、datafaker:快速生成假数据的 Java 库。这是一个专为 JVM 生态(Java、Kotlin、Groovy)设计的假数据生成库,是 java-faker 的开源分支。它内置近 50 种语言和地区支持,能够生成多种类型和格式的假数据,包括地址、姓名、日期、电话号码等。来自 @塔咖 的分享
java
Faker faker = new Faker();
String name = faker.name().fullName(); // Miss Samanta Schmidt
String firstName = faker.name().firstName(); // Emory
String lastName = faker.name().lastName(); // Barton
String streetAddress = faker.address().streetAddress(); // 60018 Sawayn Brooks Suite 449
13、GhidraMCP:让 AI 自动操作 Ghidra 进行逆向。该项目是为 Ghidra(知名逆向工具)提供 MCP 支持,实现 AI 自动调用 Ghidra 进行逆向分析。它将 Ghidra 的核心功能(如反编译和二进制分析)以服务形式开放给 MCP 客户端,支持自动重命名方法和数据,列出方法/类等信息,打通了 AI 与逆向分析自动化的通路。

JavaScript 项目
14、AlgerMusicPlayer:简约美观的音乐播放器。这是一款基于 Electron 开发的第三方音乐播放器,拥有高颜值的界面和丰富的功能,支持本地化服务、桌面歌词显示、音乐下载等,适用于多平台使用。

15、it-tools:程序员的在线工具箱。该项目基于 Vue.js 和 Naive UI 组件库开发,汇集了多种实用的在线工具。它界面清爽、完全免费且功能丰富,提供了加密、转化器、网络、文本等常用开发工具,并支持包括中文在内的多国语言。

16、mazanoke:本地优先的图片压缩工具。这是一款注重隐私保护的浏览器端图片优化工具,无需联网可离线使用。它部署简单、功能丰富,提供图片压缩、格式转换和批量上传等功能,兼容 JPG、PNG、WebP、HEIC、AVIF、GIF、SVG 等图片格式。

17、pokerogue:Roguelite 风格的宝可梦游戏。这是一个融合了宠物小精灵(宝可梦)和 Roguelite 游戏元素的在线小游戏。它无需安装、玩法新颖,玩家在游戏中扮演训练师的角色,无需走地图和做任务直接挑战关卡。开局先是选择宠物组合,然后与训练师和 Boss 战斗,随着战斗胜利将获得物品和奖励,用于提升你的宝可梦,让它们变得更强从而探索更多的关卡。

18、wekan:完全免费开源的看板应用。这是一款基于 Meteor 框架和 MongoDB 构建的开源看板(Kanban),支持实时多用户协作、任务拖拽、标签分组、成员分配等功能。通过卡片和列表的方式,轻松组织待办事项、项目进度或团队任务,项目采用 MIT 协议,支持商用和大规模用户。

Kotlin 项目
19、LibreTube:开源的油管 Android 客户端。这是一款开源的第三方 YouTube 安卓客户端,提供纯净的视频观看体验。它无需登录 Google 账号、无广告干扰,支持订阅、播放列表、观看历史、搜索历史等功能。

PHP 项目
20、adminer:单文件即用的数据库管理工具。这是一款用 PHP 编写的数据库管理工具,仅需单一文件即可部署。它拥有极低的上手门槛和丰富的插件,支持 MySQL、MariaDB、PostgreSQL、SQLite、MS SQL 等主流数据库,并可通过插件扩展支持 Elasticsearch、MongoDB、ClickHouse 等,适用于日常数据库管理和开发等场景。

Python 项目
21、asciimatics:生成 ASCII 动画的 Python 库。这是一个用于构建交互式文本界面(TUI)和 ASCII 艺术动画的 Python 库,支持彩色文本、自动检测终端窗口尺寸变化、ASCII 艺术效果、鼠标和键盘输入等功能。
python
from asciimatics.effects import Cycle, Stars
from asciimatics.renderers import FigletText
from asciimatics.scene import Scene
from asciimatics.screen import Screen
def demo(screen):
effects = [
Cycle(
screen,
FigletText("HelloGitHub", font='big'),
int(screen.height / 2 - 8)),
Cycle(
screen,
FigletText("ROCKS!", font='big'),
int(screen.height / 2 + 3)),
Stars(screen, 200)
]
screen.play([Scene(effects, 500)])
Screen.wrapper(demo)

22、fail2ban:抵御暴力破解攻击的防护工具。这是一款用 Python 编写的入侵检测与防御系统(IDS/IPS),保护服务器免受暴力破解攻击。它能够实时监控日志文件,一旦检测到多次认证失败,便会自动更新防火墙规则,拒绝来自可疑 IP 的连接,支持 SSH、FTP、Web 等多种常见服务。
23、isort:自动整理 Python 导入语句的工具。该项目能够自动识别并规范 Python 项目中的 import 语句,支持多行格式、智能缩进和灵活的排序规则,轻松统一代码风格和导入规范。

24、pyper:简化 Python 并发编程的框架。这是一个致力于让 Python 并发处理数据变得简单的框架。它基于函数式编程模式,提供了统一且简洁的 API,支持多种并发任务类型,适用于 ETL 系统、数据微服务、数据采集等场景。来自 @sam86970 的分享
python
import time
from pyper import task
def len_strings(x: str, y: str) -> int:
return len(x) + len(y)
def sleep(data: int) -> int:
time.sleep(data)
return data
def calculate(data: int) -> bool:
time.sleep(data)
return data % 2 == 0
pipeline = (
task(len_strings)
| task(sleep, workers=3)
| task(calculate, workers=2)
)

25、stock:基于 Python 的股票分析系统。该项目是专为股票市场数据设计的 Web 平台,支持 Docker 一键部署。它采用 Python、Tornado 和 pandas 开发,能够自动获取每日股票行情、资金流向、分红等数据,并提供基本面、技术面、信息面等多种选股策略,支持股票指标计算、K 线形态识别、自定义策略模板等功能,适配 PC 和移动端设备。

Rust 项目
26、hurl:纯文本定义 HTTP 请求的工具。这是一个 Rust 写的命令行工具,可以用纯文本定义 HTTP 请求。它开箱即用、易于集成,可以轻松发起 HTTP 请求,支持多个链接、GraphQL、结果校验等功能。
POST https://example.org/api/tests
{
"id": "4568",
"evaluate": true
}
HTTP 200
[Asserts]
header "X-Frame-Options" == "SAMEORIGIN"
jsonpath "$.status" == "RUNNING" # Check the status code
jsonpath "$.tests" count == 25 # Check the number of items
jsonpath "$.id" matches /\d{4}/ # Check the format of the id

27、vector:开源高性能可观测性数据管道。该项目是 Datadog 开源的高性能、端到端可观测性数据管道,全面掌控自己的可观测性数据。它能够采集、处理和转发日志、指标等监控数据,支持将数据发送到不同平台和服务商,实现灵活高效的观测数据管理。来自 @刘睿华 的分享

28、verus:为 Rust 提供静态验证的工具。这是一个用于验证 Rust 代码正确性的工具,避免运行时出错。它允许开发者编写代码规范(specification),然后通过静态检查,确保代码在所有可能的执行路径上都满足规范要求。

Swift 项目
29、QLVideo:macOS 视频快速预览增强插件。这是一个专为 macOS 设计的 QuickLook 插件,可在 Finder 中预览原生不支持的视频文件的缩略图和静态画面,还能显示视频封面和详细的元数据信息,为用户带来更便捷的视频文件浏览体验。

30、QuickRecorder:轻巧的 macOS 屏幕录制工具。这是一个用 SwiftUI 编写、仅 10MB 的 macOS 屏幕录制工具,它只为做好录屏这一件事,不仅免费且功能丰富,支持窗口录制、应用录制、录制移动设备、窗口声音内录、鼠标高亮、隐藏桌面文件等功能。

人工智能
31、cua:为 AI 智能体提供高性能虚拟环境。这是一个专为 AI 智能体设计的高性能操作系统虚拟化与控制框架。它通过轻量级、近乎原生速度的虚拟容器,让 AI Agent 能够在完全隔离的 macOS 或 Linux 环境中自动执行"用电脑"任务,如操作应用、上网、写代码、自动化复杂办公流程等,并内置多种主流 LLM(大模型)接口。

32、FramePack:用笔记本轻松玩转 AI 生成长视频。这是一款用于视频生成的预测神经网络结构,可以在资源有限的设备上生成高质量的视频。它通过将上下文压缩成固定长度,使得生成任务的工作量与视频长度无关,从而实现高效且资源友好的视频生成。来自 @山姜 的分享

33、skypilot:让 AI 训练推理自动选择经济型 GPU 方案。这是一个开源的跨云 AI 和批量任务调度平台,用户可以通过统一接口在 K8s、本地集群和主流云服务商(AWS、GCP、Azure 等)上运行深度学习、分布式训练、推理、批处理等任务。它会自动寻找最便宜、可用的 GPU/TPU/CPU 资源,支持队列、自动容错、资源共享、成本优化等功能。

34、Tutorial-Codebase-Knowledge:AI 自动生成代码库教程。该项目利用 AI 将代码库转换为容易理解的教程。它通过分析 GitHub 仓库或本地代码目录,自动生成详细的学习指南,降低初学者理解和上手大型代码仓库的门槛。

35、WeClone:用微信聊天记录微调大语言模型。该项目是通过个人微信聊天记录对大语言模型(LLM)进行微调,打造专属的数字分身。它提供从聊天数据到模型微调、从文本生成到语音克隆、从训练到部署的全链路解决方案。让你的数字分身不仅"会说你的话",还能"听起来像你本人"。
其它
36、Best-Flutter-UI-Templates:免费精美的 Flutter UI 模板集合。该项目是完全免费的 Flutter UI 模板集合,为开发者提供高质量的界面设计参考和代码实现,包含引导页、酒店预订、健身应用等多种应用的 Flutter 界面模板。

37、LinuxMirrors:一键更换 Linux 软件源的脚本。该项目实现了一条命令即可将 Linux 默认软件源替换为国内镜像源,支持 Debian、Ubuntu、Kali Linux、Linux Mint 和 Deepin 等多种主流发行版。来自 @Super Manito 的分享

38、maple-font:开源圆角等宽字体。这是一款高质量的等宽字体,具备可变字体、圆角设计、智能连字、图标等特性,支持简体中文、繁体中文和日语字符集,以及通过脚本自定义构建字体,满足不同平台和个性化需求。

39、Micro-Wheeled_leg-Robot:桌面级开源双轮腿机器人。这是一款超小型的桌面级双轮腿机器人,集成了两轮自平衡与腿部运动能力。它提供了完整的机器人实现方案,包含硬件设计文件、软件代码和组装指南,方便机器人爱好者自制和学习。

40、ssh-action:让 GitHub Actions 执行远程 SSH 命令。该项目可以在 GitHub 工作流中通过 SSH 远程执行命令、脚本或部署应用程序,支持多种身份验证方式(密码、SSH 密钥)和主机连接方式(直连或通过代理)。

开源书籍
41、english-note:《从零开始学习英语语法》。这是一本面向英语基础薄弱同学的英语语法入门书籍,内容言简意赅、插图幽默风趣。

42、og-equity-compensation:《股权激励开放指南》。这本书讲的是美国科技公司员工股权激励相关的知识、术语、法律、税务与实践建议,内容包括股票期权、受限股票单位(RSU)、限制性股票、行权、税收、谈判技巧、常见陷阱等。
43、pytudes:提升 Python 编程能力的练习册。该项目是 Python 编程的练习集合,旨在通过编写难度适中且短小精悍的程序,提升 Python 编程能力,内容涵盖了算法、数据处理、数学问题、逻辑谜题、自然语言处理等多个领域。

最后
感谢参与分享开源项目的小伙伴们,欢迎更多的开源爱好者来 HelloGitHub 自荐/推荐开源项目。如果你发现了 GitHub 上有趣的项目,就点击这里分享给大家伙吧!
本期有你感兴趣的开源项目吗?如果有的话就留言告诉我吧~如果还没看过瘾,可以点击阅读往期内容。
感谢您的阅读,如果觉得本期内容还不错的话 求赞、求分享 ❤️