# 《HelloGitHub》第 51 期
>兴趣是最好的老师,**HelloGitHub** 就是帮你找到兴趣!
<p align="center">
    <img src='https://raw.githubusercontent.com/521xueweihan/img/master/hellogithub/01/img/hello-github.jpg' style="max-width:100%;"></img>
</p>

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

这是一个面向**编程新手**、**热爱编程**、**对开源社区感兴趣** 人群的月刊,月刊的内容包括:**各种编程语言的项目**、**让生活变得更美好的工具**、**书籍、学习笔记、教程等**,这些开源项目大多都是非常容易上手,而且非常 Cool。主要是希望大家能动手用起来,加入到**开源社区**中。
- 会编程的可以贡献代码
- 不会编程的可以反馈使用这些工具中的 Bug
- 帮着宣传你觉得优秀的项目
- Star 项目⭐️

在浏览、参与这些项目的过程中,你将学习到**更多编程知识**、**提高编程技巧**、**找到编程的乐趣**。

🎉 最后 HelloGitHub 这个项目就诞生了 🎉

## 目录
- [C 项目](#C-项目)
- [C# 项目](#C-项目-1)
- [C++ 项目](#C-项目-2)
- [Go 项目](#Go-项目)
- [Java 项目](#Java-项目)
- [JavaScript 项目](#JavaScript-项目)
- [PHP 项目](#PHP-项目)
- [Python 项目](#Python-项目)
- [Swift 项目](#Swift-项目)
- [其它](#其它)
- [开源书籍](#开源书籍)
- [机器学习](#机器学习)


**Tips**:如果文中的图刷不出来,可以向我们反馈。也可以访问 [官网](https://hellogithub.com/) 获取更好的阅读体验。

<p align="center">
  <img src="https://raw.githubusercontent.com/521xueweihan/img/master/hellogithub/logo/weixin.png" style="max-width:30%;"></img><br>
欢迎关注 HelloGitHub 公众号
</p>

## 内容
> **以下为本期内容**|每个月 **28** 号发布最新一期

### C 项目
1、[goaccess](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/allinurl/goaccess):实时 Web 日志分析工具

<p align="center"><img src='https://raw.githubusercontent.com/521xueweihan/img2/master/hellogithub/51/img/goaccess.png' style="max-width:80%; max-height=80%;"></img></p>

2、[u6a](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/esolangs/u6a):函数式编程语言 [Unlambda](http://www.madore.org/~david/programs/unlambda/) 的一个朴素实现,包含字节码编译器和解释器。此项目可以帮助初学者理解函数式编程的思想,并提供了实现函数式编程语言解释器的一些朴素思路。
- 性能优异:运行性能远高于官方实现,且优于多数现有的开源实现
- 稳定可靠:有丰富的测试样例支撑,可靠性高
- 简单朴素:代码简单易读,且提供了实现思路[文档](https://github.com/esolangs/u6a/wiki/Developer's-Notes-on-Implementing-Unlambda),对初学或者完全没有学过编译原理的新手非常友好

<p align="center"><a href="#目录">🔙 返回目录 🔙</a></p><br>

### C# 项目
3、[Netch](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/NetchX/Netch):一款 Windows 平台的开源游戏加速工具

<p align="center"><img src='https://raw.githubusercontent.com/521xueweihan/img2/master/hellogithub/51/img/Netch.png' style="max-width:80%; max-height=80%;"></img></p>

4、[ScheduleMasterCore](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/hey-hoho/ScheduleMasterCore):一款基于 .NET Core 开发的分布式任务调度系统。支持丰富的调度类型、灵活可控的系统参数、简易的 UI 操作、支持多节点高可用、业务 API 集成等等特性。同时支持多样化的部署方式,容易上手

<p align="center"><img src='https://raw.githubusercontent.com/521xueweihan/img2/master/hellogithub/51/img/ScheduleMasterCore.png' style="max-width:80%; max-height=80%;"></img></p>

5、[HandyControl](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/HandyOrg/HandyControl):一套 WPF 控件库。它几乎重写了所有原生样式,同时包含 70 余款自定义控件。支持跨平台、国际化,适用于 MVVM 架构开发,扁平化设计、支持动态更换主题和背景色。丰富的自定义控件解决了 View 设计的痛点,让程序员更加专注于业务逻辑的开发

<p align="center"><img src='https://raw.githubusercontent.com/521xueweihan/img2/master/hellogithub/51/img/HandyControl.png' style="max-width:80%; max-height=80%;"></img></p>

<p align="center"><a href="#目录">🔙 返回目录 🔙</a></p><br>

### C++ 项目
6、[CnC_Remastered_Collection](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/electronicarts/CnC_Remastered_Collection):EA 发布的《红警》和《泰伯利亚黎明》游戏源代码

<p align="center"><img src='https://raw.githubusercontent.com/521xueweihan/img2/master/hellogithub/51/img/CnC_Remastered_Collection.jpg' style="max-width:80%; max-height=80%;"></img></p>

7、[chinessChess](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/xmuli/chinessChess):基于 Qt5 开发的中国象棋网络对战平台,支持单机和网络对战

<p align="center"><img src='https://raw.githubusercontent.com/521xueweihan/img2/master/hellogithub/51/img/chinessChess.gif' style="max-width:80%; max-height=80%;"></img></p>

<p align="center"><a href="#目录">🔙 返回目录 🔙</a></p><br>

### Go 项目
8、[grmon](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/bcicen/grmon):Goroutine 的命令行监控工具

<p align="center"><img src='https://raw.githubusercontent.com/521xueweihan/img2/master/hellogithub/51/img/grmon.gif' style="max-width:80%; max-height=80%;"></img></p>

9、[HackChrome](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/cckuailong/HackChrome):Go 语言实现的从 Chrome 中获取自动保存的用户名密码工具。目前仅支持 Windows Chrome 中存储的密码,但是很有意思还可以学习怎么用 Go 调用 DLL 动态链接库的姿势

<p align="center"><img src='https://raw.githubusercontent.com/521xueweihan/img2/master/hellogithub/51/img/HackChrome.png' style="max-width:80%; max-height=80%;"></img></p>

10、[seaweedfs](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/chrislusf/seaweedfs):一款基于 Go 开发的部署方便、使用简单且强大的分布式文件系统

<p align="center"><img src='https://raw.githubusercontent.com/521xueweihan/img2/master/hellogithub/51/img/seaweedfs.png' style="max-width:80%; max-height=80%;"></img></p>

11、[fate](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/godcong/fate):起中文名工具,去吧!算名先生

<p align="center"><a href="#目录">🔙 返回目录 🔙</a></p><br>

### Java 项目
12、[JApiDocs](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/YeDaxia/JApiDocs):一个无需额外注解、开箱即用的 SpringBoot 接口文档生成工具。特性:
- 代码即文档
- 支持导出 HTML
- 同步导出客户端 Model 代码
- 等等

13、[PowerJob](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/KFCFans/PowerJob):基于 Akka 架构的新一代分布式任务调度与计算框架。支持 CRON、API、固定频率、固定延迟等调度策略,支持单机、广播、MapReduce 等多种执行模式,支持在线任务治理与运维,提供 Shell、Python、Java 等功能丰富的任务处理器,提供工作流来编排任务解决依赖关系,使用简单,功能强大,文档齐全。同类产品对比:

<p align="center"><img src='https://raw.githubusercontent.com/521xueweihan/img2/master/hellogithub/51/img/PowerJob.png' style="max-width:80%; max-height=80%;"></img></p>

<p align="center"><a href="#目录">🔙 返回目录 🔙</a></p><br>

### JavaScript 项目
14、[react-trello](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/rcdexta/react-trello):任务状态管理面板组件。实现了拖拽方式管理任务状态,点击即可编辑任务内容

<p align="center"><img src='https://raw.githubusercontent.com/521xueweihan/img2/master/hellogithub/51/img/react-trello.gif' style="max-width:80%; max-height=80%;"></img></p>

15、[perfume.js](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/Zizzamia/perfume.js):用于测量第一个 dom 生成的时间、用户最早可操作时间和组件的生命周期性能的库。示例代码:
```javascript
perfume.start('fibonacci');
fibonacci(400);
perfume.end('fibonacci');
// Perfume.js: fibonacci 0.14 ms
```

<p align="center"><img src='https://raw.githubusercontent.com/521xueweihan/img2/master/hellogithub/51/img/perfume.png' style="max-width:80%; max-height=80%;"></img></p>

16、[Mongood](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/RenzHoly/Mongood):MongoDB 图形化的管理工具。特性:
- 基于微软 Fluent UI,支持自动黑暗模式
- 支持完整的 Mongo-shell 数据类型和查询语法,利用索引实现的自动查询和排序
- 支持 Json 数据库模式,既可用于 Server 也可用于 Client

<p align="center"><img src='https://raw.githubusercontent.com/521xueweihan/img2/master/hellogithub/51/img/Mongood.png' style="max-width:80%; max-height=80%;"></img></p>

17、[TimeCat](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/oct16/TimeCat):一款 JS 的网页录屏工具。参考了游戏录像的原理而实现的渲染引擎,生成的录像文件只有传统视频的百分之一!还可以在录制语音的同时自动生成字幕,导出的视频文件可以跨端播放。目前已经开发一段时间,后续还将实现更多有意思的功能,欢迎持续关注。[在线预览](https://oct16.gitee.io/static/timeCatReplay/antd.html)

18、[react-visual-editor](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/brick-design/react-visual-editor):基于 React 组件的可视化拖拽、搭建页面的代码生成工具。所见即所得,可以完美还原 UI 设计搞,并支持多款型号手机(可配置)和 PC 效果展示,模板功能可以使你分享你的页面或者页面中局部任何部分组件组合,减少相似页面的重复操作。效果如下:

<p align="center"><img src='https://raw.githubusercontent.com/521xueweihan/img2/master/hellogithub/51/img/react-visual-editor.gif' style="max-width:80%; max-height=80%;"></img></p>

19、[elevator.js](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/tholman/elevator.js):一个 back to top 返回顶部的插件。如他的名字一样,网页在返回顶部过程中像电梯向上运行,当页面返回到顶部时,会有电梯“到达”的提示音。叮~页面已到达顶部

<p align="center"><img src='https://raw.githubusercontent.com/521xueweihan/img2/master/hellogithub/51/img/elevator.gif' style="max-width:80%; max-height=80%;"></img></p>

<p align="center"><a href="#目录">🔙 返回目录 🔙</a></p><br>

### PHP 项目
20、[code6](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/4x99/code6):一款 GitHub 代码泄露监控系统,通过定期扫描 GitHub 发现代码泄露行为。特性:
- 全可视化界面,操作部署简单
- 支持 GitHub 令牌管理及智能调度
- 扫描结果信息丰富,支持批量操作
- 任务配置灵活,可单独配置任务扫描参数
- 支持白名单模式,主动忽略白名单仓库

<p align="center"><img src='https://raw.githubusercontent.com/521xueweihan/img2/master/hellogithub/51/img/code6.png' style="max-width:80%; max-height=80%;"></img></p>

<p align="center"><a href="#目录">🔙 返回目录 🔙</a></p><br>

### Python 项目
21、[rich](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/willmcgugan/rich):一个让你的终端输出变得“花里胡哨”的三方库。我的一位前辈告诉我,不要整那些花里胡哨的主题和样式,这是在自寻烦恼。可是臣妾做不到啊,这么好看的终端输出,让我的心情都愉悦起来了。瞧那性感的语法高亮、整齐的表格、舒服的颜色、进度条等,一切都是值得的

<p align="center"><img src='https://raw.githubusercontent.com/521xueweihan/img2/master/hellogithub/51/img/rich.png' style="max-width:80%; max-height=80%;"></img></p>

22、[poetry](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/python-poetry/poetry):Python 虚拟环境、依赖管理工具。依赖管理工具有很多,我相上了它有三点:通过单文件 pyproject.toml 便可轻松的区别安装、管理开发和正式环境、有版本锁定可方便回滚、输出界面简单清爽。当然它还是个“新生儿”,尝鲜的风险还是有的,选择须谨慎

<p align="center"><img src='https://raw.githubusercontent.com/521xueweihan/img2/master/hellogithub/51/img/poetry.gif' style="max-width:80%; max-height=80%;"></img></p>

23、[free-python-games](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/grantjenks/free-python-games):真入门级的 Python 游戏集合库。都是简单的小游戏:贪吃蛇、迷宫、Pong、猜字等,运行方便、代码简单易懂。用游戏开启的你 Python 学习之旅,玩完再学源码,其乐无穷啊。安装运行:
```
pip install freegames
python -m freegames.snake # freegames.游戏名
```

<p align="center"><img src='https://raw.githubusercontent.com/521xueweihan/img2/master/hellogithub/51/img/free-python-games.gif' style="max-width:80%; max-height=80%;"></img></p>

24、[py2sec](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/cckuailong/py2sec):一款轻量级跨平台 Python “加密”、加速的脚本工具。原理是基于 Cython 将 .py 编译成 run-time libraries 文件:.so(Linux && Mac)或 .pyd(Win),一定程度上实现了“加密”保护源代码的功能。参数详解如下:
```
-v,  --version    显示 py2sec 版本
-h,  --help       显示帮助菜单
-p,  --pyth       Python 的版本,默认为你的 Python 命令绑定的 Python 版本
-d,  --directory  Python 项目路径(如果使用 -d 参数,将编译整个 Python 项目)
-f,  --file       Python文件(如果使用 -f,将编译单个 Python 文件)
-m,  --maintain   标记你不想编译的文件或文件夹路径
-x  --nthread     编译启用的线程数
-q  --quiet       静默模式,默认 False
-r  --release     Release 模式,清除所有中间文件,只保留加密结果文件,默认 False
python py2sec.py -f test.py
python py2sec.py -f example/test1.py -r
python py2sec.py -d example/ -m test1.py,bbb/
```

<p align="center"><img src='https://raw.githubusercontent.com/521xueweihan/img2/master/hellogithub/51/img/py2sec.png' style="max-width:80%; max-height=80%;"></img></p>

25、[oxfs](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/RainMark/oxfs):一个基于 sftp 协议的 fuse 网络文件系统,功能上类似于 sshfs。特性:
- 引入了异步并发读远端文件机制,提高了文件首次读速度。
- 缓存持久化到本地磁盘,下次挂载时访问更加快速。
- 异步任务负责同步文件,避免低速的网络读写阻塞上层应用。

<p align="center"><img src='https://raw.githubusercontent.com/521xueweihan/img2/master/hellogithub/51/img/oxfs.gif' style="max-width:80%; max-height=80%;"></img></p>

<p align="center"><a href="#目录">🔙 返回目录 🔙</a></p><br>

### Swift 项目
26、[Aerial](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/JohnCoates/Aerial):炫酷的苹果系统屏保项目。该屏保视频取材自苹果零售店 Apple TV 的专用屏保,航拍质量超棒,快换上试试吧。直接下载 [Aerial.saver.zip 文件](https://github.com/JohnCoates/Aerial/releases),解压后双击文件“即可食用”

<p align="center"><img src='https://raw.githubusercontent.com/521xueweihan/img2/master/hellogithub/51/img/Aerial.gif' style="max-width:80%; max-height=80%;"></img></p>

<p align="center"><a href="#目录">🔙 返回目录 🔙</a></p><br>

### 其它
27、[shan-shui-inf](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/LingDong-/shan-shui-inf):自动生成一副山水画

<p align="center"><img src='https://raw.githubusercontent.com/521xueweihan/img2/master/hellogithub/51/img/shan-shui-inf.jpg' style="max-width:80%; max-height=80%;"></img></p>

28、[kuboard-press](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/eip-work/kuboard-press):一款基于 Kubernetes 的微服务管理界面。包含文档、教程、管理界面和实战分享

<p align="center"><img src='https://raw.githubusercontent.com/521xueweihan/img2/master/hellogithub/51/img/kuboard-press.png' style="max-width:80%; max-height=80%;"></img></p>

29、[vscode-rainbow-fart](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/SaekiRaku/vscode-rainbow-fart):一款在你编程时花式夸你的 VSCode 扩展插件。可以根据代码关键字,播放贴近代码意义的真人语音,并且有一个醒目的项目名字“彩虹屁”

<p align="center"><img src='https://raw.githubusercontent.com/521xueweihan/img2/master/hellogithub/51/img/vscode-rainbow-fart.png' style="max-width:80%; max-height=80%;"></img></p>

30、[flink-training-course](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/flink-china/flink-training-course):Flink 视频直播教程回放集合

31、[raft-zh_cn](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/maemual/raft-zh_cn):《分布式 Raft 一致性算法论文》中文翻译

32、[GitHub-Chinese-Top-Charts](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/kon9chunkit/GitHub-Chinese-Top-Charts):每周更新一次的 GitHub 中文项目排行榜

<p align="center"><a href="#目录">🔙 返回目录 🔙</a></p><br>

### 开源书籍
33、[go-ast-book](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/chai2010/go-ast-book):《Go语法树入门:开启自制编程语言和编译器之旅》

<p align="center"><img src='https://raw.githubusercontent.com/521xueweihan/img2/master/hellogithub/51/img/go-ast-book.png' style="max-width:80%; max-height=80%;"></img></p>

<p align="center"><a href="#目录">🔙 返回目录 🔙</a></p><br>

### 机器学习
34、[Surprise](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/NicolasHug/Surprise):一款简单易用基于 Python scikit 的推荐系统。如果你想用 Python 上手做一套推荐系统,那你可以试试它

<p align="center"><img src='https://raw.githubusercontent.com/521xueweihan/img2/master/hellogithub/51/img/Surprise.png' style="max-width:80%; max-height=80%;"></img></p>

35、[djl](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/awslabs/djl):亚马逊开源的一款基于 Java 语言的深度学习框架。对于 Java 开发者而言,可以在 Java 中开发及应用原生的机器学习和深度学习模型,同时简化了深度学习开发的难度。通过 DJL 提供直观的、高级的 API,Java 开发人员可以训练自己的模型,或者利用数据科学家用 Python 预先训练好的模型来进行推理。如果您恰好是对学习深度学习感兴趣的 Java 开发者,那么这个项目完全对口。运行效果如下:

<p align="center"><img src='https://raw.githubusercontent.com/521xueweihan/img2/master/hellogithub/51/img/djl.gif' style="max-width:80%; max-height=80%;"></img></p>

36、[data-science-ipython-notebooks](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/donnemartin/data-science-ipython-notebooks):数据科学的 IPython 集合。包含:TensorFlow、Theano、Caffe、scikit-learn、Spark、Hadoop、MapReduce、matplotlib、pandas、SciPy 等方方面面

<p align="center"><a href="#目录">🔙 返回目录 🔙</a></p><br>



<p align="center">
    <a href="https://github.com/521xueweihan/HelloGitHub/blob/master/content/50/HelloGitHub50.md">『上一期』</a> | <a href='https://github.com/521xueweihan/HelloGitHub/issues/899'>反馈和建议</a> | 『下一期』
</p>

---
<p align="center">
    看完了,还不够?<a href='https://github.com/ruanyf/weekly'><科技爱好者周刊></a>。还不过瘾,那就看看 <a href='https://github.com/521xueweihan/HelloGitHub#%E5%86%85%E5%AE%B9'><往期内容></a>吧。<br>
    <a href='https://github.com/521xueweihan/HelloGitHub/issues/new'>点击分享发现的有趣项目</a>
</p>


## 声明
<a rel="license" href="https://creativecommons.org/licenses/by-nc-nd/4.0/deed.zh"><img alt="知识共享许可协议" style="border-width: 0" src="https://licensebuttons.net/l/by-nc-nd/4.0/88x31.png"></a><br>本作品采用 <a rel="license" href="https://creativecommons.org/licenses/by-nc-nd/4.0/deed.zh">署名-非商业性使用-禁止演绎 4.0 国际</a> 进行许可。