# 《HelloGitHub》第 52 期
> 兴趣是最好的老师,**HelloGitHub** 让你对开源感兴趣!
## 目录
点击右上角的 **「目录」** 图标打开目录,获得更好的阅读体验。

**Tips**:如果遇到图片刷不出来的情况,[点击](https://hellogithub.com/periodical/volume/52) 换一种浏览方式。

关注「HelloGitHub」公众号,第一时间收到推送
## 内容
> **以下为本期内容**|每月 **28** 号更新
### C 项目
1、[raspberry-pi-os](https://hellogithub.com/periodical/statistics/click?target=https://github.com/s-matyukevich/raspberry-pi-os):基于树莓派的操作系统开发教程(还未完结)。你的树莓派在吃灰吗?把它插上电用来学习开发操作系统吧
2、[SimpleKernel](https://hellogithub.com/periodical/statistics/click?target=https://github.com/Simple-XX/SimpleKernel):一个用来练手的简单内核项目。提供了各个阶段完成度不同的内核,可以选择从自己喜欢的地方开始

### C# 项目
3、[perfview](https://hellogithub.com/periodical/statistics/click?target=https://github.com/microsoft/perfview):微软开源的性能分析工具。配套的教程[视频](https://channel9.msdn.com/Series/PerfView-Tutorial)

### C++ 项目
4、[GuiLite](https://hellogithub.com/periodical/statistics/click?target=https://github.com/idea4good/GuiLite):引用方便的 C++ 全平台 GUI 库。能够使用在 PC 端、移动设备、物联网设备甚至是没有操作系统的单片机,还支持多种开发语言和三方库

5、[html-plus-plus](https://hellogithub.com/periodical/statistics/click?target=https://github.com/csb6/html-plus-plus):这个库让你可以使用 C++ 模板编写 HTML。HTML 文档被表示为一个单一的、深层嵌套的类型,相当于 HTML 的模版引擎。代码简单可供新手学习和使用,示例代码:
```c++
#include
#include "html++.h"
int main()
{
html<
head<
title<"Help Me.">
>,
body<
h1<"The horror!">,
p<"Someone has probably done this before, but I can see why it didn't catch on.">,
a<"href=https://github.com/csb6/html-plus-plus", "For science">
>
> page;
std::cout << page.content;
return 0;
}
```
### Go 项目
6、[algo](https://hellogithub.com/periodical/statistics/click?target=https://github.com/hoanhan101/algo):Golang 程序员面试中的问题和解答集合。该项目目前完成了大部分的数据结构和算法部分,准备相关面试的小伙伴可以阅读学习起来了
7、[gotty](https://hellogithub.com/periodical/statistics/click?target=https://github.com/yudai/gotty):能够把终端执行的命令展示到网页上的工具。安装和运行命令如下:
```
安装:go get github.com/yudai/gotty
运行:gotty [options] []
```

8、[logrus](https://hellogithub.com/periodical/statistics/click?target=https://github.com/sirupsen/logrus):可能是 Go 目前最受欢迎的第三方日志库。日志首先要能让人看懂,其次是程序易于处理日志包含的内容,logrus 也许能让你轻松快速实现上述两点

9、[websocket](https://hellogithub.com/periodical/statistics/click?target=https://github.com/gorilla/websocket):Go 的 websocket 三方库。看看它和标准库的对比,你就知道为什么它会出现在本期月刊中了

### Java 项目
10、[FlappyBird](https://hellogithub.com/periodical/statistics/click?target=https://github.com/kingyuluk/FlappyBird):Java 标准库实现的 Flappy Bird。优化了游戏难度并加入移动型水管,增加可玩性。没有采用第三方库和游戏引擎、项目结构简单、代码注释完整,适合 Java 初学者做为编程入门实战项目

11、[iotdb](https://hellogithub.com/periodical/statistics/click?target=https://github.com/apache/iotdb):清华大学软件学院自主研发并开源的时间序列数据管理引擎。能够有效应对工业物联网领域时间序列数量多、写入频率高、数据乱序到达、秒级聚合等场景。官方网站有系统设计文档和使用手册,作为初学者,可以系统的学习数据库系统的完整设计和实现。在 IoTDB 社区可以与国内用户直接交流、收集需求、设计功能、性能优化,每个改进点都可以看到直接效果。还可以体验 Apache 开源软件的工作模式,与世界各地的开发者交流想法,也有机会成为 Apache Committer、PMC 等

12、[metersphere](https://hellogithub.com/periodical/statistics/click?target=https://github.com/metersphere/metersphere):一站式的开源企业级持续测试平台。适应场景包括:测试跟踪、接口测试、性能测试等,兼容 JMeter 等开源标准,能够帮助开发和测试团队充分利用云弹性进行高度可扩展的自动化测试。测试同学的福音

13、[QMUI_Android](https://hellogithub.com/periodical/statistics/click?target=https://github.com/Tencent/QMUI_Android):用于辅助快速搭建一个具备基本还原设计效果的 Android 项目。快速搭建一个 Demo App 的必备利器,[官网](https://qmuiteam.com/android)还提供示例 App 下载,感兴趣的小伙伴快去试试吧

### JavaScript 项目
14、[apidoc](https://hellogithub.com/periodical/statistics/click?target=https://github.com/apidoc/apidoc):根据代码中的注释生成 RESTful 风格的 API 文档。注释示例:
```
/**
* @api {get} /user/:id Request User information
* @apiName GetUser
* @apiGroup User
*
* @apiParam {Number} id User's unique ID.
*
* @apiSuccess {String} firstname Firstname of the User.
* @apiSuccess {String} lastname Lastname of the User.
*/
```
15、[chrome-extensions-searchReplace](https://hellogithub.com/periodical/statistics/click?target=https://github.com/Summer-andy/chrome-extensions-searchReplace):一款搜索并且替换文本的谷歌插件。在做产品 PPT 的时候,需要对某些个页面中的一些名词进行统一替换,这个插件就是为了解决这个问题而诞生的。同时作者也是调研了其他类似功能的插件,它们都包含或多或少的问题,最终作者自己动手做了这个项目。可以说这款替换插件应该就是你最终的选择了

16、[leetcode-cli](https://hellogithub.com/periodical/statistics/click?target=https://github.com/skygragon/leetcode-cli):LeetCode 的命令行工具。之前我们推荐过命令行斗地主、划水逛社区等,真正努力的人用命令行来刷算法题!我颤抖了

17、[mongo-express](https://hellogithub.com/periodical/statistics/click?target=https://github.com/mongo-express/mongo-express):使用 Node.js、Express 和 Bootstrap3 编写的 MongoDB 管理平台

18、[Zettlr](https://hellogithub.com/periodical/statistics/click?target=https://github.com/Zettlr/Zettlr):开源免费支持多种操作系统的 Markdown 编辑器。如果你想尝试一款新的 Markdown 编辑器,它或许能满足你对编辑器所有想法,如果还不够那就自己动手增加吧

### Objective-C 项目
19、[Zebra](https://hellogithub.com/periodical/statistics/click?target=https://github.com/zbrateam/Zebra):用于越狱的 iOS 设备的软件包管理器

### Python 项目
20、[ar-cutpaste](https://hellogithub.com/periodical/statistics/click?target=https://github.com/cyrildiagne/ar-cutpaste):AR 拷贝实物照片到 PS 软件的工具。它可以通过 iPhone 或者 Android 手机将真实物品从周围环境中抠出来,并粘贴到 Photoshop 中,未来还会支持其它软件

21、[nginx-ui](https://hellogithub.com/periodical/statistics/click?target=https://github.com/schenkd/nginx-ui):在线修改 Nginx 配置的服务。总的来说还是能减少修改配置出错的概率,而且不用面对漆黑枯燥的命令行了

22、[python-dotenv](https://hellogithub.com/periodical/statistics/click?target=https://github.com/theskumar/python-dotenv):帮你更好的管理 Python 项目中敏感配置信息的开源三方库。在项目中会有一些数据库、账户、KEY 等敏感信息,这些信息最好不要写在源代码中。为了降低泄漏风险,一般会通过环境变量来设置,这个库可以很方便帮你在 Python 项目中管理这些信息。示例代码:
```python
# 安装:pip install -U python-dotenv
# 目录结构:
.
├── .env
└── settings.py
# 示例代码
# settings.py
import os
from dotenv import load_dotenv
load_dotenv()
SECRET_KEY = os.getenv("EMAIL")
DATABASE_PASSWORD = os.getenv("DATABASE_PASSWORD")
```
### 人工智能
23、[3d-photo-inpainting](https://hellogithub.com/periodical/statistics/click?target=https://github.com/vt-vl-lab/3d-photo-inpainting):一个把单张静态照片转化成 3D 图片的项目。快来尝鲜啦,不要等朋友圈 3D 照片刷屏后才“后知后觉”

### 其它
24、[analytics](https://hellogithub.com/periodical/statistics/click?target=https://github.com/plausible/analytics):一个开源的轻量级 Web 访问分析工具。如果你不想侵犯用户的隐私,只获取自己网站访问的基本数据,可以试试这个项目,用来代替谷歌分析

25、[data-scientist-roadmap](https://hellogithub.com/periodical/statistics/click?target=https://github.com/MrMimic/data-scientist-roadmap):数据科学技能路线图

26、[git-history](https://hellogithub.com/periodical/statistics/click?target=https://github.com/pomber/git-history):在线查看 GitHub 开源项目中文件的改动历史的工具。使用方法:
```
1. 打开 GitHub 上任意一个项目的文件
2. 把地址中的 github.com 替换成 githistory.xyz
3. 访问替换后的地址
```

27、[github-readme-stats](https://hellogithub.com/periodical/statistics/click?target=https://github.com/anuraghazra/github-readme-stats):在你的 README 中展示动态生成的 GitHub 统计信息。使用简单、样式多样,使用方法:
```
[](https://github.com/anuraghazra/github-readme-stats)
替换“521xueweihan”为你的 GitHub 用户名
```

28、[LeetcodeTop](https://hellogithub.com/periodical/statistics/click?target=https://github.com/afatcoder/LeetcodeTop):国内各大互联网公司常考的 LeetCode 题目
29、[nvda](https://hellogithub.com/periodical/statistics/click?target=https://github.com/nvaccess/nvda):一个微软开源的免费 Windows 操作系统的无视觉桌面访问阅读器。通过合成器语音或者盲文点字的反馈,方便盲人和低视力人群使用运行在 Windows 操作系统下运作的电脑。也能够让开发者了解微软的常见的辅助功能接口,如微软 Active Accessibility、Java Access Bridge、IAccessible2 和 UI automation。希望有更多的人了解无障碍,[NVDA 中文站](https://www.nvdacn.com/)
30、[papirus-icon-theme](https://hellogithub.com/periodical/statistics/click?target=https://github.com/PapirusDevelopmentTeam/papirus-icon-theme):适用于 Linux 系统的免费开源 SVG 图标主题

『上一期』 | 反馈和建议 | 『下一期』
---
👉 来!推荐开源项目 👈
微信中搜:HelloGitHub 关注公众号
不仅能第一时间收到推送,还有回馈粉丝的活动
如果文中的图刷不出来,可以点击 这里。
## 赞助
## 声明

本作品采用 署名-非商业性使用-禁止演绎 4.0 国际 进行许可。