《HelloGitHub》第 119 期 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
xueweihan
V2EX    分享发现

《HelloGitHub》第 119 期

  •  
  •   xueweihan 2 月 28 日 1542 次点击
    div class="topic_content">

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

    简介

    HelloGitHub 分享 GitHub 上有趣、入门级的开源项目。

    github.com/521xueweihan/HelloGitHub

    这里有实战项目、入门教程、黑科技、开源书籍、大厂开源项目等,涵盖多种编程语言 Python 、Java 、Go 、C/C++、Swift...让你在短时间内感受到开源的魅力,爱上开源!


    以下为本期内容|每月 28 号更新

    C 项目

    1 、voidImageViewer:比图片还小的免费看图工具。这是一款用 C 语言编写的 Windows 轻量级图片查看工具,让你几乎感受不到等待。它体积小、启动快,拥有极快的图片加载和切换速度,支持 JPG 、PNG 、WEBP 、BMP 、GIF 、ICO 、TIF 等主流图片格式。来自 @刘睿华 的分享

    2 、Zen-C:像高级语言一样写 C 代码。这是一个现代系统编程语言,写起来像高级语言又能像 C 语言一样运行。它通过编译生成 GNU C/C11 代码,兼容 C ABI (应用程序二进制接口),支持无缝集成到现有的 C 语言生态,在保持 C 语言运行效率的基础上,提升开发体验。

    import "std/net/tcp.zc" fn main() { "Echo Server listening on :8080"; let listener = TcpListener::bind("127.0.0.1", 8080).unwrap(); loop { // Accept new connections let stream = listener.accept().unwrap(); let buf: char[1024]; while true { let n = stream.read(&buf[0], 1024).unwrap(); if n == 0 { break; } stream.write(&buf[0], n); } } } 

    C# 项目

    3 、ParquetViewer:快速查看 Parquet 文件的桌面应用。这是一款专为 Windows 用户设计的 Parquet 文件查看与查询工具,支持浏览文件元数据、执行简单的 SQL 查询、打开单个文件或文件夹内的多个文件。

    4 、Winhance:开箱即用的 Windows 系统优化工具。这是一款基于 C# 开发的 Windows 10/11 一站式系统优化工具,无需重装系统即可定制、精简系统。它集成了软件管理、系统优化、界面定制等功能,支持一键卸载预装应用、性能调优和界面美化,适用于重装系统或新机初始化。来自 @只是肚子太寂寞 的分享

    C++ 项目

    5 、MFCMouseEffect:Windows 鼠标特效增强工具。这是一款轻量级的 Windows 桌面鼠标/光标特效工具,支持点击波纹、粒子拖尾、悬停发光、漂浮文字等多种鼠标特效。来自 @sqmw 的分享

    6 、zvec:轻量级进程内向量数据库。该项目是阿里开源的进程内向量数据库,无需独立部署即可直接使用。它基于 Proxima 引擎构建,提供本地化、低延迟的向量数据管理和语义检索能力,支持混合搜索、数据持久化、重排序等功能。

    import zvec # Define collection schema schema = zvec.CollectionSchema( name="example", vectors=zvec.VectorSchema("embedding", zvec.DataType.VECTOR_FP32, 4), ) # Create collection collection = zvec.create_and_open(path="./zvec_example", schema=schema) # Insert documents collection.insert([ zvec.Doc(id="doc_1", vectors={"embedding": [0.1, 0.2, 0.3, 0.4]}), zvec.Doc(id="doc_2", vectors={"embedding": [0.2, 0.3, 0.4, 0.1]}), ]) # Search by vector similarity results = collection.query( zvec.VectorQuery("embedding", vector=[0.4, 0.3, 0.3, 0.1]), topk=10 ) # Results: list of {'id': str, 'score': float, ...}, sorted by relevance print(results) 

    Go 项目

    7 、lazyssh:终端交互式 SSH 管理工具。这是一款 Go 写的终端交互式 SSH 管理工具,基于 OpenSSH 执行连接安全可靠。它提供直观易用的终端界面,支持模糊搜索、排序、Ping 检查和一键连接等功能。来自 @孤胆枪手 的分享

    8 、sql-tap:实时监控 SQL 流量的工具。这是一款基于 Go 开发的实时 SQL 流量监控工具,无需修改代码即可使用。它作为代理部署在应用与数据库之间,通过解析数据库 wire 协议捕获所有查询,提供 TUI 和 Web 两种使用方式,支持 PostgreSQL 、MySQL 和 TiDB 数据库。

    9 、Surge:终端里的高速下载工具。这是一款采用 Go 语言开发的终端下载工具,可将下载文件自动切分为多个数据块并行下载,支持从多个镜像源下载、自动故障转移、顺序下载模式等功能。来自 @Meet Mehta 的分享

    10 、task:告别 Makefile 复杂语法的构建工具。这是一款基于 Go 语言开发的现代化构建工具,可作为 GNU Make 的替代品。它采用更简单的 YAML 语法,支持跨平台、依赖管理、并行执行和条件触发等功能,适用于项目构建、开发环境管理和 CI/CD 集成。来自 @DeShuiYu 的分享

    Java 项目

    11 、jquick-curl:直接运行 curl 命令的 Java 库。这是一款轻量级 HTTP 客户端 Java 库,可直接将 curl 命令转换为 Java 中可执行的 HTTP 请求逻辑,无需手动改写代码。适用于从 Chrome 浏览器开发者工具、API 文档等复制 curl 命令后,快速集成到 Java 项目中。来自 @paohaijiao 的分享

    import java.util.List; // 示例 UserService 接口定义 public interface UserService { /** * 获取所有用户 * @param req 请求参数载体 * @return 所有用户列表 */ @JCurlCommand("curl -X GET --location 'http://localhost:8080/api/users/all'") List<JUser> all(JQuickCurlReq req); /** * 根据 ID 获取单个用户 * @param req 请求参数载体 * @return 单个用户信息 */ @JCurlCommand("curl -X GET http://localhost:8080/api/users/1") JUser getUserById(JQuickCurlReq req); /** * 创建新用户( POST 请求) * @param req 请求参数载体 * @return 创建后的用户信息 */ @JCurlCommand("curl -X POST http://localhost:8080/api/users/createUser \\\n" + "-H \"Content-Type: application/json\" \\\n" + "-d '{\"name\":\"John Doe\",\"email\":\"[email protected]\"}'") JUser users(JQuickCurlReq req); } 

    12 、pokemon-tbje:Java 写的文字版宠物小精灵游戏。这是一款基于 Java 游戏开发框架 LibGDX 构建的终端文字版宠物小精灵游戏,通过 Unicode 盲文字符作为像素点渲染画面,支持对战机制和完整的单人剧情。

    Javascript 项目

    13 、cloud-mail:基于 Cloudflare 的轻量级邮箱服务。这是一款基于 Cloudflare 的轻量级、响应式邮箱服务,只需一个域名即可在 Cloudflare Workers 上低成本快速搭建邮件服务平台,支持群发、收发附件和人机验证等功能。来自 @eoao 的分享

    14 、folio-2025:当个人主页变成 3D 游戏。该项目是前端大神 Bruno Simon 的开源新作,他将个人主页打造成一个可以驾车探索的沉浸式 3D 开放世界游戏,融入了物理模拟、天气系统、植被、昼夜交替等元素。来自 @卷卷卷 的分享

    15 、hanzi-writer:让汉字在网页上动起来。这是一款用于展示汉字笔画顺序和交互式书写练习的 Javascript 库,支持简/繁体字、调节播放速度、循环方式、实时检查笔画正确性等功能。

    var writer = HanziWriter.create('character-target-div', '国', { width: 100, height: 100, padding: 5, showOutline: true }); document.getElementById('animate-button').addEventListener('click', function() { writer.animateCharacter(); }); 

    16 、streamdown:专为流式输出而生的 Markdown 渲染组件。该项目是专为流式传输场景设计的 React Markdown 组件,可用于解决大语言模型逐字输出 Markdown 内容时出现的闪烁、渲染错误和安全等问题。

    export default function Chat() { const { messages, status } = useChat(); return ( <div> {messages.map(message => ( <div key={message.id}> {message.role === 'user' ? 'User: ' : 'AI: '} {message.parts.map((part, index) => part.type === 'text' ? ( <Streamdown key={index} animated plugins={{ code, mermaid, math, cjk }} isAnimating={status === 'streaming'} > {part.text} </Streamdown> ) : null, )} </div> ))} </div> ); } 

    17 、taoyuan:文字版田园模拟经营游戏。这是一款名为《桃源乡》的纯前端文字版田园模拟经营游戏,灵感来自《星露谷物语》。它采用像素与中国风相结合的视觉设计,玩家可以按照自己的想法经营农场,体验种植、钓鱼、烹饪、畜牧养殖和矿洞探险等多种玩法。来自 @谦君 的分享

    Kotlin 项目

    18 、Compass:极简的 Android 指南针。这是一款基于 Kotlin 开发的 Android 指南针应用,界面简洁、体积小、无广告,支持实时显示基本方位、传感器状态和震动反馈。来自 @ewiro 的分享

    19 、PixelPlayer:高颜值多功能的 Android 音乐播放器。这是一款本地优先、注重隐私的 Android 音乐播放器,拥有美观的 Material You 动态主题 ,界面可随专辑封面或手机壁纸自动变化,支持歌词显示、自定义歌曲过渡、桌面小部件、投屏播放、听歌统计等功能。

    Python 项目

    20 、freemocap:免费开源的动作捕捉系统。这是一款基于 Python 开发的动作捕捉系统,无需标记点和 GPU ,仅用普通摄像头即可实现全身 3D 动作数据采集,适用于动画制作、游戏开发和教育等场景。

    21 、gh-space-shooter:基于 GitHub 贡献生成太空射击动图。该项目能够根据用户的 GitHub 贡献图生成太空射击游戏风格的动图,支持自定义动图帧率以及通过 GitHub Actions 定时生成并自动更新到个人主页。来自 @Zane ChenPEc8I 的分享

    22 、great_expectations:像写单元测试一样验证数据质量。这是一个基于 Python 的数据质量验证框架,可通过简洁的代码定义验证规则,就像为数据编写单元测试,支持 pandas 、Spark 和 SQLAlchemy 等多种数据接入方式。来自 @Ashraf Haress 的分享

    import great_expectations as gx cOntext= gx.get_context() file_path = "./data/folder_with_data/yellow_tripdata_sample_2019-01.csv" batch = context.data_sources.pandas_default.read_csv(file_path) expectation = gx.expectations.ExpectColumnMaxToBeBetween( column="passenger_count", min_value=1, max_value=6 ) validation_results = batch.validate(expectation) print(validation_results) 

    23 、InvenTree:开源的库存管理系统。这是一款基于 Python 和 Django 开发的库存管理平台,内置 Web 管理界面和 REST API 服务,支持扫码入库、零件追踪、物料清单和供应商管理等功能。

    24 、pycparser:纯 Python 实现的 C 语言解析器。这是一个纯 Python 实现、无第三方依赖的 C 语言解析器,可将 C 代码解析为抽象语法树,从而实现用 Python 轻松分析与操作 C 语言代码,支持完整的 C99 标准和部分 C11 特性。

    Rust 项目

    25 、FaceWinUnlock-Tauri:开源的 Windows 人脸识别解锁工具。这是一款基于 Tauri 框架开发的 Windows 面容识别解锁增强工具,为没有红外摄像头的普通 Windows 电脑提供类似 Windows Hello 的刷脸解锁体验。

    26 、monty:启动速度极快的 Python 解释器。该项目是 Pydantic 团队用 Rust 开发的 Python 解释器,具有启动快、安全隔离、状态快照等特点,适合在 AI Agent 中运行大模型生成的 Python 代码。

    27 、weathr:Rust 写的实时 ASCII 天气动画。这是一款用 Rust 编写的终端查看天气工具,可通过 ASCII 动画实时展示当前天气情况,支持下雨、下雪、闪电和昼夜变化等动画效果。

    Swift 项目

    28 、AppPorts:一键将 macOS 应用迁移到外部硬盘。该项目通过 Contents 链接的方式,将 macOS 应用迁移到外部存储设备(移动硬盘、SD 卡或 NAS ),并在原位置保留应用入口,让用户能够像之前一样启动应用,在不影响使用的前提下释放宝贵的 macOS 存储空间。来自 @Zehua Wang 的分享

    29 、DebugSwift:开源的 iOS 移动端调试工具箱。这是一款专为 iOS 应用开发设计的端侧调试工具包,仅需几行代码即可在应用中启动调试面板,支持查看网络流量、性能分析、界面调试和文件浏览等功能。

    30 、dorso:矫正坐姿的 macOS 应用。这是一款用 Swift 开发的 macOS 坐姿监测应用,可通过摄像头或 AirPods 实时检测坐姿。当发现用户驼背或前倾时,应用会逐渐模糊屏幕,从而提醒用户及时纠正坐姿。

    人工智能

    31 、daily_stock_analysis:基于 LLM 的智能股票分析系统。这是一个由 LLM 驱动的智能股票分析工具,支持 A 股、港股和美股的每日自动分析与推送。它通过 AkShare 、Tushare 、YFinance 等数据源获取实时行情,并借助 DeepSeek 等大模型 API 服务,对自选股票进行多维度分析(技术面、筹码分布、舆情),生成决策仪表盘,支持 GitHub Actions 定时执行(无需服务器)或 Docker 一键部署。

    32 、learn-claude-code:从零开始动手实现 AI Agent 。该项目是讲解如何从零构建类似 Claude Code 的 AI Agent 工具,共计 12 节课,每节课都有一个可运行的 Python 文件。内容从最基础的 Agent 循环,逐步叠加工具调用、任务规划、子智能体、上下文压缩、多智能体协作和自主执行等功能,最终构建出一个完整的 AI Agent 系统。来自 @喜 BFoCE 的分享

    def agent_loop(messages): while True: respOnse= client.messages.create( model=MODEL, system=SYSTEM, messages=messages, tools=TOOLS, ) messages.append({"role": "assistant", "content": response.content}) if response.stop_reason != "tool_use": return results = [] for block in response.content: if block.type == "tool_use": output = TOOL_HANDLERS[block.name](**block.input) results.append({ "type": "tool_result", "tool_use_id": block.id, "content": output, }) messages.append({"role": "user", "content": results}) 

    33 、no-magic:零依赖单文件实现现代 AI 主流算法。这是一个专为学习 AI 算法设计的教学项目,包含 30 个零依赖、单文件、可直接运行的 Python 实现,涵盖从基础的 GPT 到微调( LoRA 、PPO )以及推理优化( Flash Attention )等内容。通过简单易懂的代码实现每个算法,并配有对应的 Manim 动画,方便理解和学习。

    34 、openclaw:开箱即用的个人 AI 助手。这是一款用 TypeScript 开发的开源个人 AI 助手,可快速部署在 macOS 、Windows 和 Linux 系统,并支持通过 WhatsApp 、Telegram 、Slack 等即时通讯应用进行交互。只要你的 token 额度充足,它就能 7*24 不停歇地执行任务,持续为你“打工”。来自 @喜 BFoCE 的分享

    35 、pi-mono:极简的 AI Agent 工具箱。这是一款基于 TypeScript 开发的 AI Agent 工具箱,爆火的 OpenClaw 就是基于该项目开发出来的。它提供开发 AI Agent 所需的基础功能,包括统一多 LLM 服务接口、Agent 状态管理、工具调用、交互式命令行界面、WebUI 和 Slack 机器人集成等。

    36 、qmd:本地运行的智能知识库搜索工具。这是一款完全本地运行的智能搜索引擎,可用于检索个人文档、知识库、会议记录和 Markdown 文件。它集成了本地运行轻量化模型、BM25 全文检索、向量语义搜索和重排序等功能,开箱即用、无需联网、支持 MCP 协议,可作为 AI 助手和 Agent 工作流中的知识搜索工具。

    其它

    37 、fishes:手绘鱼类的在线虚拟水族馆。该项目是让用户通过手绘创作鱼类涂鸦,并通过 AI 技术判定作品与鱼的相似度,通过审核的鱼会被放入一个全球共享的虚拟水族箱中。

    38 、minichord:开源的掌上电子乐器。这是一个口袋大小的迷你电子乐器,配备 21 个和弦按钮降低演奏门槛,并设有竖琴触控区用于弹奏不同音符,还支持通过 USB 连接作为 MIDI 控制器使用。

    39 、pakku.js:拯救 B 站弹幕体验的浏览器插件。这是一款专为提升哔哩哔哩网站弹幕体验的浏览器插件,能够自动合并重复或相似的弹幕内容,还你清爽的弹幕视频体验。

    40 、quickemu:让小白也能玩转虚拟机的工具。这是一个用于快速创建和运行 QEMU 虚拟机的工具,通过 quickget 和 quickemu 两个命令,能够自动完成系统镜像下载、配置文件生成和启动虚拟机,支持近千种操作系统版本,但仅限于在 Linux 和 macOS 宿主机上使用。来自 @c-hui 的分享

    41 、skills:Claude 官方开源的 Skills 教程。该项目是 Anthropic 官方开源的 Agent Skills 仓库,介绍如何通过标准化的 SKILL.md 文件结构,将提示词和工具调用封装为插件形式,为 AI 助手提供可动态加载的技能包,以可复用的方式更好地完成特定任务。

    最后

    感谢您的阅读

    5 条回复    2026-02-28 11:57:58 +08:00
    jifengg
        1
    jifengg  
       2 月 28 日   1
    先赞后看
    zenfsharp
        2
    zenfsharp  
       2 月 28 日
    我也赞一个
    GYQQ
        3
    GYQQ  
       2 月 28 日
    甲骨文 2c1g 的免费小鸡想玩龙虾可以用 rust 重构的 zeroclaw
    sunfly
        4
    sunfly  
       2 月 28 日
    啥时候能出个订阅啊哈哈
    sunfly
        5
    sunfly  
       2 月 28 日
    @sunfly 订阅到了嘻嘻
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     4940 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 24ms UTC 09:51 PVG 17:51 LAX 02:51 JFK 05:51
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86