兴趣是最好的老师,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 问题的书籍,结合深入讨论,帮助读者更好地理解逻辑推理、数据结构、算法等计算机基础知识。

最后

感谢参与分享开源项目的小伙伴们,欢迎更多的开源爱好者来 HelloGitHub 自荐/推荐开源项目。如果你发现了 GitHub 上有趣的项目,就点击这里分享给大家伙吧!

本期有你感兴趣的开源项目吗?如果有的话就留言告诉我吧~如果还没看过瘾,可以点击阅读往期内容。

感谢您的阅读,如果觉得本期内容还不错的话 求赞、求分享

《HelloGitHub》第 108 期的更多相关文章

  1. 《HelloGitHub月刊》第01期

    <HelloGitHub月刊> 因为现在这个项目只有我自己做,只敢叫"月刊",希望有志同道合者,快点加入到这个项目中来!同时,如果您有更好的建议或者意见,欢迎联系我.联 ...

  2. 《HelloGitHub月刊》第 01 期

    <HelloGitHub月刊> 因为现在这个项目只有我自己做,只敢叫"月刊",希望有志同道合者,快点加入到这个项目中来!同时,如果您有更好的建议或者意见,欢迎联系我.联 ...

  3. 家里蹲大学数学杂志 Charleton University Mathematics Journal 官方目录[共七卷493期,6055页]

    家里蹲大学数学杂志[官方网站]从由赣南师范大学张祖锦老师于2010年创刊;每年一卷, 自己有空则出版, 没空则搁置, 所以一卷有多期.本杂志至2016年12月31日共7卷493期, 6055页.既然做 ...

  4. HelloGithub

    <HelloGithub月刊>第一期   <HelloGithub月刊> 因为现在这个项目只有我自己做,只敢叫“月刊”,希望有志同道合者,快点加入到这个项目中来!同时,如果您有 ...

  5. 在 GitHub 学习,成长为自己想要的样子|HelloGitHub 访谈

    万事开头难,我们经过长期的策划和筹备,终于推出了 HelloGitHub 采访系列「开源项目作者的访谈」.这是一个采访个人开源项目作者的栏目,内容侧重于开源项目作者与开源的故事. 我们深知想要做好一个 ...

  6. Java中接口和抽象类的比較

    Java中接口和抽象类的比較-2013年5月写的读书笔记摘要 1. 概述 接口(Interface)和抽象类(abstract class)是 Java 语言中支持抽象类的两种机制,是Java程序设计 ...

  7. GitHub 热点速览 Vol.17:在?各家视频会员要不要?

    作者:HelloGitHub-小鱼干 摘要:经济实用,用作上周的 GitHub 热点的横批再合适不过.先不说 GitHub Trending 上不止一个的会员共享项目,免你找好友刷脸要会员,这项目实在 ...

  8. 有备无患「GitHub 热点速览 v.21.38」

    作者:HelloGitHub-小鱼干 数据库最重要的一个功能是容灾备份,备份不只是对数据库重要,对日常工作生活的我们一样重要,比如花了一个工作日写的代码没有备份(虽然可能只有 1 行-)总归是一个让人 ...

  9. 《HelloGitHub月刊》第09期

    <HelloGitHub>第09期 兴趣是最好的老师,<HelloGitHub>就是帮你找到兴趣! 前言 转眼就到年底了,月刊做到了第09期,感谢大家一路的支持和帮助

  10. 《HelloGitHub月刊》第06期

    前言 <HelloGitHub>月刊做到第06期了(已经做了6个月了),在GitHub上获得了100+的stars,虽然不多,但是我很知足了,说明有人觉得这个项目是有价值的.同时园子中的' ...

随机推荐

  1. CH32V203F6P6-TSSOP20测试之01---初次测试

    一.收到空板 今天收到嘉立创打样的CH32V203F6P6-TSSOP20测试板子, 二.焊上元件 赽快焊接上元件并作测试. 三.上机测试 插好USB线,运行WCHISPStudio, 按BOOT不放 ...

  2. Flybirds 问题汇总

    1. HOOK-ERROR in before_all: AttributeError: 'ScreenRecordInfo' object has no attribute 'dev' 解决方法:

  3. 在 .NET Core中如何使用 Redis 创建分布式锁

    在 .NET Core WebApi 中使用 Redis 创建分布式锁可以通过 StackExchange.Redis 库来实现.分布式锁用于确保在分布式系统中,同一时间只有一个进程可以执行某段代码. ...

  4. Android 稳定性(二):治理思路篇

    本文同步发布于公众号:移动开发那些事:Android 稳定性(二):治理思路篇 一般来讲Android稳定性包括crash和ANR,本文主要围绕crash(应用的crash率)来讲述如何来做Andro ...

  5. java多线程---总结(1)

    线程创建.start.run 一.创建线程方式 java创建线程的方式,主要有三种:类Thread.接口Runnable.接口Callable. 1.Thread和Runnable进行比较 他们之间的 ...

  6. 比特c语言-分支与循环

        # 分支与循环 if语句 目录 if语句 if eg:输入一个整数,判断是否为奇数 else eg:输入一个整数,判断是否为奇数,如果是奇数打印是奇数,否则打印偶数 嵌套if eg:输入一个人 ...

  7. delphi DateUtils强大的时间功能集成

    初步说明: CompareDate 比较两个日期时间值日期部分的大小CompareDateTime 比较两个日期时间值的大小CompareTime 比较两个日期时间值时间部分的大小DateOf 去除日 ...

  8. WAIC 2024盛大召开,天翼云以全栈智算能力赋能AI时代!

    7月5日,2024世界人工智能大会期间,中国电信星辰人工智能生态论坛在上海世博中心启幕.论坛以"星辰注智,焕新领航"为主题,围绕人工智能技术发展趋势,分享中国电信与产业各界在人工智 ...

  9. CDN与云计算技术的结合:专业视角下的深度融合

    本文分享自天翼云开发者社区<CDN与云计算技术的结合:专业视角下的深度融合>,作者:大利 随着信息技术的不断发展,内容分发网络(CDN)与云计算技术作为两种重要的互联网基础设施,其结合已成 ...

  10. Linux部署Python项目

    项目部署 项目部署对于操作通常是由运维人员来进行统一管理装配的,但是对于一个开发人员来讲,基础的项目部署还是要会的. 这里我主要讲解python的项目是如何部署的,至于项目哪里来的,这就要看观众如何抉 ...