《HelloGitHub》第 83 期

兴趣是最好的老师,HelloGitHub 让你对编程感兴趣!

《HelloGitHub》第 83 期

简介

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

https://github.com/521xueweihan/HelloGitHub

这里有实战项目、入门教程、黑科技、开源书籍、大厂开源项目等,涵盖多种编程语言 Python、Java、Go、C/C++、Swift...让你在短时间内感受到开源的魅力,对编程产生兴趣!


以下为本期内容|每个月 28 号更新

C 项目

1、sds:简单的 C 语言动态字符串库。Redis 作者写的 C 语言字符串库,它相较于 C 字符串,使用起来更加方便。具有速度快(常数复杂度获取字符串长度)、二进制安全(图片、音频等)、兼容部分 C 字符串函数等特点。

sds mystring = sdsnew("Hello World!"); printf("%sn", mystring); sdsfree(mystring);  output> Hello World! 

2、sigma-file-manager:一款先进的文件管理器。这是一款免费的文件管理器,由开源社区维护。支持智能搜索、自定义主页、文件共享、文件下载、智能拖放、文件保护等功能,适用于 Windows 和 Linux。

《HelloGitHub》第 83 期

3、ttyd:简单的网络共享终端的命令行工具。基于 libuv 和 WebGL2 构建的 Web 共享终端工具,安装简单使用方便,支持 SSL、文件传输、Sixel 图像输出等功能。可运行在 Windows、macOS、Linux、OpenWrt 等操作系统上,适用于远程运维、在线管理设备等场景。

《HelloGitHub》第 83 期

C# 项目

4、ambie:Windows 上的白噪声应用。一款播放白噪声和自然声音的应用,比如下雨、海滩等声音,支持混合、在线下载声音和专注功能。工作时使用可以帮助你集中注意力,还能在放松时使用有助于睡眠。

《HelloGitHub》第 83 期

5、FluentTerminal:炫酷的 Windows 终端软件。基于 UWP 的 Windows 终端应用,拥有强大的自定义主题模块,能够轻松定制出风格各异的主题。提供了中文选项,支持多窗口、SSH 和搜索等功能。

《HelloGitHub》第 83 期

6、gsudo:适用于 Windows 的 sudo 命令行工具。它是 Windows 上的 sudo,允许用户以最高权限运行命令,拥有与 Unix/Linux sudo 类似的使用体验,支持 CMD、PowerShell、git-bash 等。

《HelloGitHub》第 83 期

C++ 项目

7、Clipboard:小巧便捷的命令行剪贴板。一款用 C++ 编写的剪贴板工具,可以在终端的任何地方复制、剪切和粘贴东西,使用起来就像 GUI 一样方便,相见恨晚的命令行工具,适用于 Windows、Linux 和 macOS 操作系统。

《HelloGitHub》第 83 期

8、doctest:超快的 C++ 单头文件测试框架。这是一款轻量级、快速的 C++ 测试框架,它使用起来十分方便,引入头文件即可使用,而且速度快、编译时间短,支持 C++ 11/14/17/20。

#define DOCTEST_CONFIG_IMPLEMENT_WITH_MAIN #include "doctest.h"  int factorial(int number) { return number <= 1 ? number : factorial(number - 1) * number; }  TEST_CASE("testing the factorial function") {     CHECK(factorial(1) == 1);     CHECK(factorial(2) == 2);     CHECK(factorial(3) == 6);     CHECK(factorial(10) == 3628800); } 

《HelloGitHub》第 83 期

9、pocketpy:为嵌入游戏引擎而设计的 Python 解释器。一个 C++ 实现的轻量级的 Python 解释器,包含一个编译器和基于字节码的虚拟机,以及交互式命令窗的实现。所有功能均集成在单个头文件 pocketpy.h 中,不包含外部依赖项可以很方便地嵌入应用,立刻拥有执行 Python 代码的能力。

#include "pocketpy.h"  int main(){     // 创建一个虚拟机     VM* vm = pkpy_new_vm(true);          // Hello world!     pkpy_vm_exec(vm, "print('Hello world!')");      // 构建一个列表     pkpy_vm_exec(vm, "a = [1, 2, 3]");      // 对列表进行求和     char* result = pkpy_vm_eval(vm, "sum(a)");     printf("%s", result);   // 6      // 释放资源     pkpy_delete(result);     pkpy_delete(vm);     return 0; } 

《HelloGitHub》第 83 期

10、