以下为本期内容 |每月 28 号更新
C 项目 1、HEX-LINK :自制电脑游戏的体感设备。该项目包含制作时需要的硬件设计和全部源码
1 2 3 4 5 6 7 8 9 10 11 . ├─firmware # 软件(根据自己使用的工具选择如下一种工程即可)│ ├─ArduinoIDE_Proj # Arduino <!--more--> --- > **以下为本期内容** |每月 **28** 号更新 ### C 项目 1、[HEX-LINK](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 # 额外的脚本工具
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 <p align ="center" > <img src ='https://raw.githubusercontent.com/521xueweihan/img2/master/hellogithub/66/381917789.gif' style ="max-width:80%; max-height=80%;" > </img > </p > ### C# 项目 2、[BBDown](https://github.com/nilaoda/BBDown):命令行哔哩哔哩视频下载工具 <p align ="center" > <img src ='https://raw.githubusercontent.com/521xueweihan/img2/master/hellogithub/66/282637924.gif' style ="max-width:80%; max-height=80%;" > </img > </p > 3、[SteamTools](https://github.com/BeyondDimension/SteamTools):集合多种 Steam 客户端工具的工具箱。该工具支持 Window、Linux、macOS、Android 操作系统,包括游戏库存管理、解锁成就、史低价格、出售库存物品等功能,还有丰富的插件等待你发掘 <p align ="center" > <img src ='https://raw.githubusercontent.com/521xueweihan/img2/master/hellogithub/66/321682465.png' style ="max-width:80%; max-height=80%;" > </img > </p > 4、[xLua](https://github.com/Tencent/xLua):为 C#、Unity、.Net 等环境增添 Lua 脚本编程的能力,使得 Lua 代码方便地与 C# 相互调用
XLua.LuaEnv luaenv = new XLua.LuaEnv();
luaenv.DoString(“CS.UnityEngine.Debug.Log(‘hello world’)”);
luaenv.Dispose();
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 <p align="center" ><img src='https://raw.githubusercontent.com/521xueweihan/img2/master/hellogithub/66/75811015.png' style="max-width:80%; max-height=80%;" ></img></ p> 5 、[btop](https://gi thub.com/aristocratos/ btop):界面酷炫的命令行资源监视器。可以显示处理器、内存、磁盘、网络和进程的使用情况和统计信息,还支持鼠标操作<p align="center" ><img src='https://raw.githubusercontent.com/521xueweihan/img2/master/hellogithub/66/365005377.png' style="max-width:80%; max-height=80%;" ></img></ p> 6 、[libqalculate](https://gi thub.com/Qalculate/ libqalculate):使用 C++ 编写的多功能计算器桌面应用、库和 CLI 程序。它易于使用功能强大,支持大型可定制函数库、单位计算和转换、符号计算(包括积分和方程)。作为用户你可以直接在命令行中使用,作为开发者你也可以在自己的项目中使用这个库。官方还制作了 [Qt](https://gi thub.com/Qalculate/ qalculate-qt) 和 [GTK](https://gi thub.com/Qalculate/ qalculate-gtk) 两个版本的 GUI 计算器应用<p align="center" ><img src='https://raw.githubusercontent.com/521xueweihan/img2/master/hellogithub/66/60243288.png' style="max-width:80%; max-height=80%;" ></img></ p> 7 、[TinyWebServer](https://gi thub.com/qinguoyi/ TinyWebServer):Linux 下的 C++ 轻量级 Web 服务器。该项目不仅可以用来搭建 Web 服务,也适合 C++ 初学者作为网络编程实战项目。作者还写了文章讲解相关代码和原理,帮助初学者更好的掌握网络编程相关知识8 、[css_tricks](https://gi thub.com/QiShaoXuan/ css_tricks):常用 CSS 样式示例集合<p align="center" ><img src='https://raw.githubusercontent.com/521xueweihan/img2/master/hellogithub/66/149151909.png' style="max-width:80%; max-height=80%;" ></img></ p> 9 、[go-daily-lib](https://gi thub.com/darjun/g o-daily-lib):每天学习一个 Go 语言库。内容包含标准库和三方库,每个库对应一篇介绍和上手的文章<p align="center" ><img src='https://raw.githubusercontent.com/521xueweihan/img2/master/hellogithub/66/233408177.png' style="max-width:80%; max-height=80%;" ></img></ p> 10 、[goflylivechat](https://gi thub.com/taoshihan1991/g oflylivechat):基于 Go 语言实现的在线客服系统,采用 Gin+MySQL+JWT+WebSocket 等技术栈实现<p align="center" ><img src='https://raw.githubusercontent.com/521xueweihan/img2/master/hellogithub/66/255823049.jpeg' style="max-width:80%; max-height=80%;" ></img></ p> 11 、[open-im-server](https://gi thub.com/openimsdk/ open-im-server):基于 Go 实现的轻量级即时通讯(IM)项目。具有高性能、易扩展、安装简单、私有化部署等特性,同时包含多种客户端 SDK。从服务器到客户端一体的开源即时通讯(IM)解决方案<p align="center" ><img src='https://raw.githubusercontent.com/521xueweihan/img2/master/hellogithub/66/370977430.png' style="max-width:80%; max-height=80%;" ></img></ p> 12 、[video-srt-windows](https://gi thub.com/wxbool/ video-srt-windows):自动识别视频语音生成字幕文件的工具。采用 Go+walk 开发所以仅支持 Windows 系统,原理是请求在线语音转文字的服务,超出免费额度需付费。另外还加入了导出字幕文件和翻译功能<p align="center" ><img src='https://raw.githubusercontent.com/521xueweihan/img2/master/hellogithub/66/224588420.gif' style="max-width:80%; max-height=80%;" ></img></ p> 13 、[viper](https://gi thub.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、IJPay :Java 支付工具库,轻松完成支付模块开发。封装了常用的微信、QQ、支付宝、银联、PayPal 支付等支付方式的各种常用接口。不依赖任何 MVC 框架,轻松接入到 Java 项目
15、o2oa :国产的 OA 系统。功能齐全支持考勤、会议管理、云盘等,适用于企业 OA、协同办公
16、VirtualApp :Android 系统的沙盒程序,App 虚拟化引擎。它创建了一个虚拟空间,在那里可以任意安装、启动、控制、卸载应用。虚拟空间与外部隔离相当于沙盒环境,可在安卓上实现应用多开、静默安装等黑科技
JavaScript 项目 17、30-Days-Of-JavaScript :30 天 JavaScript 编程挑战。该教程虽然是英文教程但是图文并茂通俗易通,内容循序渐进包含练习题,适合零基础想要学习 JavaScript 的同学
18、javascript :Airbnb 开源的 JavaScript 风格指南。中文
1 2 3 4 5 6 7 8 9 const arr = [1 , 2 , 3 , 4 ];const first = arr[0 ];const second = arr[1 ];const [first, second] = arr;
19、sharedb :基于 JSON 数据 OT 算法的实时数据库。简单来说就是实时协同数据框架,可用来实现当页面因用户操作发生数据变化时,实时把数据同步展示到其它用户页面上,其中 OT 算法就是解决此协同过程中问题的通用算法。常见的场景比如:多用户之间的状态同步、在线协作文档、离线后数据改动同步等
20、spy-debugger :远程调试手机页面和抓包的工具。操作简单仅需手机和电脑在同一个 WIFI 下,即可在实现真机调试页面
21、YesPlayMusic :高颜值的第三方网易云播放器。它不仅拥有简洁美观的外观,还有丰富的功能
支持 Windows/macOS/Linux
私人 FM/每日推荐歌曲
网易云账号登录
歌词显示
自定义快捷键和全局快捷键
等等
Kotlin 项目 22、Component :Android 的组件化框架,帮助开发者在实现项目组件化。它的强大在于功能齐全、更新及时,支持 Kotlin、AndroidX、RxJava、协程等
Objective-C 项目 23、iOSInterviewQuestions :iOS 面试题集合(附答案)
Python 项目 24、CPython-Internals :图文并茂的 Python 源码阅读笔记项目。阅读的是比较新的 CPython 3.8 版本,重点是项目一直在更新维护
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 static void take_gil (PyThreadState *tstate) { while (_Py_atomic_load_relaxed(&_PyRuntime.ceval.gil.locked)) { int timed_out = 0 ; unsigned long saved_switchnum; saved_switchnum = _PyRuntime.ceval.gil.switch_number; COND_TIMED_WAIT (_PyRuntime.ceval.gil.cond, _PyRuntime.ceval.gil.mutex, INTERVAL, timed_out); if (timed_out && _Py_atomic_load_relaxed(&_PyRuntime.ceval.gil.locked) && _PyRuntime.ceval.gil.switch_number == saved_switchnum) { SET_GIL_DROP_REQUEST (); } } }
25、mypy :Python 静态类型检查库。既然 Python 是一门动态类型语言,为啥还要检查类型呢?有了静态类型检测则无需运行代码,就可以发现程序中潜在的错误。还可以加入到 git hook 中,实现在提交代码前自动检查。详情查看这篇文章
26、Pokemon-Terminal :适用于多种终端的口袋妖怪主题工具。支持 iTerm2、ConEmu、Terminology、Windows 的终端,已经收集了 719 个小精灵
Rust 项目 27、nushell :一种更加人性化的新型 shell
Swift 项目 28、Clipy :macOS 的剪贴板扩展应用。支持展示剪贴板历史记录、内容模版等功能
人工智能 29、GameAISDK :基于图像识别的 AI 自动化框架,支持吃鸡类、射击类、MOBA 类等游戏类型。内置多种图像识别算法和 AI 算法,不用抠图完全基于图像识别的 AI 训练和框架
30、genshin_auto_fish :基于深度学习的原神手游自动钓鱼工具。其中用 YOLOX 搞定鱼的定位和类型的识别以及鱼竿落点的定位,用 DQN 搞定自适应控制钓鱼过程的点击,让力度落在最佳区域内
31、invoice :增值税发票 OCR 识别项目。包含训练好的模型和微服务,启动后可直接通过接口调用
其它 32、awesome-for-beginners :对初学者友好的开源项目集合。如果你想参与到开源项目的建设,可以在这个集合中寻找项目,祝你早日完成第一个贡献(PR)
33、chinese-dos-games :中文 DOS 游戏集合。在线试玩
34、lifeRestart :在线文字游戏《人生重开模拟器》。纯文字游戏只需开局选天赋分配初始属性,后面就是看岁月如白驹过隙,转眼就过完了这一生,不满意的话可以轻松重开新的人生。游戏凭借诙谐幽默的文案和出乎意料的结尾,广受好评。在线试玩
35、QWidgetDemo :Qt 编写的示例集合。每个示例都可独立运行、代码简洁易懂,适合初学者学习
36、xemu :免费开源的 Xbox 模拟器,支持 Windows、Linux、macOS 系统
37、yabai :适用于 macOS 的平铺式窗口管理器。该工具可以轻松实现窗口平铺不重叠,不用鼠标仅通过键盘移动、调整、切换、全屏、自动布局等管理窗口的操作
Control+Option+A/D:激活 平铺/浮动 模式
Option+h/j/k/l:使 左/下/上/右 侧窗口成为活动窗口
Shift+Option+h/j/k/l:向 左/下/上/右 移动当前活动窗口
Command+Option+n:创建新桌面,并将当前活动窗口移动至新桌面
开源书籍 38、introduction-to-front-end-engineering :一本小书《带你入门前端工程》。该书是作者对过去两年前端工程化实践的经验和心得总结,在线阅读
39、pumpkin-book :《机器学习公式详解》西瓜书公式推导解析。在线阅读