扫一扫
关注 HG 公众号
发现更多开源乐趣

第 61 期

兴趣是最好的老师,HelloGitHub 就是帮你找到编程的兴趣。

C 项目

1. acwj

Star 5.2k Watch 177 Fork 403
教你写 C 语言编译器的实战教程。教程注重实战循序渐进,一步步教你如何用 C 语言写一个可以自己编译自己(自举)、能够在真正的硬件上运行的 C 语言编译器
acwj

2. zstd

Star 14.7k Watch 408 Fork 1.4k
快速、无损的数据压缩算法 Zstandard 的实现。Zstd 的压缩比接近 lzma、lzham 和 ppmx,并且比 lza 或 bzip2 性能更好。在相似的压缩比情况下,它解压缩的速度比其他的算法都要快。很多知名项目和游戏都有这个算法的身影,示例代码:

static void compress_orDie(const char* fname, const char* oname)
{
    size_t fSize;
    void* const fBuff = mallocAndLoadFile_orDie(fname, &fSize);
    size_t const cBuffSize = ZSTD_compressBound(fSize);
    void* const cBuff = malloc_orDie(cBuffSize);

    /* Compress.
     * If you are doing many compressions, you may want to reuse the context.
     * See the multiple_simple_compression.c example.
     */
    size_t const cSize = ZSTD_compress(cBuff, cBuffSize, fBuff, fSize, 1);
    CHECK_ZSTD(cSize);

    saveFile_orDie(oname, cBuff, cSize);

    /* success */
    printf("%25s : %6u -> %7u - %s \n", fname, (unsigned)fSize, (unsigned)cSize, oname);

    free(fBuff);
    free(cBuff);
}

zstd

C# 项目

3. ravendb

Star 2.7k Watch 152 Fork 760
一款快速、可靠的开源 NoSQL 数据库
ravendb

4. Files

Star 9.2k Watch 241 Fork 503
一个全新的文件管理器。采用 Fluent Design 和 Windows 平台最新的 API 实现,简约但不简单
Files

Go 项目

5. jql

Star 798 Watch 13 Fork 12
用 Go 写的 JSON 数据查询工具。该工具安装方便,语法简单容易上手,实用示例代码很多比如:

# 查询 test.json 文件中,所有国家的名称
cat test.json | jql '(elem "countries" (elem (keys) (elem "name")))'
[
  "Poland",
  "United States",
  "Germany"
]

6. chanify

Star 309 Watch 1 Fork 25 中文
基于 Go 实现的向 iOS 设备推送消息的服务。手机上安装好配套的 iOS 应用,然后以 Docker 的方式部署完服务,就可以通过一条命令推送指定消息到 APP 上,是不是很方便吖

# 发送文本消息
$ curl --form-string "text=hello" "http://<address>:<port>/v1/sender/<token>"

# 发送文本文件
$ cat message.txt | curl -H "Content-Type: text/plain" --data-binary @- "http://<address>:<port>/v1/sender/<token>"

chanify

7. algorithm-pattern

Star 11.8k Watch 340 Fork 2.1k 中文
LeetCode 刷题集合项目。项目从 Go 语言入门讲起,总结了一套刷题模板和解题套路,示例代码为 Go 语言

8. imaging

Star 3.7k Watch 76 Fork 314
Go 语言的图像处理库。支持:调整大小、旋转、剪切、亮度调整等功能,示例代码:

// 调整
dstImage128 := imaging.Resize(srcImage, 128, 128, imaging.Lanczos)
// 锐化
dstImage := imaging.Sharpen(srcImage, 0.5)

imaging

9. ebiten

Star 4.4k Watch 114 Fork 305
Go 语言的 2D 游戏引擎库。通过它可以轻松地用 Go 语言制作出支持多平台的 2D 游戏,项目中还包含很多示例代码,帮助你快速上手
ebiten

Java 项目

10. flink-recommandSystem-demo

Star 2.6k Watch 122 Fork 958 中文
一个基于 Flink 实现的商品实时推荐系统。可以通过这个项目了解和学习推荐系统的设计和流程,该系统是通过 Flink 处理日志和统计商品热度,将处理好的数据放入 Redis 缓存。然后再将画像标签和实时记录放入 HBase。在用户请求获取推荐时,根据用户画像生成商品热度榜,并结合协同过滤和标签两个推荐模块,返回最终生成的商品推荐列表
flink-recommandSystem-demo

11. OpenRefine

Star 8.1k Watch 495 Fork 1.5k
一款用于清理数据的桌面工具。通过可视化的方式分析、整理数据,支持 Windows、Linux、Mac 操作系统。拥有查询、过滤、去重、分析等功能,可以把杂乱的数据变成“整洁”的电子表格,还能够将结果导出成多种格式的文件。不会编程和 SQL 的小伙伴们,也可以轻松分析海量数据啦!
OpenRefine

12. jacoco

Star 2.7k Watch 140 Fork 804
Java 代码测试覆盖率库
jacoco

13. kooder

Star 188 Watch 4 Fork 25
一个开源的代码搜索服务。为包括 GitLab、Gitea 的代码托管系统提供源码、仓库、Issue 的搜索服务
kooder

JavaScript 项目

14. taro

Star 445 Watch 8 Fork 9
一款 Web 轻量级的 3D 游戏引擎。底层基于 three.js 和 cannon-es 支持 3D 刚体物理引擎
taro

15. kutt

Star 4.9k Watch 62 Fork 521
免费开源的短链接服务。服务基于 Node.js+Express+React 实现,支持管理链接、自定义短链接、设置链接密码、访问统计等功能
kutt

16. nav

Star 708 Watch 18 Fork 293 中文
一个支持 SEO 的静态导航网站。不依赖后端的纯前端项目开箱即用,简单清爽
nav

17. drawio

Star 23.4k Watch 525 Fork 4.8k
一款简洁强大的绘图工具。免费开源可以自行部署也可以在线使用,功能上直追 Microsoft Visio。支持流程图、序列图、网络拓扑图、甘特图、思维导图、模型图等,还能导出多种格式类型比如 png、svg、PDF、HTML 和 VSDX 格式(Microsoft Visio 图形格式)
drawio

18. npkill

Star 4.6k Watch 38 Fork 123
快速查找和轻松删除 nodemodules 文件夹的工具。还在为 nodemodules 占了很多磁盘空间而烦恼吗?还在手动找用不到的 nodemodules 目录吗?快来试试 npkill 吧!轻松地删除 nodemodules 目录
npkill

PHP 项目

19. question2answer

Star 1.4k Watch 132 Fork 595
采用 PHP+MySQL 实现的免费开源的问答平台。基本上问答平台该有的功能它都有,那么问题来了是做个知乎还是 Stack Overflow 呢?

  • 支持回答投票、评论、最佳回答、关注和关闭问题
  • 完备的用户和权限管理
  • 多语言支持
  • 搜索时的相似问题匹配
  • 等等

question2answer

Python 项目

20. tomato-clock

Star 206 Watch 3 Fork 53 中文
Python 写的命令行番茄工作法定时器。代码仅有 100 多行,不依赖其它第三方库

🍅 tomato 25 minutes. Ctrl+C to exit
 🍅🍅---------------------------------------------- [8%] 23:4 ⏰ 

21. vardbg

Star 706 Watch 18 Fork 51
一款能够把 Python 程序执行过程,导出成视频或动图的代码调试工具。可用于动画学算法、制作代码讲解视频等场景
vardbg

22. apkleaks

Star 2.2k Watch 53 Fork 229
扫描 APK 文件是否包含敏感信息的命令行工具

// custom-rules.json
{
  "Amazon AWS Access Key ID": "AKIA[0-9A-Z]{16}",
  ...
}
$ apkleaks -f /path/to/file.apk -p rules.json -o ~/Documents/apkleaks-results.txt

apkleaks

23. graphene-django

Star 3.5k Watch 72 Fork 605
让你轻松地将 GraphQL 整合到 Django 项目的库

Rust 项目

24. fselect

Star 2.9k Watch 34 Fork 60
用类 SQL 的命令查找文件的命令行工具

fselect size, path from /home/user where name = '*.cfg' or name = '*.tmp'
fselect size, abspath from ./tmp where size gt 2g
fselect hsize, abspath from ./tmp where size lt 8k

Swift 项目

25. awesome-ios

Star 37.5k Watch 1.9k Fork 6.3k 中文
超棒的 iOS 开源项目集合。它非常全面包含 Objective-C、Swift 语言的项目,拥有网络、UI、JSON、数据库、音视频等分类,iOS 初学者寻找开源项目的好地方
awesome-ios

26. Knot

Star 371 Watch 13 Fork 116 中文
一款 iOS 抓包工具。实现了 HTTP(S) 解析、流量解析、多格式导出、证书管理以及过程分析等
Knot

27. SwiftUITodo

Star 616 Watch 8 Fork 83
用 SwiftUI 做的 Todo 工具。这是一个示例项目帮助新手掌握 SwiftUI
SwiftUITodo

其它

28. LIII

Star 432 Watch 12 Fork 39
免费开源的 BT 下载工具。如果你厌倦了广告、购买 VIP 才能提速,只想要一个简单好用的下载工具,那你可以试试这个开源项目
LIII

29. cloudmusic-vscode

Star 241 Watch 4 Fork 18 中文
网易云音乐 VS Code 插件。基于网易云网页 API 实现,支持:

  • 歌曲播放、收藏、喜欢
  • 心动模式、私人 FM
  • 评论(单曲、歌单...)
  • 歌词显示
  • 搜索(热搜/单曲/专辑/歌手...)
  • 等等

cloudmusic-vscode

30. shapez.io

Star 3.6k Watch 69 Fork 793
一款 Steam 上的模拟建造游戏《异形工厂》的源码。游戏是在无边的地图上开采资源、放置设施、组合图形、相互搭配,扩建自己的异形工厂。游戏轻松但也很有挑战性,快去试一试吧
shapez.io

开源书籍

31. Probabilistic-Programming-and-Bayesian-Methods-for-Hackers

Star 23.0k Watch 1.4k Fork 7.3k
《黑客的贝叶斯方法:以 Python 为例》
Probabilistic-Programming-and-Bayesian-Methods-for-Hackers

32. The-design-and-implementation-of-a-64-bit-os

Star 612 Watch 33 Fork 135 中文
《一个 64 位操作系统的设计与实现》

33. tensorflow-handbook

Star 3.3k Watch 138 Fork 773 中文
《简明的 TensorFlow 2》,在线阅读

机器学习

34. Real-Time-Person-Removal

Star 4.8k Watch 116 Fork 618
在 Web 浏览器中实时移除人像。该项目采用 JavaScript+TensorFlow.js 实现“凭空消失”
Real-Time-Person-Removal

35. AI-Expert-Roadmap

Star 10.5k Watch 645 Fork 948
人工智能学习路线图
AI-Expert-Roadmap