# 《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> 进行许可。