From c7c57bdc27c273840182f9dc6c8497668e385f08 Mon Sep 17 00:00:00 2001 From: xueweihan <595666367@qq.com> Date: Mon, 27 Sep 2021 22:50:29 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8F=91=E5=B8=83=EF=BC=9A=E3=80=8AHelloGitHub?= =?UTF-8?q?=E3=80=8B=E7=AC=AC66=E6=9C=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 2 +- README_en.md | 1 + content/35/HelloGitHub35.md | 2 +- content/58/HelloGitHub58.md | 2 +- content/65/HelloGitHub65.md | 6 +- content/66/HelloGitHub66.md | 325 +++++++++++++++++++++++++++++++ content/contributors.md | 2 +- content/last.md | 370 +++++++++++++++++------------------- 8 files changed, 509 insertions(+), 201 deletions(-) create mode 100644 content/66/HelloGitHub66.md diff --git a/README.md b/README.md index 5e484d9f..eaa0b5f1 100644 --- a/README.md +++ b/README.md @@ -20,6 +20,7 @@ HelloGitHub 分享 GitHub 上有趣、入门级的开源项目。**每月 28 号 | :card_index: | :jack_o_lantern: | :beer: | :fish_cake: | :octocat: | | ------- | ----- | ------------ | ------ | --------- | +| [第 66 期](/content/66/HelloGitHub66.md) | | [第 65 期](/content/65/HelloGitHub65.md) | [第 64 期](/content/64/HelloGitHub64.md) | [第 63 期](/content/63/HelloGitHub63.md) | [第 62 期](/content/62/HelloGitHub62.md) | [第 61 期](/content/61/HelloGitHub61.md) | | [第 60 期](/content/60/HelloGitHub60.md) | [第 59 期](/content/59/HelloGitHub59.md) | [第 58 期](/content/58/HelloGitHub58.md) | [第 57 期](/content/57/HelloGitHub57.md) | [第 56 期](/content/56/HelloGitHub56.md) | | [第 55 期](/content/55/HelloGitHub55.md) | [第 54 期](/content/54/HelloGitHub54.md) | [第 53 期](/content/53/HelloGitHub53.md) | [第 52 期](/content/52/HelloGitHub52.md) | [第 51 期](/content/51/HelloGitHub51.md) | @@ -28,7 +29,6 @@ HelloGitHub 分享 GitHub 上有趣、入门级的开源项目。**每月 28 号 | [第 40 期](/content/40/HelloGitHub40.md) | [第 39 期](/content/39/HelloGitHub39.md) | [第 38 期](/content/38/HelloGitHub38.md) | [第 37 期](/content/37/HelloGitHub37.md) | [第 36 期](/content/36/HelloGitHub36.md) | | [第 35 期](/content/35/HelloGitHub35.md) | [第 34 期](/content/34/HelloGitHub34.md) | [第 33 期](/content/33/HelloGitHub33.md) | [第 32 期](/content/32/HelloGitHub32.md) | [第 31 期](/content/31/HelloGitHub31.md) | | [第 30 期](/content/30/HelloGitHub30.md) | [第 29 期](/content/29/HelloGitHub29.md) | [第 28 期](/content/28/HelloGitHub28.md) | [第 27 期](/content/27/HelloGitHub27.md) | [第 26 期](/content/26/HelloGitHub26.md) | -| [第 25 期](/content/25/HelloGitHub25.md) | [第 24 期](/content/24/HelloGitHub24.md) | [第 23 期](/content/23/HelloGitHub23.md) | [第 22 期](/content/22/HelloGitHub22.md) | [第 21 期](/content/21/HelloGitHub21.md) | | [第 05 期](/content/05/HelloGitHub05.md) | [第 04 期](/content/04/HelloGitHub04.md) | [第 03 期](/content/03/HelloGitHub03.md) | [第 02 期](/content/02/HelloGitHub02.md) | [第 01 期](/content/01/HelloGitHub01.md) | diff --git a/README_en.md b/README_en.md index f2d9d180..78d29d51 100644 --- a/README_en.md +++ b/README_en.md @@ -23,6 +23,7 @@ The [latest article](https://github.com/521xueweihan/HelloGitHub/blob/master/con | :card_index: | :jack_o_lantern: | :beer: | :fish_cake: | :octocat: | | ------- | ----- | ------------ | ------ | --------- | +| [NO.66](/content/66/HelloGitHub66.md) | | [NO.65](/content/65/HelloGitHub65.md) | [NO.64](/content/64/HelloGitHub64.md) | [NO.63](/content/63/HelloGitHub63.md) | [NO.62](/content/62/HelloGitHub62.md) | [NO.61](/content/61/HelloGitHub61.md) | | [NO.60](/content/60/HelloGitHub60.md) | [NO.59](/content/59/HelloGitHub59.md) | [NO.58](/content/58/HelloGitHub58.md) | [NO.57](/content/57/HelloGitHub57.md) | [NO.56](/content/56/HelloGitHub56.md) | | [NO.55](/content/55/HelloGitHub55.md) | [NO.54](/content/54/HelloGitHub54.md) | [NO.53](/content/53/HelloGitHub53.md) | [NO.52](/content/52/HelloGitHub52.md) | [NO.51](/content/51/HelloGitHub51.md) | diff --git a/content/35/HelloGitHub35.md b/content/35/HelloGitHub35.md index dff0f25a..8714086c 100644 --- a/content/35/HelloGitHub35.md +++ b/content/35/HelloGitHub35.md @@ -136,7 +136,7 @@ $ bash halo-cli.sh -u

🔙 返回目录 🔙


### JavaScript 项目 -11、[Gitter](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/kokohuang/Gitter):GitHub 的小程序客户端。UI 设计漂亮,可作为小程序和 GitHub 结合的实战项目学习 +11、[Gitter](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/nslog11/Gitter):GitHub 的小程序客户端。UI 设计漂亮,可作为小程序和 GitHub 结合的实战项目学习

diff --git a/content/58/HelloGitHub58.md b/content/58/HelloGitHub58.md index db42c7e7..5562a2f8 100644 --- a/content/58/HelloGitHub58.md +++ b/content/58/HelloGitHub58.md @@ -84,7 +84,7 @@ echo 'GET http://localhost:8080' | \ 8、[java-design-patterns](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/iluwatar/java-design-patterns):设计模式 Java 的最佳实践,出自开源社区大佬们之手。作为有梦想和追求的 Java 程序员,当然需要会一些设计模式啦。这个项目虽然是英文的但是先看代码和图,尝试理解含义那么英文描述也就能猜得八九不离十了。不要让英语作为你不努力的借口,努力变强吧![在线阅读](https://java-design-patterns.com/) -9、[apollo](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/ctripcorp/apollo):携程开源的分布式配置中心。开箱即用理念发挥到极致,比如:服务器部分基于 Spring Boot 和 Spring Cloud 开发,运行方便无需额外的 Tomcat 应用容器。并且具备配置修改后即时生效、规范的权限、流程治理等特性,适用于微服务配置管理场景 +9、[apollo](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/apolloconfig/apollo):携程开源的分布式配置中心。开箱即用理念发挥到极致,比如:服务器部分基于 Spring Boot 和 Spring Cloud 开发,运行方便无需额外的 Tomcat 应用容器。并且具备配置修改后即时生效、规范的权限、流程治理等特性,适用于微服务配置管理场景

diff --git a/content/65/HelloGitHub65.md b/content/65/HelloGitHub65.md index 4c08019c..e181e057 100644 --- a/content/65/HelloGitHub65.md +++ b/content/65/HelloGitHub65.md @@ -157,7 +157,7 @@ redisClient.shutdown();

-15、[milkdown](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/Saul-Mirone/milkdown):一款清爽见即所得的 Markdown 编辑器。不同于大多数 Markdown 编辑器它是插件驱动的,类似开源可自由扩展的 Typora。项目由 prosemirror+remark 构建,入门开发者从中可以学习到如何使用 prosemirror 来开发富文本编辑器,以及如何设计一个针对编辑器的插件系统 +15、[milkdown](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/Saul-Mirone/milkdown):一款清爽所见即所得的 Markdown 编辑器。不同于大多数 Markdown 编辑器它是插件驱动的,类似开源可自由扩展的 Typora。项目由 prosemirror+remark 构建,入门开发者从中可以学习到如何使用 prosemirror 来开发富文本编辑器,以及如何设计一个针对编辑器的插件系统 ```javascript import { Editor } from '@milkdown/core'; import { commonmark } from '@milkdown/preset-commonmark'; @@ -262,7 +262,7 @@ print(ray.get(futures))

🔙 返回目录 🔙


### Swift 项目 -25、[FlappySwift](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/fullstackio/FlappySwift):用 Swfit 写的愤怒小鸟游戏 +25、[FlappySwift](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/fullstackio/FlappySwift):用 Swfit 写的 Flappy Bird 游戏

@@ -328,7 +328,7 @@ print(ray.get(futures))

- 『上一期』 | 反馈和建议 | 『下一期』 + 『上一期』 | 反馈和建议 | 『下一期』

--- diff --git a/content/66/HelloGitHub66.md b/content/66/HelloGitHub66.md new file mode 100644 index 00000000..d7fc9ffb --- /dev/null +++ b/content/66/HelloGitHub66.md @@ -0,0 +1,325 @@ +# 《HelloGitHub》第 66 期 +> 兴趣是最好的老师,**HelloGitHub** 让你对编程感兴趣! +

+ +

+ +## 目录 + +**Tips**:如果文中的图刷不出来,可以点击 [这里](https://hellogithub.com/periodical/volume/66/) 获取更好的阅读体验。 + +- [C 项目](#C-项目) +- [C# 项目](#C-项目-1) +- [C++ 项目](#C-项目-2) +- [CSS 项目](#CSS-项目) +- [Go 项目](#Go-项目) +- [Java 项目](#Java-项目) +- [JavaScript 项目](#JavaScript-项目) +- [Kotlin 项目](#Kotlin-项目) +- [Objective-C 项目](#Objective-C-项目) +- [Python 项目](#Python-项目) +- [Rust 项目](#Rust-项目) +- [Swift 项目](#Swift-项目) +- [其它](#其它) +- [开源书籍](#开源书籍) +- [机器学习](#机器学习) + + +- [返回首页](https://github.com/521xueweihan/HelloGitHub#%E5%86%85%E5%AE%B9) + +

+
+关注「HelloGitHub」公众号,第一时间收到推送 +

+ +## 内容 +> **以下为本期内容**|每个月 **28** 号更新 + +### C 项目 +1、[HEX-LINK](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/JingYang1124/HEX-LINK):自制电脑游戏的体感设备。该项目包含制作时需要的硬件设计和全部源码 +``` +. +├─firmware # 软件(根据自己使用的工具选择如下一种工程即可) +│ ├─ArduinoIDE_Proj # Arduino IDE版工程 +│ │ ├─Additional_Libraries # 里面的文件夹需要复制到Arduino IDE安装目录下的libraries文件夹 +│ │ ├─Hex_Link_Leonardo # 需要下载至接收端的程序 +│ │ └─Hex_Link_Nano # 需要下载至发送端的程序 +│ ├─Bootloaders # 需要下载至芯片的arduino bootloader +│ └─Vscode_PlatformIO_Proj # VScode PlatformIO版工程 +│ ├─Hex_Link_Leonardo # 需要下载至接收端的程序 +│ └─Hex_Link_Nano # 需要下载至发送端的程序 +├─hardware # 硬件(PCB工程) +│ ├─BOM # PCB的物料清单,包含参考的购买链接(链接仅作参考,在其他任何店铺购买相同型号即可) +│ ├─Hex_Link_Rec # 接收端PCB工程 +│ ├─Hex_Link_Trans # 发送端PCB工程 +│ └─Nano_Jtag_Pin # 转接板:用来烧录Nano bootloader的Jtag口转接板 +├─model # 接收端外壳3维模型 +│ ├─Solidworks_Project # 2018版本Solidworks工程 +│ └─STL_TAP # STL文件,可直接用于3D打印.TAP文件是顶层亚克力板的CNC加工文件 +├─references # 参考文档 +└─tools # 额外的脚本工具 +``` + +

+ +

🔙 返回目录 🔙


+ +### C# 项目 +2、[SteamTools](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/SteamTools-Team/SteamTools):集合多种 Steam 客户端工具的工具箱。该工具支持 Window、Linux、macOS、Android 操作系统,包括游戏库存管理、解锁成就、史低价格、出售库存物品等功能,还有丰富的插件等待你发掘 + +

+ +3、[xLua](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/Tencent/xLua):为 C#、Unity、.Net 等环境增添 Lua 脚本编程的能力,使得 Lua 代码方便地与 C# 相互调用 +```c# +XLua.LuaEnv luaenv = new XLua.LuaEnv(); +luaenv.DoString("CS.UnityEngine.Debug.Log('hello world')"); +luaenv.Dispose(); +``` + +

+ +4、[BBDown](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/nilaoda/BBDown):命令行哔哩哔哩视频下载工具 + +

+ +

🔙 返回目录 🔙


+ +### C++ 项目 +5、[libqalculate](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/Qalculate/libqalculate):使用 C++ 编写的多功能计算器桌面应用、库和 CLI 程序。它易于使用功能强大,支持大型可定制函数库、单位计算和转换、符号计算(包括积分和方程)。作为用户你可以直接在命令行中使用,作为开发者你也可以在自己的项目中使用这个库。官方还制作了 [Qt](https://github.com/Qalculate/qalculate-qt) 和 [GTK](https://github.com/Qalculate/qalculate-gtk) 两个版本的 GUI 计算器应用 + +

+ +6、[btop](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/aristocratos/btop):界面酷炫的命令行资源监视器。可以显示处理器、内存、磁盘、网络和进程的使用情况和统计信息,还支持鼠标操作 + +

+ +7、[TinyWebServer](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/qinguoyi/TinyWebServer):Linux 下的 C++ 轻量级 Web 服务器。该项目不仅可以用来搭建 Web 服务,也适合 C++ 初学者作为网络编程实战项目。作者还写了文章讲解相关代码和原理,帮助初学者更好的掌握网络编程相关知识 + +

🔙 返回目录 🔙


+ +### CSS 项目 +8、[css_tricks](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/QiShaoXuan/css_tricks):常用 CSS 样式示例集合 + +

+ +

🔙 返回目录 🔙


+ +### Go 项目 +9、[video-srt-windows](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/wxbool/video-srt-windows):自动识别视频语音生成字幕文件的工具。采用 Go+walk 开发所以仅支持 Windows 系统,原理是请求在线语音转文字的服务,超出免费额度需付费。另外还加入了导出字幕文件和翻译功能 + +

+ +10、[go-daily-lib](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/darjun/go-daily-lib):每天学习一个 Go 语言库。内容包含标准库和三方库,每个库对应一篇介绍和上手的文章 + +

+ +11、[Open-IM-Server](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/OpenIMSDK/Open-IM-Server):基于 Go 实现的轻量级即时通讯(IM)项目。具有高性能、易扩展、安装简单、私有化部署等特性,同时包含多种客户端 SDK。从服务器到客户端一体的开源即时通讯(IM)解决方案 + +

+ +12、[go-fly](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/taoshihan1991/go-fly):基于 Go 语言实现的在线客服系统,采用 Gin+MySQL+JWT+WebSocket 等技术栈实现 + +

+ +13、[viper](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/spf13/viper):用来搞定 Go 应用中配置的库。支持多种配置文件类型、监控并重新加载配置文件、远程读取配置系统等 +```go +viper.SetConfigName("config") // 配置文件名,不包括后缀 +viper.SetConfigType("yaml") // 配置文件的后缀 +viper.AddConfigPath("/etc/appname/") // 查找配置文件的目录 +viper.AddConfigPath("$HOME/.appname") // 支持查找多个目录 +// 异常处理 +if err := viper.ReadInConfig(); err != nil { + if _, ok := err.(viper.ConfigFileNotFoundError); ok { + // 如果没有找到配置文件 + } else { + // 找到了配置文件,但出现了其他错误 + } +} +``` + +

+ +

🔙 返回目录 🔙


+ +### Java 项目 +14、[o2oa](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/o2oa/o2oa):国产的 OA 系统。功能齐全支持考勤、会议管理、云盘等,适用于企业 OA、协同办公 + +

+ +15、[IJPay](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/Javen205/IJPay):Java 支付工具库,轻松完成支付模块开发。封装了常用的微信、QQ、支付宝、银联、PayPal 支付等支付方式的各种常用接口。不依赖任何 MVC 框架,轻松接入到 Java 项目 + +16、[VirtualApp](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/asLody/VirtualApp):Android 系统的沙盒程序,App 虚拟化引擎。它创建了一个虚拟空间,在那里可以任意安装、启动、控制、卸载应用。虚拟空间与外部隔离相当于沙盒环境,可在安卓上实现应用多开、静默安装等黑科技 + +

+ +

🔙 返回目录 🔙


+ +### JavaScript 项目 +17、[sharedb](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/share/sharedb):基于 JSON 数据 OT 算法的实时数据库。简单来说就是实时协同数据框架,可用来实现当页面因用户操作发生数据变化时,实时把数据同步展示到其它用户页面上,其中 OT 算法就是解决此协同过程中问题的通用算法。常见的场景比如:多用户之间的状态同步、在线协作文档、离线后数据改动同步等 + +

+ +18、[30-Days-Of-JavaScript](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/Asabeneh/30-Days-Of-JavaScript):30 天 JavaScript 编程挑战。该教程虽然是英文教程但是图文并茂通俗易通,内容循序渐进包含练习题,适合零基础想要学习 JavaScript 的同学 + +

+ +19、[YesPlayMusic](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/qier222/YesPlayMusic):高颜值的第三方网易云播放器。它不仅拥有简洁美观的外观,还有丰富的功能 +- 支持 Windows/macOS/Linux +- 私人 FM/每日推荐歌曲 +- 网易云账号登录 +- 歌词显示 +- 自定义快捷键和全局快捷键 +- 等等 + +

+ +20、[javascript](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/airbnb/javascript):Airbnb 开源的 JavaScript 风格指南。[中文](https://github.com/lin-123/javascript) +```javascript +// 采用数组解构 +const arr = [1, 2, 3, 4]; + +// bad +const first = arr[0]; +const second = arr[1]; + +// good +const [first, second] = arr; +``` + +21、[spy-debugger](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/wuchangming/spy-debugger):远程调试手机页面和抓包的工具。操作简单仅需手机和电脑在同一个 WIFI 下,即可在实现真机调试页面 + +

+ +

🔙 返回目录 🔙


+ +### Kotlin 项目 +22、[Component](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/xiaojinzi123/Component):Android 的组件化框架,帮助开发者在实现项目组件化。它的强大在于功能齐全、更新及时,支持 Kotlin、AndroidX、RxJava、协程等 + +

🔙 返回目录 🔙


+ +### Objective-C 项目 +23、[iOSInterviewQuestions](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/ChenYilong/iOSInterviewQuestions):iOS 面试题集合(附答案) + +

🔙 返回目录 🔙


+ +### Python 项目 +24、[Pokemon-Terminal](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/LazoCoder/Pokemon-Terminal):适用于多种终端的口袋妖怪主题工具。支持 iTerm2、ConEmu、Terminology、Windows 的终端,已经收集了 719 个小精灵 + +

+ +25、[mypy](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/python/mypy):Python 静态类型检查库。既然 Python 是一门动态类型语言,为啥还要检查类型呢?有了静态类型检测则无需运行代码,就可以发现程序中潜在的错误。还可以加入到 `git hook` 中,实现在提交代码前自动检查。详情查看[这篇文章](https://mp.weixin.qq.com/s/K4RGr5NqMFAUKtB0KFPV5g) + +26、[CPython-Internals](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/zpoint/CPython-Internals):图文并茂的 Python 源码阅读笔记项目。阅读的是比较新的 CPython 3.8 版本,重点是项目一直在更新维护 +```c++ +static void take_gil(PyThreadState *tstate) +{ + /* 忽略 */ + while (_Py_atomic_load_relaxed(&_PyRuntime.ceval.gil.locked)) { + /* 只要 gil 是锁住的状态, 进入这个循环 */ + int timed_out = 0; + unsigned long saved_switchnum; + + saved_switchnum = _PyRuntime.ceval.gil.switch_number; + /* 释放 gil.mutex, 并在以下两种条件下唤醒 + 1. 等待 INTERVAL 微秒(默认 5000) + 2. 还没有等待到 5000 微秒但是收到了 gil.cond 的信号 + */ + COND_TIMED_WAIT(_PyRuntime.ceval.gil.cond, _PyRuntime.ceval.gil.mutex, + INTERVAL, timed_out); + /* 当前持有 gil.mutex 这把互斥锁 */ + if (timed_out && + _Py_atomic_load_relaxed(&_PyRuntime.ceval.gil.locked) && + _PyRuntime.ceval.gil.switch_number == saved_switchnum) { + /* 如果超过了等待时间, 并且这段等待时间里 gil 的持有者没有变更过, 则尝试让当前持有 gil 的线程进行释放gil + 把 gil_drop_request 值设为 1, 持有锁的线程看到这个值的时候, 会尝试放弃 gil */ + SET_GIL_DROP_REQUEST(); + } + /* 继续回到 while 循环, 检查 gil 是否为锁住状态 */ + } + /* 忽略 */ +} +``` + +

🔙 返回目录 🔙


+ +### Rust 项目 +27、[nushell](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/nushell/nushell):一种更加人性化的新型 shell + +

+ +

🔙 返回目录 🔙


+ +### Swift 项目 +28、[Clipy](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/Clipy/Clipy):macOS 的剪贴板扩展应用。支持展示剪贴板历史记录、内容模版等功能 + +

+ +

🔙 返回目录 🔙


+ +### 其它 +29、[QWidgetDemo](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/feiyangqingyun/QWidgetDemo):Qt 编写的示例集合。每个示例都可独立运行、代码简洁易懂,适合初学者学习 + +

+ +30、[xemu](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/mborgerson/xemu):免费开源的 Xbox 模拟器,支持 Windows、Linux、macOS 系统 + +

+ +31、[yabai](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/koekeishiya/yabai):适用于 macOS 的平铺式窗口管理器。该工具可以轻松实现窗口平铺不重叠,不用鼠标仅通过键盘移动、调整、切换、全屏、自动布局等管理窗口的操作 +- `Control+Option+A/D`:激活 平铺/浮动 模式 +- `Option+h/j/k/l`:使 左/下/上/右 侧窗口成为活动窗口 +- `Shift+Option+h/j/k/l`:向 左/下/上/右 移动当前活动窗口 +- `Command+Option+n`:创建新桌面,并将当前活动窗口移动至新桌面 + +

+ +32、[awesome-for-beginners](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/MunGell/awesome-for-beginners):对初学者友好的开源项目集合。如果你想参与到开源项目的建设,可以在这个集合中寻找项目,祝你早日完成第一个贡献(PR) + +33、[lifeRestart](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/VickScarlet/lifeRestart):在线文字游戏《人生重开模拟器》。纯文字游戏只需开局选天赋分配初始属性,后面就是看岁月如白驹过隙,转眼就过完了这一生,不满意的话可以轻松重开新的人生。游戏凭借诙谐幽默的文案和出乎意料的结尾,广受好评。[在线试玩](https://liferestart.syaro.io/view/) + +

+ +34、[chinese-dos-games](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/rwv/chinese-dos-games):中文 DOS 游戏集合。[在线试玩](https://dos.zczc.cz/) + +

+ +

🔙 返回目录 🔙


+ +### 开源书籍 +35、[introduction-to-front-end-engineering](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/woai3c/introduction-to-front-end-engineering):一本小书《带你入门前端工程》。该书是作者对过去两年前端工程化实践的经验和心得总结,[在线阅读](https://woai3c.github.io/introduction-to-front-end-engineering/) + +36、[pumpkin-book](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/datawhalechina/pumpkin-book):《机器学习公式详解》西瓜书公式推导解析。[在线阅读](https://datawhalechina.github.io/pumpkin-book/) + +

+ +

🔙 返回目录 🔙


+ +### 机器学习 +37、[invoice](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/guanshuicheng/invoice):增值税发票 OCR 识别项目。包含训练好的模型和微服务,启动后可直接通过接口调用 + +

+ +38、[GameAISDK](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/Tencent/GameAISDK):基于图像识别的 AI 自动化框架,支持吃鸡类、射击类、MOBA 类等游戏类型。内置多种图像识别算法和 AI 算法,不用抠图完全基于图像识别的 AI 训练和框架 + +

+ +39、[genshin_auto_fish](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/7eu7d7/genshin_auto_fish):基于深度学习的原神手游自动钓鱼工具。其中用 YOLOX 搞定鱼的定位和类型的识别以及鱼竿落点的定位,用 DQN 搞定自适应控制钓鱼过程的点击,让力度落在最佳区域内 + +

🔙 返回目录 🔙


+ + + +

+ 『上一期』 | 反馈和建议 | 『下一期』 +

+ +--- +

+ 👉 云主机 4 元/月推荐项目 👈
+ 微信中搜:HelloGitHub 关注公众号
+ 不仅能第一时间收到推送,还有各种回馈粉丝活动
+ 如果文中的图刷不出来,可以点击 这里 获取更好的阅读体验。 +

+ +## 声明 +知识共享许可协议
本作品采用 署名-非商业性使用-禁止演绎 4.0 国际 进行许可。 diff --git a/content/contributors.md b/content/contributors.md index ab385c30..e7e1b4ba 100644 --- a/content/contributors.md +++ b/content/contributors.md @@ -40,4 +40,4 @@ ## 贡献者列表 快来加入我们吧,希望尽快写满一整页!**目前共计 367 位贡献者** -[hellowHuaairen](https://github.com/hellowHuaairen)、[ming995](https://github.com/ming995)、[FrontMage](https://github.com/FrontMage)、[xibinyue](https://github.com/xibinyue)、[Eurus-Holmes](https://github.com/Eurus-Holmes)、[daixiang0](https://github.com/daixiang0)、[nivance](https://github.com/nivance)、[QA_imp](https://www.cnblogs.com/bu1tcat/)、[CoderKo1o](https://github.com/iphone5solo)、[xyyVee](https://github.com/xyyVee)、[zhbzz2007](https://github.com/zhbzz2007)、[ethan-funny](https://github.com/ethan-funny)、[PeoLeser](https://github.com/PeoLeser)、[jp1017](https://github.com/jp1017)、[arronf2e](https://github.com/arronf2e)、[iphone5solo](https://github.com/iphone5solo)、[jkpang](https://github.com/jkpang)、[BruceDone](https://github.com/BruceDone)、[answershuto](https://github.com/answershuto)、[kelekexiao123](https://github.com/kelekexiao123)、[wsdjeg](https://github.com/wsdjeg)、[NoneGG](https://github.com/NoneGG)、[zdhxiong](https://github.com/zdhxiong)、[zhuyingda](https://github.com/zhuyingda)、[xnum](https://github.com/xnum)、[JessYanCoding](https://github.com/JessYanCoding)、[zmrenwu](https://github.com/zmrenwu)、[eatage](https://github.com/eatage)、[tamlok](https://github.com/tamlok)、[pipiliang](https://github.com/pipiliang)、[DIYgod](https://github.com/DIYgod)、[Wlitsoft](https://github.com/Wlitsoft)、[gyh1621](https://github.com/gyh1621)、[crossoverJie](https://github.com/crossoverJie)、[Denon](https://github.com/Denon)、[chinesedfan](https://github.com/chinesedfan)、[joeyguo](https://github.com/joeyguo)、[LRH1993](https://github.com/LRH1993)、[hsluoyz](https://github.com/hsluoyz)、[jhao104](https://github.com/jhao104)、[ResolveWang](https://github.com/ResolveWang)、[asheigithub](https://github.com/asheigithub)、[maning0303](https://github.com/maning0303)、[torchcode](https://github.com/torchcode)、[yan-xz](https://github.com/yan-xz)、[TerryZ](https://github.com/TerryZ)、[trazyn](https://github.com/trazyn)、[hujiulong](https://github.com/hujiulong)、[xcyf008](https://github.com/xcyf008)、[eastseven](https://github.com/eastseven)、[BillWang139967](https://github.com/BillWang139967)、[gee1k(2)](https://github.com/gee1k)、[answershuto](https://github.com/answershuto)、[linguowei](https://github.com/linguowei)、[Rictusempra](https://github.com/Rictusempra)、[Juliiii](https://github.com/Juliiii)、[Kerr1Gan](https://github.com/Kerr1Gan)、[haifenghuang(2)](https://github.com/haifenghuang)、[lilijialiang](https://github.com/lilijialiang)、[Prodesire](https://github.com/Prodesire)、[viclm](https://github.com/viclm)、[wynter-wang](https://github.com/wynter-wang)、[dianbaer](https://github.com/dianbaer)、[biezhi](https://github.com/biezhi)、[itgoyo(5)](https://github.com/itgoyo)、[yhaolpz](https://github.com/yhaolpz)、[smarthadron](https://github.com/smarthadron)、[mapletower](https://github.com/mapletower)、[nicholaslee119](https://github.com/nicholaslee119)、[RitterHou](https://github.com/RitterHou)、[PuShaoWei](https://github.com/PuShaoWei)、[luckybilly(3)](https://github.com/luckybilly)、[doyoyob](https://github.com/doyoyob)、[Qiu800820](https://github.com/Qiu800820)、[zeed-w-beez](https://github.com/zeed-w-beez)、[aOrz](https://github.com/aOrz)、[lt94](https://github.com/lt94)、[Chyroc](https://github.com/Chyroc)、[Lision](https://github.com/Lision)、[fhxsnabi](https://github.com/fhxsnabi)、[CuberL](https://github.com/CuberL)、[tangweikun](https://github.com/tangweikun)、[FrontMage](https://github.com/FrontMage)、[iamjohnnyzhuang](https://github.com/iamjohnnyzhuang)、[aosen](https://github.com/aosen)、[clayclayclay](https://github.com/clayclayclay)、[zazzaz](https://github.com/zazzaz)、[BolexLiu](https://github.com/BolexLiu)、[DotzuX](https://github.com/DotzuX)、[junxiaosong](https://github.com/junxiaosong)、[M-Adoo](https://github.com/M-Adoo)、[zhihaozhang](https://github.com/zhihaozhang)、[starlying](https://github.com/starlying)、[Alinshans](https://github.com/Alinshans)、[HJ-Money](https://github.com/HJ-Money)、[topcss](https://github.com/topcss)、[twhuang-uiuc](https://github.com/twhuang-uiuc)、[maychair](https://github.com/maychair)、[mumuy](https://github.com/mumuy)、[sufuf3](https://github.com/sufuf3)、[succlz123](https://github.com/succlz123)、[sunloj](https://github.com/sunloj)、[HuanHaiLiuXin](https://github.com/HuanHaiLiuXin)、[lijinke666](https://github.com/lijinke666)、[chrislinan](https://github.com/chrislinan)、[ThinkpadNC5](https://github.com/ThinkpadNC5)、[appleboy](https://github.com/appleboy)、[objcoding](https://github.com/objcoding)、[songtianyi](https://github.com/songtianyi)、[simplepeng](https://github.com/simplepeng)、[xia-tong](https://github.com/xia-tong)、[wonderfulsuccess](https://github.com/wonderfulsuccess)、[Qsnh](https://github.com/Qsnh)、[Larry850806](https://github.com/Larry850806)、[NamelessAshone(3)](https://github.com/NamelessAshone)、[pench3r](https://github.com/pench3r)、[hon-key](https://github.com/hon-key)、[huangyz0918](https://github.com/huangyz0918)、[pujiaxin33](https://github.com/pujiaxin33)、[cnwangjie](https://github.com/cnwangjie)、[dada0z](https://github.com/dada0z)、[adrianzhang](https://github.com/adrianzhang)、[Sugar250](https://github.com/Sugar250)、[itisyang(2)](https://github.com/itisyang)、[imageslr](https://github.com/imageslr)、[kaixinbaba(7)](https://github.com/kaixinbaba)、[looly](https://github.com/looly)、[wojs5](https://github.com/wojs5)、[xianhu](https://github.com/xianhu)、[hhxsv5](https://github.com/hhxsv5)、[LanjianNUll](https://github.com/LanjianNUll)、[bestvist](https://github.com/bestvist)、[dntzhang](https://github.com/dntzhang)、[KunMinX(2)](https://github.com/KunMinX)、[afkT](https://github.com/afkT)、[syt123450](https://github.com/syt123450)、[Seaear](https://github.com/Seaear)、[huangjianke](https://github.com/huangjianke)、[howie6879](https://github.com/howie6879)、[teeyog](https://github.com/teeyog)、[zyupo](https://github.com/zyupo)、[my8100](https://github.com/my8100)、[daniel-dx](https://github.com/daniel-dx)、[googege](https://github.com/googege)、[LucienShui](https://github.com/LucienShui)、[mds1455975151](https://github.com/mds1455975151)、[zzugbb](https://github.com/zzugbb)、[qianguyihao](https://github.com/qianguyihao)、[dantangfan](https://github.com/dantangfan)、[wenzhixin](https://github.com/wenzhixin)、[tangdou1(3)](https://github.com/tangdou1)、[inhere](https://github.com/inhere)、[kulics](https://github.com/kulics)、[nosarthur](https://github.com/nosarthur)、[byronz](https://github.com/byronz)、[jdneo](https://github.com/jdneo)、[zhaoolee(2)](https://github.com/zhaoolee)、[hzwer](https://github.com/hzwer)、[xunki](https://github.com/xunki)、[azl397985856(2)](https://github.com/azl397985856)、[96486d9b](https://github.com/96486d9b)、[5A59(2)](https://github.com/5A59)、[prprprus](https://github.com/prprprus)、[EddieIvan01](https://github.com/EddieIvan01)、[ddzy(2)](https://github.com/ddzy)、[mylxsw(2)](https://github.com/mylxsw)、[liyuexing](https://github.com/liyuexing)、[auxten](https://github.com/auxten)、[xmyl](https://github.com/xmyl)、[mintsweet](https://github.com/mintsweet)、[colinlet](https://github.com/colinlet)、[yubozhao](https://github.com/yubozhao)、[vicanso](https://github.com/vicanso)、[AICareless](https://github.com/AICareless)、[LYXmoonstars](https://github.com/LYXmoonstars)、[RobiNexy(3)](https://github.com/RobiNexy)、[buppter(2)](https://github.com/buppter)、[Macr0phag3](https://github.com/Macr0phag3)、[haizhilin2013](https://github.com/haizhilin2013)、[xiaoxiaopingzi](https://github.com/xiaoxiaopingzi)、[WarpPrism](https://github.com/WarpPrism)、[dkzwm](https://github.com/dkzwm)、[wonderbeyond](https://github.com/wonderbeyond)、[Gltina](https://github.com/Gltina)、[2881099(3)](https://github.com/2881099)、[bsharkl(2)](https://github.com/bsharkl)、[xiaochunjimmy](https://github.com/xiaochunjimmy)、[TrustTheBoy](https://github.com/TrustTheBoy)、[layumi](https://github.com/layumi)、[deathearth](https://github.com/deathearth)、[holylovelqq](https://github.com/holylovelqq)、[yhlben](https://github.com/yhlben)、[tony0705](https://github.com/tony0705)、[ZhimingYan](https://github.com/ZhimingYan)、[leaicc(2)](https://github.com/leaicc)、[sugar1569](https://github.com/sugar1569)、[surunzi](https://github.com/surunzi)、[shabake](https://github.com/shabake)、[codexu](https://github.com/codexu)、[CasualJi](https://github.com/CasualJi)、[franklingu](https://github.com/franklingu)、[JacksonWuxs](https://github.com/JacksonWuxs)、[GMWorkStudio](https://github.com/GMWorkStudio)、[timqian](https://github.com/timqian)、[Mckinsey666(2)](https://github.com/Mckinsey666)、[JohnnyTing(3)](https://github.com/JohnnyTing)、[jtyoui](https://github.com/jtyoui)、[xuexiangjys(2)](https://github.com/xuexiangjys)、[guanpengchn](https://github.com/guanpengchn)、[wei(2)](https://github.com/wei)、[QingZ11(2)](https://github.com/QingZ11)、[Yanwenjiepy(3)](https://github.com/Yanwenjiepy)、[Windsooon](https://github.com/Windsooon)、[lsqy](https://github.com/lsqy)、[Q-Angelo](https://github.com/Q-Angelo)、[MZCretin](https://github.com/MZCretin)、[heibaiying](https://github.com/heibaiying)、[caozhiyi](https://github.com/caozhiyi)、[heucoder](https://github.com/heucoder)、[yinxin630](https://github.com/yinxin630)、[westfly](https://github.com/westfly)、[yanghongfei](https://github.com/yanghongfei)、[ListenLove](https://github.com/ListenLove)、[leviding](https://github.com/leviding)、[LeeLejia](https://github.com/LeeLejia)、[LockGit](https://github.com/LockGit)、[KubeOperator(2)](https://github.com/KubeOperator)、[newbee-mall](https://github.com/newbee-mall)、[vortesnail(2)](https://github.com/vortesnail)、[int64ago](https://github.com/int64ago)、[Dom-Wang](https://github.com/Dom-Wang)、[Youthink](https://github.com/Youthink)、[luizyao](https://github.com/luizyao)、[anjoy8](https://github.com/anjoy8)、[waruqi](https://github.com/waruqi)、[xxjwxc(3)](https://github.com/xxjwxc)、[mingzaily](https://github.com/mingzaily)、[yatengLG(2)](https://github.com/yatengLG)、[GatesMa(2)](https://github.com/GatesMa)、[janryWang](https://github.com/janryWang)、[zerosoul(4)](https://github.com/zerosoul)、[sixiaodong123](https://github.com/sixiaodong123)、[ZZY2357](https://github.com/ZZY2357)、[jy03078959](https://github.com/jy03078959)、[monoplasty](https://github.com/monoplasty)、[fantasticsoul](https://github.com/fantasticsoul)、[taojy123(2)](https://github.com/taojy123)、[mayerui](https://github.com/mayerui)、[Linnzh(2)](https://github.com/Linnzh)、[star7th](https://github.com/star7th)、[NaNShaner](https://github.com/NaNShaner)、[moonming](https://github.com/moonming)、[CismonX(2)](https://github.com/CismonX)、[jindaxiang](https://github.com/jindaxiang)、[Light-City](https://github.com/Light-City)、[youngjuning](https://github.com/youngjuning)、[hustcc(2)](https://github.com/hustcc)、[Rapiz1](https://github.com/Rapiz1)、[ithewei(2)](https://github.com/ithewei)、[kateshaowanjou](https://github.com/kateshaowanjou)、[kinglyl](https://github.com/kinglyl)、[pioneerAlone](https://github.com/pioneerAlone)、[TrumanDu](https://github.com/TrumanDu)、[rootsongjc](https://github.com/rootsongjc)、[hungter007](https://github.com/hungter007)、[peacewong](https://github.com/peacewong)、[zhengxiaotian](https://github.com/zhengxiaotian)、[zmister2016](https://github.com/zmister2016)、[mr-kelly](https://github.com/mr-kelly)、[saltbo](https://github.com/saltbo)、[xaboy](https://github.com/xaboy)、[guofei9987(2)](https://github.com/guofei9987)、[Gusabary(2)](https://github.com/Gusabary)、[SelfImpr001](https://github.com/SelfImpr001)、[code6er](https://github.com/code6er)、[HandyControl](https://github.com/HandyOrg/HandyControl)、[hey-hoho](https://github.com/hey-hoho)、[xmuli](https://github.com/xmuli)、[cckuailong(2)](https://github.com/cckuailong)、[lanking520](https://github.com/lanking520)、[oct16](https://github.com/oct16)、[anye931123](https://github.com/anye931123)、[YeDaxia](https://github.com/YeDaxia)、[RainMark](https://github.com/RainMark)、[KFCFans](https://github.com/KFCFans)、[kingyuluk](https://github.com/kingyuluk)、[Summer-andy](https://github.com/Summer-andy)、[qiaojialin](https://github.com/qiaojialin)、[africa1207](https://github.com/africa1207)、[dingpengyu](https://github.com/dingpengyu)、[caofanCPU](https://github.com/caofanCPU)、[YuLeiFuYun](https://github.com/YuLeiFuYun)、[giscafer](https://github.com/giscafer)、[meetbill](https://github.com/meetbill)、[halfrost(2)](https://github.com/halfrost)、[Xunzhuo](https://github.com/Xunzhuo)、[pwwang](https://github.com/pwwang)、[genaller](https://github.com/genaller)、[tangkai-prc](https://github.com/tangkai-prc)、[AppleMonkey2019](https://github.com/AppleMonkey2019)、[longitachi](https://github.com/longitachi)、[parzulpan](https://github.com/parzulpan)、[archibate](https://github.com/archibate)、[loperSeven](https://github.com/loperSeven)、[srcrs](https://github.com/srcrs)、[lanyulei](https://github.com/lanyulei)、[toolgood](https://github.com/toolgood)、[justinzm](https://github.com/justinzm)、[yihong0618](https://github.com/yihong0618)、[aaronxiongli](https://github.com/aaronxiongli)、[Wscats](https://github.com/Wscats)、[elfgzp](https://github.com/elfgzp)、[201206030](https://github.com/201206030)、[buuing](https://github.com/buuing)、[lxyok(3)](https://github.com/lxyok)、[holmes1412](https://github.com/holmes1412)、[kevwan](https://github.com/kevwan)、[SuperMonster003](https://github.com/SuperMonster003)、[sz-p(3)](https://github.com/sz-p)、[tyl569](https://github.com/tyl569)、[ADD-SP(2)](https://github.com/ADD-SP)、[MrXujiang](https://github.com/MrXujiang)、[liumenghua(8)](https://github.com/liumenghua)、[Charmve](https://github.com/Charmve)、[vran-dev](https://github.com/vran-dev)、[dengjiawen8955](https://github.com/dengjiawen8955)、[binggg](https://github.com/binggg)、[madawei2699](https://github.com/madawei2699)、[NewByVector](https://github.com/NewByVector)、[xuzirui20080129](https://github.com/xuzirui20080129)、[chenyueban](https://github.com/chenyueban)、[DuanJiaNing](https://github.com/DuanJiaNing)、[Nick930826](https://github.com/Nick930826)、[sandaawa](https://github.com/sandaawa)、[linwaiwai](https://github.com/linwaiwai)、[click33](https://github.com/click33)、[thyrlian](https://github.com/thyrlian)、[cool-team-official](https://github.com/cool-team-official)、[akai](https://github.com/akai)、[zhaojh329](https://github.com/zhaojh329)、[jwcpp](https://github.com/jwcpp)、[wizjin](https://github.com/wizjin)、[tianwailaike61](https://github.com/tianwailaike61)、[Lojii](https://github.com/Lojii)、[git-hulk](https://github.com/git-hulk)、[kwokronny](https://github.com/kwokronny)、[phith0n](https://github.com/phith0n)、[roseduan](https://github.com/roseduan)、[HDT3213](https://github.com/HDT3213)、[Ayerss](https://github.com/Ayerss)、[fenixsoft](https://github.com/fenixsoft)、[bigfengyu](https://github.com/bigfengyu)、[Chasing66](https://github.com/Chasing66)、[czs108](https://github.com/czs108)、[mefengl](https://github.com/mefengl)、[mao-shonen](https://github.com/mao-shonen)、[Uahh](https://github.com/Uahh)、[tomatopunk](https://github.com/tomatopunk)、[yedf2](https://github.com/yedf2)、[muwoo](https://github.com/muwoo)、[maninhill](https://github.com/maninhill)、[xyz347](https://github.com/xyz347)、[Nayuta403](https://github.com/Nayuta403)、[Saul-Mirone](https://github.com/Saul-Mirone)、[Leooeloel](https://github.com/Leooeloel)、[dyer-li](https://github.com/dyer-li)、[kirinzer](https://github.com/kirinzer) \ No newline at end of file +[hellowHuaairen](https://github.com/hellowHuaairen)、[ming995](https://github.com/ming995)、[FrontMage](https://github.com/FrontMage)、[xibinyue](https://github.com/xibinyue)、[Eurus-Holmes](https://github.com/Eurus-Holmes)、[daixiang0](https://github.com/daixiang0)、[nivance](https://github.com/nivance)、[QA_imp](https://www.cnblogs.com/bu1tcat/)、[CoderKo1o](https://github.com/iphone5solo)、[xyyVee](https://github.com/xyyVee)、[zhbzz2007](https://github.com/zhbzz2007)、[ethan-funny](https://github.com/ethan-funny)、[PeoLeser](https://github.com/PeoLeser)、[jp1017](https://github.com/jp1017)、[arronf2e](https://github.com/arronf2e)、[iphone5solo](https://github.com/iphone5solo)、[jkpang](https://github.com/jkpang)、[BruceDone](https://github.com/BruceDone)、[answershuto](https://github.com/answershuto)、[kelekexiao123](https://github.com/kelekexiao123)、[wsdjeg](https://github.com/wsdjeg)、[NoneGG](https://github.com/NoneGG)、[zdhxiong](https://github.com/zdhxiong)、[zhuyingda](https://github.com/zhuyingda)、[xnum](https://github.com/xnum)、[JessYanCoding](https://github.com/JessYanCoding)、[zmrenwu](https://github.com/zmrenwu)、[eatage](https://github.com/eatage)、[tamlok](https://github.com/tamlok)、[pipiliang](https://github.com/pipiliang)、[DIYgod](https://github.com/DIYgod)、[Wlitsoft](https://github.com/Wlitsoft)、[gyh1621](https://github.com/gyh1621)、[crossoverJie](https://github.com/crossoverJie)、[Denon](https://github.com/Denon)、[chinesedfan](https://github.com/chinesedfan)、[joeyguo](https://github.com/joeyguo)、[LRH1993](https://github.com/LRH1993)、[hsluoyz](https://github.com/hsluoyz)、[jhao104](https://github.com/jhao104)、[ResolveWang](https://github.com/ResolveWang)、[asheigithub](https://github.com/asheigithub)、[maning0303](https://github.com/maning0303)、[torchcode](https://github.com/torchcode)、[yan-xz](https://github.com/yan-xz)、[TerryZ](https://github.com/TerryZ)、[trazyn](https://github.com/trazyn)、[hujiulong](https://github.com/hujiulong)、[xcyf008](https://github.com/xcyf008)、[eastseven](https://github.com/eastseven)、[BillWang139967](https://github.com/BillWang139967)、[gee1k(2)](https://github.com/gee1k)、[answershuto](https://github.com/answershuto)、[linguowei](https://github.com/linguowei)、[Rictusempra](https://github.com/Rictusempra)、[Juliiii](https://github.com/Juliiii)、[Kerr1Gan](https://github.com/Kerr1Gan)、[haifenghuang(2)](https://github.com/haifenghuang)、[lilijialiang](https://github.com/lilijialiang)、[Prodesire](https://github.com/Prodesire)、[viclm](https://github.com/viclm)、[wynter-wang](https://github.com/wynter-wang)、[dianbaer](https://github.com/dianbaer)、[biezhi](https://github.com/biezhi)、[itgoyo(5)](https://github.com/itgoyo)、[yhaolpz](https://github.com/yhaolpz)、[smarthadron](https://github.com/smarthadron)、[mapletower](https://github.com/mapletower)、[nicholaslee119](https://github.com/nicholaslee119)、[RitterHou](https://github.com/RitterHou)、[PuShaoWei](https://github.com/PuShaoWei)、[luckybilly(3)](https://github.com/luckybilly)、[doyoyob](https://github.com/doyoyob)、[Qiu800820](https://github.com/Qiu800820)、[zeed-w-beez](https://github.com/zeed-w-beez)、[aOrz](https://github.com/aOrz)、[lt94](https://github.com/lt94)、[Chyroc](https://github.com/Chyroc)、[Lision](https://github.com/Lision)、[fhxsnabi](https://github.com/fhxsnabi)、[CuberL](https://github.com/CuberL)、[tangweikun](https://github.com/tangweikun)、[FrontMage](https://github.com/FrontMage)、[iamjohnnyzhuang](https://github.com/iamjohnnyzhuang)、[aosen](https://github.com/aosen)、[clayclayclay](https://github.com/clayclayclay)、[zazzaz](https://github.com/zazzaz)、[BolexLiu](https://github.com/BolexLiu)、[DotzuX](https://github.com/DotzuX)、[junxiaosong](https://github.com/junxiaosong)、[M-Adoo](https://github.com/M-Adoo)、[zhihaozhang](https://github.com/zhihaozhang)、[starlying](https://github.com/starlying)、[Alinshans](https://github.com/Alinshans)、[HJ-Money](https://github.com/HJ-Money)、[topcss](https://github.com/topcss)、[twhuang-uiuc](https://github.com/twhuang-uiuc)、[maychair](https://github.com/maychair)、[mumuy](https://github.com/mumuy)、[sufuf3](https://github.com/sufuf3)、[succlz123](https://github.com/succlz123)、[sunloj](https://github.com/sunloj)、[HuanHaiLiuXin](https://github.com/HuanHaiLiuXin)、[lijinke666](https://github.com/lijinke666)、[chrislinan](https://github.com/chrislinan)、[ThinkpadNC5](https://github.com/ThinkpadNC5)、[appleboy](https://github.com/appleboy)、[objcoding](https://github.com/objcoding)、[songtianyi](https://github.com/songtianyi)、[simplepeng](https://github.com/simplepeng)、[xia-tong](https://github.com/xia-tong)、[wonderfulsuccess](https://github.com/wonderfulsuccess)、[Qsnh](https://github.com/Qsnh)、[Larry850806](https://github.com/Larry850806)、[NamelessAshone(3)](https://github.com/NamelessAshone)、[pench3r](https://github.com/pench3r)、[hon-key](https://github.com/hon-key)、[huangyz0918](https://github.com/huangyz0918)、[pujiaxin33](https://github.com/pujiaxin33)、[cnwangjie](https://github.com/cnwangjie)、[dada0z](https://github.com/dada0z)、[adrianzhang](https://github.com/adrianzhang)、[Sugar250](https://github.com/Sugar250)、[itisyang(2)](https://github.com/itisyang)、[imageslr](https://github.com/imageslr)、[kaixinbaba(7)](https://github.com/kaixinbaba)、[looly](https://github.com/looly)、[wojs5](https://github.com/wojs5)、[xianhu](https://github.com/xianhu)、[hhxsv5](https://github.com/hhxsv5)、[LanjianNUll](https://github.com/LanjianNUll)、[bestvist](https://github.com/bestvist)、[dntzhang](https://github.com/dntzhang)、[KunMinX(2)](https://github.com/KunMinX)、[afkT](https://github.com/afkT)、[syt123450](https://github.com/syt123450)、[Seaear](https://github.com/Seaear)、[huangjianke](https://github.com/huangjianke)、[howie6879](https://github.com/howie6879)、[teeyog](https://github.com/teeyog)、[zyupo](https://github.com/zyupo)、[my8100](https://github.com/my8100)、[daniel-dx](https://github.com/daniel-dx)、[googege](https://github.com/googege)、[LucienShui](https://github.com/LucienShui)、[mds1455975151](https://github.com/mds1455975151)、[zzugbb](https://github.com/zzugbb)、[qianguyihao](https://github.com/qianguyihao)、[dantangfan](https://github.com/dantangfan)、[wenzhixin](https://github.com/wenzhixin)、[tangdou1(3)](https://github.com/tangdou1)、[inhere](https://github.com/inhere)、[kulics](https://github.com/kulics)、[nosarthur](https://github.com/nosarthur)、[byronz](https://github.com/byronz)、[jdneo](https://github.com/jdneo)、[zhaoolee(2)](https://github.com/zhaoolee)、[hzwer](https://github.com/hzwer)、[xunki](https://github.com/xunki)、[azl397985856(2)](https://github.com/azl397985856)、[96486d9b](https://github.com/96486d9b)、[5A59(2)](https://github.com/5A59)、[prprprus](https://github.com/prprprus)、[EddieIvan01](https://github.com/EddieIvan01)、[ddzy(2)](https://github.com/ddzy)、[mylxsw(2)](https://github.com/mylxsw)、[liyuexing](https://github.com/liyuexing)、[auxten](https://github.com/auxten)、[xmyl](https://github.com/xmyl)、[mintsweet](https://github.com/mintsweet)、[colinlet](https://github.com/colinlet)、[yubozhao](https://github.com/yubozhao)、[vicanso](https://github.com/vicanso)、[AICareless](https://github.com/AICareless)、[LYXmoonstars](https://github.com/LYXmoonstars)、[RobiNexy(3)](https://github.com/RobiNexy)、[buppter(2)](https://github.com/buppter)、[Macr0phag3](https://github.com/Macr0phag3)、[haizhilin2013](https://github.com/haizhilin2013)、[xiaoxiaopingzi](https://github.com/xiaoxiaopingzi)、[WarpPrism](https://github.com/WarpPrism)、[dkzwm](https://github.com/dkzwm)、[wonderbeyond](https://github.com/wonderbeyond)、[Gltina](https://github.com/Gltina)、[2881099(3)](https://github.com/2881099)、[bsharkl(2)](https://github.com/bsharkl)、[xiaochunjimmy](https://github.com/xiaochunjimmy)、[TrustTheBoy](https://github.com/TrustTheBoy)、[layumi](https://github.com/layumi)、[deathearth](https://github.com/deathearth)、[holylovelqq](https://github.com/holylovelqq)、[yhlben](https://github.com/yhlben)、[tony0705](https://github.com/tony0705)、[ZhimingYan](https://github.com/ZhimingYan)、[leaicc(2)](https://github.com/leaicc)、[sugar1569](https://github.com/sugar1569)、[surunzi](https://github.com/surunzi)、[shabake](https://github.com/shabake)、[codexu](https://github.com/codexu)、[CasualJi](https://github.com/CasualJi)、[franklingu](https://github.com/franklingu)、[JacksonWuxs](https://github.com/JacksonWuxs)、[GMWorkStudio](https://github.com/GMWorkStudio)、[timqian](https://github.com/timqian)、[Mckinsey666(2)](https://github.com/Mckinsey666)、[JohnnyTing(3)](https://github.com/JohnnyTing)、[jtyoui](https://github.com/jtyoui)、[xuexiangjys(2)](https://github.com/xuexiangjys)、[guanpengchn](https://github.com/guanpengchn)、[wei(2)](https://github.com/wei)、[QingZ11(2)](https://github.com/QingZ11)、[Yanwenjiepy(3)](https://github.com/Yanwenjiepy)、[Windsooon](https://github.com/Windsooon)、[lsqy](https://github.com/lsqy)、[Q-Angelo](https://github.com/Q-Angelo)、[MZCretin](https://github.com/MZCretin)、[heibaiying](https://github.com/heibaiying)、[caozhiyi](https://github.com/caozhiyi)、[heucoder](https://github.com/heucoder)、[yinxin630](https://github.com/yinxin630)、[westfly](https://github.com/westfly)、[yanghongfei](https://github.com/yanghongfei)、[ListenLove](https://github.com/ListenLove)、[leviding](https://github.com/leviding)、[LeeLejia](https://github.com/LeeLejia)、[LockGit](https://github.com/LockGit)、[KubeOperator(2)](https://github.com/KubeOperator)、[newbee-mall](https://github.com/newbee-mall)、[vortesnail(2)](https://github.com/vortesnail)、[int64ago](https://github.com/int64ago)、[Dom-Wang](https://github.com/Dom-Wang)、[Youthink](https://github.com/Youthink)、[luizyao](https://github.com/luizyao)、[anjoy8](https://github.com/anjoy8)、[waruqi](https://github.com/waruqi)、[xxjwxc(3)](https://github.com/xxjwxc)、[mingzaily](https://github.com/mingzaily)、[yatengLG(2)](https://github.com/yatengLG)、[GatesMa(2)](https://github.com/GatesMa)、[janryWang](https://github.com/janryWang)、[zerosoul(4)](https://github.com/zerosoul)、[sixiaodong123](https://github.com/sixiaodong123)、[ZZY2357](https://github.com/ZZY2357)、[jy03078959](https://github.com/jy03078959)、[monoplasty](https://github.com/monoplasty)、[fantasticsoul](https://github.com/fantasticsoul)、[taojy123(2)](https://github.com/taojy123)、[mayerui](https://github.com/mayerui)、[Linnzh(2)](https://github.com/Linnzh)、[star7th](https://github.com/star7th)、[NaNShaner](https://github.com/NaNShaner)、[moonming](https://github.com/moonming)、[CismonX(2)](https://github.com/CismonX)、[jindaxiang](https://github.com/jindaxiang)、[Light-City](https://github.com/Light-City)、[youngjuning](https://github.com/youngjuning)、[hustcc(2)](https://github.com/hustcc)、[Rapiz1](https://github.com/Rapiz1)、[ithewei(2)](https://github.com/ithewei)、[kateshaowanjou](https://github.com/kateshaowanjou)、[kinglyl](https://github.com/kinglyl)、[pioneerAlone](https://github.com/pioneerAlone)、[TrumanDu](https://github.com/TrumanDu)、[rootsongjc](https://github.com/rootsongjc)、[hungter007](https://github.com/hungter007)、[peacewong](https://github.com/peacewong)、[zhengxiaotian](https://github.com/zhengxiaotian)、[zmister2016](https://github.com/zmister2016)、[mr-kelly](https://github.com/mr-kelly)、[saltbo](https://github.com/saltbo)、[xaboy](https://github.com/xaboy)、[guofei9987(2)](https://github.com/guofei9987)、[Gusabary(2)](https://github.com/Gusabary)、[SelfImpr001](https://github.com/SelfImpr001)、[code6er](https://github.com/code6er)、[HandyControl](https://github.com/HandyOrg/HandyControl)、[hey-hoho](https://github.com/hey-hoho)、[xmuli](https://github.com/xmuli)、[cckuailong(2)](https://github.com/cckuailong)、[lanking520](https://github.com/lanking520)、[oct16](https://github.com/oct16)、[anye931123](https://github.com/anye931123)、[YeDaxia](https://github.com/YeDaxia)、[RainMark](https://github.com/RainMark)、[KFCFans](https://github.com/KFCFans)、[kingyuluk](https://github.com/kingyuluk)、[Summer-andy](https://github.com/Summer-andy)、[qiaojialin](https://github.com/qiaojialin)、[africa1207](https://github.com/africa1207)、[dingpengyu](https://github.com/dingpengyu)、[caofanCPU](https://github.com/caofanCPU)、[YuLeiFuYun](https://github.com/YuLeiFuYun)、[giscafer](https://github.com/giscafer)、[meetbill](https://github.com/meetbill)、[halfrost(2)](https://github.com/halfrost)、[Xunzhuo](https://github.com/Xunzhuo)、[pwwang](https://github.com/pwwang)、[genaller](https://github.com/genaller)、[tangkai-prc](https://github.com/tangkai-prc)、[AppleMonkey2019](https://github.com/AppleMonkey2019)、[longitachi](https://github.com/longitachi)、[parzulpan](https://github.com/parzulpan)、[archibate](https://github.com/archibate)、[loperSeven](https://github.com/loperSeven)、[srcrs](https://github.com/srcrs)、[lanyulei](https://github.com/lanyulei)、[toolgood](https://github.com/toolgood)、[justinzm](https://github.com/justinzm)、[yihong0618](https://github.com/yihong0618)、[aaronxiongli](https://github.com/aaronxiongli)、[Wscats](https://github.com/Wscats)、[elfgzp](https://github.com/elfgzp)、[201206030](https://github.com/201206030)、[buuing](https://github.com/buuing)、[lxyok(3)](https://github.com/lxyok)、[holmes1412](https://github.com/holmes1412)、[kevwan](https://github.com/kevwan)、[SuperMonster003](https://github.com/SuperMonster003)、[sz-p(3)](https://github.com/sz-p)、[tyl569](https://github.com/tyl569)、[ADD-SP(2)](https://github.com/ADD-SP)、[MrXujiang](https://github.com/MrXujiang)、[liumenghua(8)](https://github.com/liumenghua)、[Charmve](https://github.com/Charmve)、[vran-dev](https://github.com/vran-dev)、[dengjiawen8955](https://github.com/dengjiawen8955)、[binggg](https://github.com/binggg)、[madawei2699](https://github.com/madawei2699)、[NewByVector](https://github.com/NewByVector)、[xuzirui20080129](https://github.com/xuzirui20080129)、[chenyueban](https://github.com/chenyueban)、[DuanJiaNing](https://github.com/DuanJiaNing)、[Nick930826](https://github.com/Nick930826)、[sandaawa](https://github.com/sandaawa)、[linwaiwai](https://github.com/linwaiwai)、[click33](https://github.com/click33)、[thyrlian](https://github.com/thyrlian)、[cool-team-official](https://github.com/cool-team-official)、[akai](https://github.com/akai)、[zhaojh329](https://github.com/zhaojh329)、[jwcpp](https://github.com/jwcpp)、[wizjin](https://github.com/wizjin)、[tianwailaike61](https://github.com/tianwailaike61)、[Lojii](https://github.com/Lojii)、[git-hulk](https://github.com/git-hulk)、[kwokronny](https://github.com/kwokronny)、[phith0n](https://github.com/phith0n)、[roseduan](https://github.com/roseduan)、[HDT3213](https://github.com/HDT3213)、[Ayerss](https://github.com/Ayerss)、[fenixsoft](https://github.com/fenixsoft)、[bigfengyu](https://github.com/bigfengyu)、[Chasing66](https://github.com/Chasing66)、[czs108](https://github.com/czs108)、[mefengl](https://github.com/mefengl)、[mao-shonen](https://github.com/mao-shonen)、[Uahh](https://github.com/Uahh)、[tomatopunk](https://github.com/tomatopunk)、[yedf2](https://github.com/yedf2)、[muwoo](https://github.com/muwoo)、[maninhill](https://github.com/maninhill)、[xyz347](https://github.com/xyz347)、[Nayuta403](https://github.com/Nayuta403)、[Saul-Mirone](https://github.com/Saul-Mirone)、[Leooeloel](https://github.com/Leooeloel)、[dyer-li](https://github.com/dyer-li)、[kirinzer](https://github.com/kirinzer)、[colinshin](https://github.com/colinshin)、[skiffer-git](https://github.com/skiffer-git) \ No newline at end of file diff --git a/content/last.md b/content/last.md index 508c245c..d7fc9ffb 100644 --- a/content/last.md +++ b/content/last.md @@ -1,4 +1,4 @@ -# 《HelloGitHub》第 65 期 +# 《HelloGitHub》第 66 期 > 兴趣是最好的老师,**HelloGitHub** 让你对编程感兴趣!

@@ -6,7 +6,7 @@ ## 目录 -**Tips**:如果文中的图刷不出来,可以点击 [这里](https://hellogithub.com/periodical/volume/65/) 获取更好的阅读体验。 +**Tips**:如果文中的图刷不出来,可以点击 [这里](https://hellogithub.com/periodical/volume/66/) 获取更好的阅读体验。 - [C 项目](#C-项目) - [C# 项目](#C-项目-1) @@ -15,7 +15,8 @@ - [Go 项目](#Go-项目) - [Java 项目](#Java-项目) - [JavaScript 项目](#JavaScript-项目) -- [PHP 项目](#PHP-项目) +- [Kotlin 项目](#Kotlin-项目) +- [Objective-C 项目](#Objective-C-项目) - [Python 项目](#Python-项目) - [Rust 项目](#Rust-项目) - [Swift 项目](#Swift-项目) @@ -35,300 +36,281 @@ > **以下为本期内容**|每个月 **28** 号更新 ### C 项目 -1、[cpufetch](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/Dr-Noob/cpufetch):获取 CPU 信息的命令行工具 +1、[HEX-LINK](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/JingYang1124/HEX-LINK):自制电脑游戏的体感设备。该项目包含制作时需要的硬件设计和全部源码 +``` +. +├─firmware # 软件(根据自己使用的工具选择如下一种工程即可) +│ ├─ArduinoIDE_Proj # Arduino IDE版工程 +│ │ ├─Additional_Libraries # 里面的文件夹需要复制到Arduino IDE安装目录下的libraries文件夹 +│ │ ├─Hex_Link_Leonardo # 需要下载至接收端的程序 +│ │ └─Hex_Link_Nano # 需要下载至发送端的程序 +│ ├─Bootloaders # 需要下载至芯片的arduino bootloader +│ └─Vscode_PlatformIO_Proj # VScode PlatformIO版工程 +│ ├─Hex_Link_Leonardo # 需要下载至接收端的程序 +│ └─Hex_Link_Nano # 需要下载至发送端的程序 +├─hardware # 硬件(PCB工程) +│ ├─BOM # PCB的物料清单,包含参考的购买链接(链接仅作参考,在其他任何店铺购买相同型号即可) +│ ├─Hex_Link_Rec # 接收端PCB工程 +│ ├─Hex_Link_Trans # 发送端PCB工程 +│ └─Nano_Jtag_Pin # 转接板:用来烧录Nano bootloader的Jtag口转接板 +├─model # 接收端外壳3维模型 +│ ├─Solidworks_Project # 2018版本Solidworks工程 +│ └─STL_TAP # STL文件,可直接用于3D打印.TAP文件是顶层亚克力板的CNC加工文件 +├─references # 参考文档 +└─tools # 额外的脚本工具 +``` -

+

🔙 返回目录 🔙


### C# 项目 -2、[AduSkin](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/aduskin/AduSkin):一款简约漂亮的 WPF UI 库 +2、[SteamTools](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/SteamTools-Team/SteamTools):集合多种 Steam 客户端工具的工具箱。该工具支持 Window、Linux、macOS、Android 操作系统,包括游戏库存管理、解锁成就、史低价格、出售库存物品等功能,还有丰富的插件等待你发掘 + +

+ +3、[xLua](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/Tencent/xLua):为 C#、Unity、.Net 等环境增添 Lua 脚本编程的能力,使得 Lua 代码方便地与 C# 相互调用 +```c# +XLua.LuaEnv luaenv = new XLua.LuaEnv(); +luaenv.DoString("CS.UnityEngine.Debug.Log('hello world')"); +luaenv.Dispose(); +``` + +

-

+4、[BBDown](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/nilaoda/BBDown):命令行哔哩哔哩视频下载工具 + +

🔙 返回目录 🔙


### C++ 项目 -3、[simdjson](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/simdjson/simdjson):每秒可解析千兆字节的高性能 JSON 解析库 +5、[libqalculate](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/Qalculate/libqalculate):使用 C++ 编写的多功能计算器桌面应用、库和 CLI 程序。它易于使用功能强大,支持大型可定制函数库、单位计算和转换、符号计算(包括积分和方程)。作为用户你可以直接在命令行中使用,作为开发者你也可以在自己的项目中使用这个库。官方还制作了 [Qt](https://github.com/Qalculate/qalculate-qt) 和 [GTK](https://github.com/Qalculate/qalculate-gtk) 两个版本的 GUI 计算器应用 + +

-

+6、[btop](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/aristocratos/btop):界面酷炫的命令行资源监视器。可以显示处理器、内存、磁盘、网络和进程的使用情况和统计信息,还支持鼠标操作 -4、[filament](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/google/filament):轻量级实时物理渲染引擎。能够用来做游戏渲染引擎或者音视频编辑工程,当你需要处理 3D 渲染效果,又不想引入庞大的游戏引擎时,可以考虑使用它尤其是 Android 平台 +

-

+7、[TinyWebServer](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/qinguoyi/TinyWebServer):Linux 下的 C++ 轻量级 Web 服务器。该项目不仅可以用来搭建 Web 服务,也适合 C++ 初学者作为网络编程实战项目。作者还写了文章讲解相关代码和原理,帮助初学者更好的掌握网络编程相关知识

🔙 返回目录 🔙


### CSS 项目 -5、[devices.css](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/marvelapp/devices.css):仅用 CSS 实现手机和平板设备的平面模型。机型包含 iPhone、Android、Lumia 和 iPad -```html -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-``` +8、[css_tricks](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/QiShaoXuan/css_tricks):常用 CSS 样式示例集合 -

+

🔙 返回目录 🔙


### Go 项目 -6、[lindb](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/lindb/lindb):可水平拓展、高性能的分布式时序数据库,支持海量数据存储以及快速并行查询和计算。已在饿了么内部使用,存储了全量的监控数据。每天增量写入 TB 量级,共计 PB 级的数据 +9、[video-srt-windows](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/wxbool/video-srt-windows):自动识别视频语音生成字幕文件的工具。采用 Go+walk 开发所以仅支持 Windows 系统,原理是请求在线语音转文字的服务,超出免费额度需付费。另外还加入了导出字幕文件和翻译功能 -

+

-7、[learning_tools](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/hwholiday/learning_tools):作者学习 Go 过程中实践的 Go 代码集合。包含了 Go 语言实用三方库、微服务、数据库、算法等代码片段,虽然内容丰富但缺少分类和梳理。就算这样还是要推荐给寻找 Go 进阶之路的小伙伴,因为内容真的很好 +10、[go-daily-lib](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/darjun/go-daily-lib):每天学习一个 Go 语言库。内容包含标准库和三方库,每个库对应一篇介绍和上手的文章 -

+

-8、[sharingan](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/didi/sharingan):基于 Go 的流量 录制/回放 工具。实现在不影响线上服务的前提下,线下采用线上的真实请求和参数进行测试。特别适合线上重要服务重构后的回归测试,真实流量的测试有助于提早发现问题,避免重大事故 +11、[Open-IM-Server](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/OpenIMSDK/Open-IM-Server):基于 Go 实现的轻量级即时通讯(IM)项目。具有高性能、易扩展、安装简单、私有化部署等特性,同时包含多种客户端 SDK。从服务器到客户端一体的开源即时通讯(IM)解决方案 -

+

-9、[gocron](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/ouqiang/gocron):基于 Go 语言实现的轻量级定时任务管理平台。功能: -- Web 管理界面 -- 定时任务可精确到秒 -- 任务失败可重试,超时强制停止 -- 账户权限控制 -- 等等 +12、[go-fly](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/taoshihan1991/go-fly):基于 Go 语言实现的在线客服系统,采用 Gin+MySQL+JWT+WebSocket 等技术栈实现 -

+

-10、[sealos](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/fanux/sealos):一条命令即可快速部署 Kubernetes(k8s) 集群的工具 +13、[viper](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/spf13/viper):用来搞定 Go 应用中配置的库。支持多种配置文件类型、监控并重新加载配置文件、远程读取配置系统等 +```go +viper.SetConfigName("config") // 配置文件名,不包括后缀 +viper.SetConfigType("yaml") // 配置文件的后缀 +viper.AddConfigPath("/etc/appname/") // 查找配置文件的目录 +viper.AddConfigPath("$HOME/.appname") // 支持查找多个目录 +// 异常处理 +if err := viper.ReadInConfig(); err != nil { + if _, ok := err.(viper.ConfigFileNotFoundError); ok { + // 如果没有找到配置文件 + } else { + // 找到了配置文件,但出现了其他错误 + } +} +``` -

+

🔙 返回目录 🔙


### Java 项目 -11、[Android-skin-support](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/ximsfei/Android-skin-support):方便好用的 Android 换肤框架 -```java -@Override -public void onCreate() { - super.onCreate(); - SkinCompatManager.withoutActivity(this) // 基础控件换肤初始化 - .addInflater(new SkinMaterialViewInflater()) // material design 控件换肤初始化[可选] - .addInflater(new SkinConstraintViewInflater()) // ConstraintLayout 控件换肤初始化[可选] - .addInflater(new SkinCardViewInflater()) // CardView v7 控件换肤初始化[可选] - .setSkinStatusBarColorEnable(false) // 关闭状态栏换肤,默认打开[可选] - .setSkinWindowBackgroundEnable(false) // 关闭windowBackground换肤,默认打开[可选] - .loadSkin(); -} -``` +14、[o2oa](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/o2oa/o2oa):国产的 OA 系统。功能齐全支持考勤、会议管理、云盘等,适用于企业 OA、协同办公 -

+

-12、[lettuce-core](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/lettuce-io/lettuce-core):线程安全的高级 Java Redis 客户端。基于 Netty 实现了非阻塞 I/O,支持同步、异步、集群、哨兵、管道等功能 -```java -RedisClient redisClient = RedisClient.create("redis://localhost/0"); -StatefulRedisConnection connection = redisClient.connect(); +15、[IJPay](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/Javen205/IJPay):Java 支付工具库,轻松完成支付模块开发。封装了常用的微信、QQ、支付宝、银联、PayPal 支付等支付方式的各种常用接口。不依赖任何 MVC 框架,轻松接入到 Java 项目 -System.out.println("Connected to Redis"); -connection.sync().set("key", "Hello World"); +16、[VirtualApp](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/asLody/VirtualApp):Android 系统的沙盒程序,App 虚拟化引擎。它创建了一个虚拟空间,在那里可以任意安装、启动、控制、卸载应用。虚拟空间与外部隔离相当于沙盒环境,可在安卓上实现应用多开、静默安装等黑科技 -connection.close(); -redisClient.shutdown(); -``` +

🔙 返回目录 🔙


### JavaScript 项目 -13、[didact](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/pomber/didact):教你从零写一个 React 框架。通过一系列的文章和代码,教授如何实现 React 框架,从而能够更好的理解 React 内部原理 +17、[sharedb](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/share/sharedb):基于 JSON 数据 OT 算法的实时数据库。简单来说就是实时协同数据框架,可用来实现当页面因用户操作发生数据变化时,实时把数据同步展示到其它用户页面上,其中 OT 算法就是解决此协同过程中问题的通用算法。常见的场景比如:多用户之间的状态同步、在线协作文档、离线后数据改动同步等 -

+

-14、[iDataV](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/yyhsong/iDataV):大屏数据可视化项目集合。[在线查看](https://yyhsong.github.io/iDataV/) +18、[30-Days-Of-JavaScript](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/Asabeneh/30-Days-Of-JavaScript):30 天 JavaScript 编程挑战。该教程虽然是英文教程但是图文并茂通俗易通,内容循序渐进包含练习题,适合零基础想要学习 JavaScript 的同学 -

+

-15、[milkdown](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/Saul-Mirone/milkdown):一款清爽见即所得的 Markdown 编辑器。不同于大多数 Markdown 编辑器它是插件驱动的,类似开源可自由扩展的 Typora。项目由 prosemirror+remark 构建,入门开发者从中可以学习到如何使用 prosemirror 来开发富文本编辑器,以及如何设计一个针对编辑器的插件系统 -```javascript -import { Editor } from '@milkdown/core'; -import { commonmark } from '@milkdown/preset-commonmark'; +19、[YesPlayMusic](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/qier222/YesPlayMusic):高颜值的第三方网易云播放器。它不仅拥有简洁美观的外观,还有丰富的功能 +- 支持 Windows/macOS/Linux +- 私人 FM/每日推荐歌曲 +- 网易云账号登录 +- 歌词显示 +- 自定义快捷键和全局快捷键 +- 等等 + +

-import { history } from '@milkdown/plugin-history'; +20、[javascript](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/airbnb/javascript):Airbnb 开源的 JavaScript 风格指南。[中文](https://github.com/lin-123/javascript) +```javascript +// 采用数组解构 +const arr = [1, 2, 3, 4]; -// import theme -import '@milkdown/theme-nord/lib/theme.css'; +// bad +const first = arr[0]; +const second = arr[1]; -new Editor() - .use(commonmark) - .use(history) - .create(); +// good +const [first, second] = arr; ``` -

- -16、[flat](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/netless-io/flat):前后端完全开源、功能丰富的在线教室项目。通过它可以快速完成支持多人视频、语音、白板互动、录制回放等功能的在线教室 +21、[spy-debugger](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/wuchangming/spy-debugger):远程调试手机页面和抓包的工具。操作简单仅需手机和电脑在同一个 WIFI 下,即可在实现真机调试页面 -

+

-17、[react-beautiful-dnd](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/atlassian/react-beautiful-dnd):漂亮易用的 React 列表拖拽库 +

🔙 返回目录 🔙


-

+### Kotlin 项目 +22、[Component](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/xiaojinzi123/Component):Android 的组件化框架,帮助开发者在实现项目组件化。它的强大在于功能齐全、更新及时,支持 Kotlin、AndroidX、RxJava、协程等

🔙 返回目录 🔙


-### PHP 项目 -18、[icon-workshop](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/zhanghuanchong/icon-workshop):移动应用图标生成工具。能够一键生成多种尺寸的 iOS/Android 应用图标和 APP 启动图 - -

+### Objective-C 项目 +23、[iOSInterviewQuestions](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/ChenYilong/iOSInterviewQuestions):iOS 面试题集合(附答案)

🔙 返回目录 🔙


### Python 项目 -19、[moviepy](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/Zulko/moviepy):用于处理视频的 Python 库,它支持视频剪辑、自定义效果、视频合成、格式转化、插入文字等功能。专于注视频但不局限于此,还支持处理音频和 GIF 图片。虽然现在视频剪辑的工具很丰富,但如果要批量处理视频,用 Python+moviepy 写个脚本应该可以一劳永逸,节省时间 - -

- -20、[weiboSpider](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/dataabc/weiboSpider):Python 写的微博爬虫,命令行直接启动。支持获取微博用户、内容字段丰富。虽然爬虫的实战项目很多,但能一直更新的很少,因为只要数据源变动爬虫就要跟进迭代。这个项目更新稳定回复问题及时实属不易,希望大家在享受项目带来的便利同时也可以 Star 支持一下 -``` -# 安装 -$ git clone https://github.com/dataabc/weiboSpider.git -$ cd weiboSpider -$ pip install -r requirements.txt -# 启动 -$ python3 -m weibo_spider -``` - -21、[pyinstrument](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/joerick/pyinstrument):简单易用的 Python 代码性能分析库,优化 Python 代码的工具。支持 Python 3.7+ 能够分析异步代码,仅需一条命令即可显示具体到函数的耗时,快速指出影响代码性能的地方,帮助提高代码性能让你的代码快人一步 -``` -# 命令模式 -Usage: pyinstrument [options] scriptfile [arg] ... -# 代码片段模式 -from pyinstrument import Profiler - -profiler = Profiler() -profiler.start() -# 要分析的代码 -profiler.stop() - -profiler.print() -# 还支持 flask 等 Web 框架 -``` - -

- -22、[termpair](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/cs01/termpair):浏览器远程+实时操作命令行的工具。让开发者安全实时的共享终端,特别适合服务器非桌面系统的环境。有了它下次再遇到问题,求助大佬远程协助就方便多了 -``` -# 安装 -pip install termpair -# 起服务 -termpair serve -# 生成远程控制终端的链接 -termpair share -``` - -

- -23、[ray](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/ray-project/ray):基于 Python 的分布式计算框架,采用动态图计算模型。使用起来很方便可通过装饰器的方式,仅需修改极少的的代码,让原本运行在单机的 Python 代码轻松实现分布式计算。目前多用于机器学习方面 -```python -import ray -ray.init() - -@ray.remote -def f(x): - return x * x - -futures = [f.remote(i) for i in range(4)] -print(ray.get(futures)) +24、[Pokemon-Terminal](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/LazoCoder/Pokemon-Terminal):适用于多种终端的口袋妖怪主题工具。支持 iTerm2、ConEmu、Terminology、Windows 的终端,已经收集了 719 个小精灵 + +

+ +25、[mypy](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/python/mypy):Python 静态类型检查库。既然 Python 是一门动态类型语言,为啥还要检查类型呢?有了静态类型检测则无需运行代码,就可以发现程序中潜在的错误。还可以加入到 `git hook` 中,实现在提交代码前自动检查。详情查看[这篇文章](https://mp.weixin.qq.com/s/K4RGr5NqMFAUKtB0KFPV5g) + +26、[CPython-Internals](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/zpoint/CPython-Internals):图文并茂的 Python 源码阅读笔记项目。阅读的是比较新的 CPython 3.8 版本,重点是项目一直在更新维护 +```c++ +static void take_gil(PyThreadState *tstate) +{ + /* 忽略 */ + while (_Py_atomic_load_relaxed(&_PyRuntime.ceval.gil.locked)) { + /* 只要 gil 是锁住的状态, 进入这个循环 */ + int timed_out = 0; + unsigned long saved_switchnum; + + saved_switchnum = _PyRuntime.ceval.gil.switch_number; + /* 释放 gil.mutex, 并在以下两种条件下唤醒 + 1. 等待 INTERVAL 微秒(默认 5000) + 2. 还没有等待到 5000 微秒但是收到了 gil.cond 的信号 + */ + COND_TIMED_WAIT(_PyRuntime.ceval.gil.cond, _PyRuntime.ceval.gil.mutex, + INTERVAL, timed_out); + /* 当前持有 gil.mutex 这把互斥锁 */ + if (timed_out && + _Py_atomic_load_relaxed(&_PyRuntime.ceval.gil.locked) && + _PyRuntime.ceval.gil.switch_number == saved_switchnum) { + /* 如果超过了等待时间, 并且这段等待时间里 gil 的持有者没有变更过, 则尝试让当前持有 gil 的线程进行释放gil + 把 gil_drop_request 值设为 1, 持有锁的线程看到这个值的时候, 会尝试放弃 gil */ + SET_GIL_DROP_REQUEST(); + } + /* 继续回到 while 循环, 检查 gil 是否为锁住状态 */ + } + /* 忽略 */ +} ``` -

-

🔙 返回目录 🔙


### Rust 项目 -24、[toydb](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/erikgrinaker/toydb):Rust 写的分布式 SQL 数据库实战项目。作为一个学习项目并不适合于生产环境,但通过该项目你可以学习如何用 Rust 实现 Raft 协议、符合 ACID 的事物引擎、SQL 解析、数据持久化等。适合对数据库底层运作原理感兴趣的小伙伴 +27、[nushell](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/nushell/nushell):一种更加人性化的新型 shell -

+

🔙 返回目录 🔙


### Swift 项目 -25、[FlappySwift](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/fullstackio/FlappySwift):用 Swfit 写的愤怒小鸟游戏 +28、[Clipy](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/Clipy/Clipy):macOS 的剪贴板扩展应用。支持展示剪贴板历史记录、内容模版等功能 -

- -26、[NetNewsWire](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/Ranchero-Software/NetNewsWire):适用于 macOS 和 iOS 的 RSS 阅读器 - -

+

🔙 返回目录 🔙


### 其它 -27、[insomnia](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/Kong/insomnia):基于 Electron 支持 GraphQL、REST、gRPC 的调试工具,请求网络接口的桌面应用。不仅有简约漂亮的界面,还支持 Windows、Linux、macOS 主流操作系统 - -

+29、[QWidgetDemo](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/feiyangqingyun/QWidgetDemo):Qt 编写的示例集合。每个示例都可独立运行、代码简洁易懂,适合初学者学习 -28、[keframe](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/LianjiaTech/keframe):Flutter 流畅度优化组件。通过分帧渲染解决由于构建导致的卡顿问题,适用于复杂列表或者页面切换的场景 +

-

+30、[xemu](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/mborgerson/xemu):免费开源的 Xbox 模拟器,支持 Windows、Linux、macOS 系统 -29、[authpass](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/authpass/authpass):基于 Flutter 开发的适用于所有平台的密码管理器。可通过 Dropbox 等云服务同步数据,支持自动填充密码 +

-

+31、[yabai](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/koekeishiya/yabai):适用于 macOS 的平铺式窗口管理器。该工具可以轻松实现窗口平铺不重叠,不用鼠标仅通过键盘移动、调整、切换、全屏、自动布局等管理窗口的操作 +- `Control+Option+A/D`:激活 平铺/浮动 模式 +- `Option+h/j/k/l`:使 左/下/上/右 侧窗口成为活动窗口 +- `Shift+Option+h/j/k/l`:向 左/下/上/右 移动当前活动窗口 +- `Command+Option+n`:创建新桌面,并将当前活动窗口移动至新桌面 -30、[Unity3DTraining](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/XINCGer/Unity3DTraining):Unity 游戏开发练习项目集合。包含仿写泡泡龙、跑酷、切水果等游戏的源码,还有作者收集的游戏效果源码和相关文章 +

-

+32、[awesome-for-beginners](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/MunGell/awesome-for-beginners):对初学者友好的开源项目集合。如果你想参与到开源项目的建设,可以在这个集合中寻找项目,祝你早日完成第一个贡献(PR) -31、[QASystemOnMedicalKG](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/liuhuanyong/QASystemOnMedicalKG):从无到有搭建一个医药知识图谱的开源项目。包含信息采集、清理、图谱设计等,并基于图谱实现了自动回答医药相关问题的服务 +33、[lifeRestart](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/VickScarlet/lifeRestart):在线文字游戏《人生重开模拟器》。纯文字游戏只需开局选天赋分配初始属性,后面就是看岁月如白驹过隙,转眼就过完了这一生,不满意的话可以轻松重开新的人生。游戏凭借诙谐幽默的文案和出乎意料的结尾,广受好评。[在线试玩](https://liferestart.syaro.io/view/) -

+

-32、[macos-virtualbox](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/myspaghetti/macos-virtualbox):帮你在 VirtualBox 上安装 macOS 操作系统的工具。这个工具是一个 Bash 脚本,运行后只需要按回车即可完成安装。目前已支持 Linux 、Windows、macOS 多个主流操作系统,可安装 Catalina (10.15)、Mojave (10.14) 和 High Sierra (10.13) 等多个不同版本的苹果系统 +34、[chinese-dos-games](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/rwv/chinese-dos-games):中文 DOS 游戏集合。[在线试玩](https://dos.zczc.cz/) -

- -33、[canvas-special](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/bxm0927/canvas-special):经典的 Canvas 实例集合。包括五子棋、坦克大战、动态背景、动画粒子特效等 - -

- -34、[brave-browser](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/brave/brave-browser):快速、干净、开源的网页浏览器。由 JavaScript 的创造者布兰登·艾克基于 Chromium 网页浏览器和 Blink 排版引擎构建,拥有阻止网站追踪的特点并且内置了广告拦截器。支持 Android、Linux、macOS、iOS、Windows 操作系统,可一键导入书签、浏览记录、密码、插件等,无负担享受这片“净土” - -

+

🔙 返回目录 🔙


### 开源书籍 -35、[LearnOpenGL-CN](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/LearnOpenGL-CN/LearnOpenGL-CN):LearnOpenGL 教程的中文翻译。OpenGL 是一个图形 API,包含了一系列可以操作图形、图像的函数。它需要一个编程语言来工作,教程的示例代码采用 C++ 编程语言。[在线阅读](https://learnopengl-cn.github.io/) +35、[introduction-to-front-end-engineering](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/woai3c/introduction-to-front-end-engineering):一本小书《带你入门前端工程》。该书是作者对过去两年前端工程化实践的经验和心得总结,[在线阅读](https://woai3c.github.io/introduction-to-front-end-engineering/) -

+36、[pumpkin-book](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/datawhalechina/pumpkin-book):《机器学习公式详解》西瓜书公式推导解析。[在线阅读](https://datawhalechina.github.io/pumpkin-book/) -36、[Learn-Web-Hacking](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/LyleMi/Learn-Web-Hacking):Web 安全学习笔记,[在线阅读](https://websec.readthedocs.io/zh/latest/) +

🔙 返回目录 🔙


### 机器学习 -37、[chineseocr_lite](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/DayBreak-u/chineseocr_lite):轻量级中文 OCR 项目,提供将图片上的中文转成字符串的功能 +37、[invoice](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/guanshuicheng/invoice):增值税发票 OCR 识别项目。包含训练好的模型和微服务,启动后可直接通过接口调用 + +

+ +38、[GameAISDK](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/Tencent/GameAISDK):基于图像识别的 AI 自动化框架,支持吃鸡类、射击类、MOBA 类等游戏类型。内置多种图像识别算法和 AI 算法,不用抠图完全基于图像识别的 AI 训练和框架 -

+

-38、[ASRT_SpeechRecognition](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/nl8590687/ASRT_SpeechRecognition):基于深度学习的中文语音识别系统 +39、[genshin_auto_fish](https://hellogithub.com/periodical/statistics/click/?target=https://github.com/7eu7d7/genshin_auto_fish):基于深度学习的原神手游自动钓鱼工具。其中用 YOLOX 搞定鱼的定位和类型的识别以及鱼竿落点的定位,用 DQN 搞定自适应控制钓鱼过程的点击,让力度落在最佳区域内

🔙 返回目录 🔙


- 『上一期』 | 反馈和建议 | 『下一期』 + 『上一期』 | 反馈和建议 | 『下一期』

--- @@ -336,8 +318,8 @@ print(ray.get(futures)) 👉 云主机 4 元/月推荐项目 👈
微信中搜:HelloGitHub 关注公众号
不仅能第一时间收到推送,还有各种回馈粉丝活动
- 如果文中的图刷不出来,可以点击 这里 获取更好的阅读体验。 + 如果文中的图刷不出来,可以点击 这里 获取更好的阅读体验。

## 声明 -知识共享许可协议
本作品采用 署名-非商业性使用-禁止演绎 4.0 国际 进行许可。 \ No newline at end of file +知识共享许可协议
本作品采用 署名-非商业性使用-禁止演绎 4.0 国际 进行许可。