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

《HelloGitHub》第 80 期

简介

HelloGitHub 共享 GitHub 上风趣、入门级的开源项目。

github.com/521xueweiha…

这里有实战项目、入门教程、黑科技、开源书本、大厂开源项目等,包括多种编程言语 Python、Java、Go、C/C++、Swift…让你在短时间内感受到开源的魅力,对编程发生爱好!


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

C 项目

1、cockpit:根据 Web 的服务器图形界面。这是一款开源的服务器办理东西,让你能够经过 Web 界面轻松办理 Linux 服务器,支撑装备防火墙、Web 终端、容器办理、检查系统日志等功用。

《HelloGitHub》第 80 期

C# 项目

2、Malware-Patch:阻挠 Windows 流氓软件授权的东西。它轻盈、无需后台运转,可用于阻挠指定软件的办理员授权。

《HelloGitHub》第 80 期

C++ 项目

3、Magisk:Android 获取 Root 权限的东西。它能够快速、无痛地取得 Android 的超级用户权限,支撑 Android 5.0 以上的设备。

《HelloGitHub》第 80 期

4、osquery:像数据库一样查询设备的东西。它将操作系统抽象成一个数据库,让用户能够经过 SQL 查询操作系统的运转情况,比方运转中的进程、网络衔接、文件和用户。进犯者一般会在运转恶意程序后删掉程序,经过 osquery 能够轻松找到没有源文件的进程。

osquery> SELECT name, path, pid FROM processes WHERE on_disk = 0;
name = Drop_Agent
path = /Users/jim/bin/dropage
pid = 561

《HelloGitHub》第 80 期

CSS 项目

5、css-only-chat:仅用 CSS 完结网络谈天。前端不用 JavaScript 只用 CSS 完结网络谈天的功用,秘诀是伪选择器加载的背景图画和永远加载的索引页。

.some-button:active {
  background-image: url('some_image.jpg')
}

《HelloGitHub》第 80 期

Go 项目

6、cadvisor:一款由 Google 开源的容器监控东西。它能够实时统计容器运转时占用的资源,包括 CPU 利用率、内存运用量、网络传输等信息。供给了 Web 可视化页面,能便利用户剖析和监控容器运转状态,支撑包括 Docker 在内的几乎所有类型的容器。

sudo docker run \
  --volume=/:/rootfs:ro \
  --volume=/var/run:/var/run:ro \
  --volume=/sys:/sys:ro \
  --volume=/var/lib/docker/:/var/lib/docker:ro \
  --volume=/dev/disk/:/dev/disk:ro \
  --publish=8080:8080 \
  --detach=true \
  --name=cadvisor \
  --privileged \
  --device=/dev/kmsg \
  gcr.io/cadvisor/cadvisor:$VERSION

《HelloGitHub》第 80 期

7、dsq:可直接用 SQL 查询数据文件的命令行东西。经过该项目无需将数据导入数据库,就能用 SQL 查询文件内的数据,可执行含糊查询、计数、排序等命令,支撑 JSON、CSV、Excel、Parquet、YAML 等类型的文件。还能够调配其它命令行东西(jq),完结更丰厚的功用。

$ dsq testdata/userdata.parquet 'select count(*) from {}' | jq
[
  {
    "count(*)": 1000
  }
]

8、json-to-go:立刻将 JSON 转化为 Go 类型界说的东西。这是一个用 JavaScript 写的在线小东西,能够直接将输入的 JSON 转成对应的 Go 类型界说。

《HelloGitHub》第 80 期

9、pocketbase:仅一个文件的开源后端。将 SQLite 数据库、接口服务、登录认证、办理后台等服务器端的功用,做成一个开箱即用的可执行文件。让本来不明白后端开发的用户,也能够经过用户界面快速构建起接口服务。

《HelloGitHub》第 80 期

10、supervisord:用 Go 重新完结的 supervisord 。开源项目 supervisord 作为 Python 项目中常用的进程办理东西,深受广阔开发爱好者的喜爱。但假如在非 Python 环境的情况下,用起来就不是那么顺手啦,所以作者用 Go 重写了 supervisord,编译后能够便利地运转在任何环境下。

$ cat supervisor.conf
[program:test]
command = /your/program args
$ supervisord -c supervisor.conf

《HelloGitHub》第 80 期

Java 项目

11、Aegis:一款免费、安全、开源的 2FA 安卓运用。两层认证(2FA) 便是运用两种不同的元从来承认用户身份,比方用户名和暗码是一种元素,手机号和短信验证码也是一种元素,两种元素结合便是两层认证。除了短信之外还有一种 APP 可生成和验证码功用相似的一次性暗码(TOTP),Aegis 便是一款支撑 HOTP 和 TOTP 算法的开源 2FA 运用,运用时要先将手机和账号绑定,绑定后 APP 就会守时改写一组随机数字,需求两层认证时输入这串数字即可。

《HelloGitHub》第 80 期

12、jenkins:一款由 Java 编写的开源持续集成东西。做为开源 CI/CD 软件的王者,它专注于主动化你的开发作业流程,具有装置简略、友爱的操作页面、易于扩展、分布式的特点,常用来优化项目开发流程或主动化各种使命。

1. 下载 jar 包
2. 运转:java -jar jenkins.war --httpPort=8080
3. 打开浏览器拜访:http://localhost:8080
4. 根据提示完结装置

《HelloGitHub》第 80 期

13、wvp-GB28181-pro:开箱即用的网络视频渠道。根据 GB28181 规范完结的网络视频渠道,能够接入摄像机、渠道、NVR 等设备、支撑视频预览、云台操控、录像查询和回放、无人观看主动断流等功用。

《HelloGitHub》第 80 期

JavaScript 项目

14、cypress:根据 JavaScript 的下一代前端测验东西。主要用于浏览器端到端测验的主动化东西,端到端(E2E)测验便是站在用户的视点,模拟实际运用场景的测验方法。Cypress 现在已成主流浏览器端到端测验东西,它运转速度快、上手简略,支撑图形化界面可实时调查执行情况,以及截屏和视频记录测验结果。

《HelloGitHub》第 80 期

15、Dashboard:一款彻底自界说装备的浏览器起始页。根据 Vite+Vue3+TypeScript 构建的浏览器起始页,预设了多款简练清新的主题开箱即用,能够为所欲为地添加组件,修改形式下可拖拽组件更改大小和位置,支撑浏览器插件和网页两种运用方法。

《HelloGitHub》第 80 期

16、Rocket.Chat:一款可自由定制的企业级开源通讯渠道。功用丰厚的通讯渠道,可自托管做为 Slack 的开源替代品。支撑创建频道、团队和讨论等多种不同功用的群聊,音讯支撑图片、文件、视频和语音,具有包括 Windows、Linux、macOS、Android 和 iOS 在内的多种客户端。

《HelloGitHub》第 80 期

17、slidev:专为程序员打造的演示文稿东西。该项目是根据 Web 的幻灯片制造和演示东西,让用户能够运用 纯文本+Markdown 语法制造幻灯片,支撑导出为 PDF 或 PNG 格局的文件,或以单页面展示幻灯片。关于大多数不拿手做 PPT 的程序员,根据供给的现成主题也能够制造出看起来不错的演示文稿。

《HelloGitHub》第 80 期

18、the-super-tiny-compiler:可能是最小的编译器。仅用 1000 行 JavaScript 代码完结的迷你编译器,其间注释还占了一大半,实际代码只有 200 行左右。它尽管代码量不多,但完整地完结了编译器基本功用,能够用来学习编译器原理。

《HelloGitHub》第 80 期

PHP 项目

19、YOURLS:彻底免费的短网址服务。采用 PHP 编写的短网址服务,它彻底开源可自行建立服务,支撑数据统计、地理位置、可视化等功用。

《HelloGitHub》第 80 期

Python 项目

20、calibre:一款功用强大的电子书办理东西。它是集下载、格局转化、制造、办理于一体的电子书东西,比方能够将 txt 文本,转化成包括作者信息和书本封面的 mobi 文件,制造完结后还能够直接发送到 Kindle 设备上。

《HelloGitHub》第 80 期

21、changedetection.io:简略好用的网站变更检测、监控和通知服务。根据 Flask+Selenium 构建的 Web 服务,能够在方针网站发生变化时发出通知,可用于监控商品降价、作业时机、版本发布、最新内容等,支撑 Docker 的装置方法。

《HelloGitHub》第 80 期

22、Macast:一款轻盈的投屏接纳器。该项目能够让电脑接纳来自手机的视频、图片和音乐投屏,支撑手机上的主流视频和音乐软件,以及其它符合 DLNA 协议的软件。无打扰地运转在状态栏和菜单栏,适用于 Windows、macOS、Linux 操作系统。

《HelloGitHub》第 80 期

23、reloadium:Python 热重载调试东西。在不重启程序的前提下,经过这个项目能够检查改动后、最新的 Python 代码运转效果,以及每行代码的耗时。有了它能够更高效地调试 Python 代码,强烈推荐在 PyCharm 和 VSCode 上运用。

《HelloGitHub》第 80 期

24、rocketry:更加人性化的 Python 调度库。可经过 Python 装修器语法,进行使命调度的 Python 库。它简略、高雅、高效,支撑守时、并发(异步、多线程、多进程)、条件触发等功用。

from rocketry import Rocketry
from rocketry.conds import daily
app = Rocketry()
@app.task(daily)
def do_daily():
    ...
@app.task(daily & file_exists("data.csv"))
def do_things():
    ...
if __name__ == '__main__':
    app.run()

Rust 项目

25、difftastic:命令行文件对比东西。一种可根据文件的语法,进行结构化比较的东西,支撑 30 多种编程言语。

《HelloGitHub》第 80 期

26、sniffnet:可轻松监控网络流量的东西。这是一个简略、牢靠、炫酷的网络监控运用,能够让你一望而知地了解设备的网络流量。

27、websocat:WebSockets 的命令行客户端。一条命令衔接或建立 WebSockets 服务,适用于 Windows、macOS、Linux。

A$ websocat -s 1234
Listening on ws://127.0.0.1:1234/
ABC
123

B$ websocat ws://127.0.0.1:1234/
ABC
123

Swift 项目

28、CotEditor:一款适用于 macOS 的轻量级纯文本修改器。它免费、整洁、发动速度快,具有看起来十分舒服的界面。

《HelloGitHub》第 80 期

其它

29、fonteditor:在线字体修改器。在线修改、转化、预览字体文件,支撑多种字体格局。

《HelloGitHub》第 80 期

30、free-for-dev:专为程序员准备的免费服务清单。现在尽管有很多免费的服务,但大多数开发者很难找到它们,这是一份免费服务(SaaS、PaaS、IaaS 等)和产品的列表。

31、GameShell:玩游戏学习 Shell。这是一款帮助入门 shell 命令的文字游戏。

《HelloGitHub》第 80 期

32、hackingtool:黑客东西全家桶。该项目收录了各种黑客东西,包括破解暗码、SQL 注入、垂钓进犯、XSS、DDos 等。

《HelloGitHub》第 80 期

33、platformio-core:专业的嵌入式开发渠道。做嵌入式开发时往往会遇到诸多不便,比方硬件厂商的 IDE 绑定和复杂的装备进程。这款 IDE 能让你轻松打破这些约束,PlatformIO IDE 兼容 Arduino、树莓派和 ESP32 在内的 40 多种渠道,以及超过 20+ 的框架。它不只支撑 Debug、代码主动补全、单元测验、串口调试等实用的功用,还供给了 VSCode、Vim 等修改器的插件,把开发东西的选择权彻底地还给开发者。

《HelloGitHub》第 80 期

34、sms_forwarding:超低成本的短信转发器。经过该项目仅需 50 元就能够制造出一个短信转发器,完结不用手机接纳验证码。

《HelloGitHub》第 80 期

开源书本

35、Book3_Elements-of-Mathematics:《数学要素》从加减乘除到机器学习。全彩多图的一本科普书,内容以图解+数学+编程为主。

《HelloGitHub》第 80 期

36、parsing-techniques:《Parsing Techniques》解析技能。该书是编译器前端的经典书本。

37、py4e:《Python for Everybody》适合所有人的 Python。不论你有没有编程根底,只要对编程感爱好,都能够经过这本书学会 Python,进入风趣的编程国际。

《HelloGitHub》第 80 期

机器学习

38、AiLearning-Theory-Applying:快速上手 AI 理论及运用实战。该教程包括学习 AI 必备的数学根底,机器学习实战小项目、深度学习入门、自然言语通用框架 BERT 实战,以及很多数据集。

39、vmaf:Netflix 开源的视频质量评价算法。一种将人类视觉模型与机器学习结合的评价视频质量的方法,意图是改善观众们的观看体会。

《HelloGitHub》第 80 期

最后

假如你发现了 GitHub 上风趣的项目,就点击共享给大家伙吧。

以上便是本期的所有内容了,往期内容点击阅览

感谢您的阅览,假如觉得本期内容还不错的话 求赞、求共享 ❤️