上周 18k+ 的项目 bun 这周又获得 7k+ star,是时候了解下它背后的编程语言 zig 了,它并不是一门新的语言,伴随着 bun 的风靡,zig 本周也上了 GitHub 热榜。同样,可以学习的还有 software-papers 也是个新项目,收录了大量值得一读的软件工程论文。

除了学习新东西,一些老知识,如果你没掌握不妨也来二次学习下,比如敲下 www.google.com 之类任意一个网站 web 的工作原理。

知识之外,本周新工具上榜的有 trpc,轻轻松松搞定 API 以及避免广告打扰的 pi-hole。

以下内容摘录自微博@HelloGitHub 的 GitHub Trending 及 Hacker News 热帖(简称 HN 热帖),选项标准:新发布 | 实用 | 有趣,根据项目 release 时间分类,发布时间不超过 14 day 的项目会标注 New,无该标志则说明项目 release 超过半月。由于本文篇幅有限,还有部分项目未能在本文展示,望周知

  • 本文目录

      1. 本周特推
      • 1.1 身份验证:logto
      • 1.2 rust 实践:rust-by-practice
      1. GitHub Trending 周榜
      • 2.1 不新的编程语言:zig
      • 2.2 轻松用 API:trpc
      • 2.3 Web 工作原理:how-web-works
      • 2.4 广告拦截:pi-hole
      • 2.5 软件工程论文:software-papers
      1. 往期回顾

1. 本周特推

1.1 身份验证:logto

本周 star 增长数:800+

Logto 一个验证工具,在几分钟内即可构建集登录、身份验证和用户身份为一体的系统。它提供基于 OIDC 的身份认证服务和包含用户名、电话、邮件和社交登录方式的终端体验,并且提供多语言支持。特性:

  • 集前后端为一体的验证方案;
  • 开箱即用,之前需要编写的部分代码现在可以不用写了;

GitHub 地址→https://github.com/logto-io/logto

1.2 rust 实践:rust-by-practice

本周 star 增长数:950+

实践出真知,rust-by-practice 用各类具有挑战性的例子、练习、项目让你在实践中提升 Rust 编写技能,从而缩短你同 Rust “老手”的距离。

GitHub 地址→https://github.com/sunface/rust-by-practice

2. GitHub Trending 周榜

2.1 不新的编程语言:zig

本周 star 增长数:700+

还记得上周推特一周获得 18k+ star 的 JS 运行时项目 bun 么?Zig 便是它的编程语言,Zig 是一个命令式、通用、静态类型、编译的系统编程语言。Zig 以 “强健性、最佳性以及可维护性” 为核心理念,支持编译时泛型与反射、交叉编译以及手动存储器管理。

const std = @import("std");
const json = std.json;
const payload =
\\{
\\ "vals": {
\\ "testing": 1,
\\ "production": 42
\\ },
\\ "uptime": 9999
\\}
;
const Config = struct {
vals: struct { testing: u8, production: u8 },
uptime: u64,
};
const config = x: {
var stream = json.TokenStream.init(payload);
const res = json.parse(Config, &stream, .{});
// Assert no error can occur since we are
// parsing this JSON at comptime!
break :x res catch unreachable;
};
pub fn main() !void {
if (config.vals.production > 50) {
@compileError("only up to 50 supported");
}
std.log.info("up={d}", .{config.uptime});
}

GitHub 地址→https://github.com/ziglang/zig

2.2 轻松用 API:trpc

本周 star 增长数:950+

tRPC 让你更轻松地构建和使用全类型安全的 API,而不需要模式或代码生成。部分特性:

  • 可用在生产环境;
  • 无代码、运行时膨胀、管道构建;
  • 轻量,DEP 为 0 且客户端痕迹很小;
  • 易于集成到现有的项目中;
  • 支持订阅;
  • 支持批量处理请求;

GitHub 地址→https://github.com/trpc/trpc

2.3 Web 工作原理:how-web-works

本周 star 增长数 1,050+

这是一个比较历史悠久的科普知识了:当你敲下 www.google.com(类似于 www.baidu.com)会发生什么呢?它包含了如何识别键入信息、解析 url、检查 HSTS 列表、DNS 查找等等在内的 20+ 个过程。配图是 DNS 查找。

GitHub 地址→https://github.com/vasanthk/how-web-works

2.4 广告拦截:pi-hole

本周 star 增长数:700+

pi-hole 是一个 DNS 漏洞,可以保护设备免受“广告”内容,而无需安装任何客户端软件。特性:

  • 易安装,不到十分钟在引导下即可安装完成;
  • 果断拦截非必需内容;
  • 快响应,DNS 缓存可加快日常浏览速度;
  • 轻量级,只需少量软硬件;
  • 高颜值仪表盘,查看日常信息;
  • 可屏蔽 IPv4 和 IPv6 广告;

GitHub 地址→https://github.com/pi-hole/pi-hole

2.5 软件工程论文:software-papers

本周 star 增长数:1,250+

New software-papers 收录了大量软件工程相关的论坛,从计算机起源到函数式编程,一起通过阅读论文来了解软件工程吧。

GitHub 地址→https://github.com/facundoolano/software-papers

3. 往期回顾

往期回顾:

以上为 2022 年第 29 个工作周的 GitHub Trending 如果你 Pick 其他好玩、实用的 GitHub 项目,记得来 HelloGitHub issue 区和我们分享下哟

最后,记得你在本文留言区留下你想看的主题 Repo(限公众号),例如:AI 换头。 和之前的送书活动类似,留言点赞 Top3 的小伙伴(棒),小鱼干会努力去找 Repo 的^^

HelloGitHub 交流群现已全面开放,添加微信号:HelloGitHub001 为好友入群,可同前端、Java、Go 等各界大佬谈笑风生、切磋技术~

什么新东西值得学「GitHub 热点速览 v.22.29」的更多相关文章

  1. 造!又有新的生产力语言了「GitHub 热点速览 v.22.30」

    作者:HelloGitHub-小鱼干 你还记得那些 PHP 开发都去哪了吗?转 Golang 了!移动端现在流行什么?Flutter 编程.现在谷歌带着新的生产力语言来了,Carbon,代号:C++ ...

  2. 你的工具包已到货「GitHub 热点速览 v.22.31」

    如果你经常用 shell 记得看看本周特推里的 gum,它能给你的 shell 增加新趣味.除了这个 shell kit,我们还有 dashboard kit--tabler,功能技能 kit eng ...

  3. 老梗新玩「GitHub 热点速览 v.22.34」

    作者:HelloGitHub-小鱼干 不知道你是否和我有一样的烦恼,最近的流行梗当自己要用拿来造词时,就陷入了不知道咋"换壳"的尴尬地步.sao-gen-gen 大大减少了你老梗新 ...

  4. 揭开周获 18k star 开源项目的神秘面纱「GitHub 热点速览 v.22.28」

    本周 GitHub Trending 的项目重量十足,比如标题的一周获得 18k+ 的高性能 JS Runtime--bun,用性能来体现了它的"含金量".同样有重量的还有一行代码 ...

  5. 读 Linux 像读小说「GitHub 热点速览 v.22.03」

    本周特推选取了一个画风有点意思的 Linux 代码带读项目 flash-linux0.11-talk,希望有趣的文风能带你读完 Linux 代码.当然画风可以增加阅读体验,彩色标记也是一种学习方法-- ...

  6. 另类终端「GitHub 热点速览 v.22.15」

    作者:HelloGitHub-小鱼干 除了编译器之外,终端也是我们日常打交道的软件之一.但,你用它看过股票吗?OpenBBTerminal 不仅能让你看股票,还能让你用科学的方法进行股票投资.说到投资 ...

  7. GitHub 官方大动作频频「GitHub 热点速览 v.22.24」

    作者:HelloGitHub-小鱼干 本周 GitHub 官方 Blog 很是热闹,GitHub 官方大动作频频也带来了 GitHub Blog 的频繁更新,除了本周 News 快读收录的 GitHu ...

  8. 叮,GitHub 到账 550 美元「GitHub 热点速览 v.22.26」

    作者:HelloGitHub-小鱼干 如果你关注 GitHub 官方动态,你会发现它们最近频频点赞世界各地开发者晒出的 GitHub $550 sponsor 截图,有什么比"白嫖" ...

  9. 用 40 块搞个游戏机「GitHub 热点速览 v.22.27」

    作者:HelloGitHub-小鱼干 最便宜的小霸王游戏机都超过了五十,但是现在有了 PicoBoot 你用 40 块的树莓派就能搞出个任天堂游戏机(NGC).PicoBoot 替换了 NGC 的 I ...

随机推荐

  1. SpringBoot项目刚刚创建就报异常,Failed to configure a DataSource: 'url' attribute is not specified and no embedded 的解决办法

    错误信息: Description: Failed to configure a DataSource: 'url' attribute is not specified and no embedde ...

  2. 机器学习-学习笔记(一) --> (假设空间 & 版本空间)及 归纳偏好

    机器学习 一.机器学习概念 啥是机器学习 机器学习:假设用P来评估计算机程序在某任务类T上的性能,若一个程序通过利用经验E在T中任务上获得了性能改善,则关于T和P,该程序对E进行了学习 通俗讲:通过计 ...

  3. C++基础-3-函数

    3. 函数 3.1 函数默认参数 1 #include<iostream> 2 using namespace std; 3 4 //函数的默认参数 5 //自己传参,就用自己的,如果没有 ...

  4. Kubernetes容器之间的通信浅谈

    公众号关注 「开源Linux」 回复「学习」,有我为您特别筛选的学习资料~ 作者: Matt Zand 和 Jim Sullivan 译者: 穿过生命散发芬芳F Kubernetes是一个容器化的解决 ...

  5. 详解Kubernetes存储体系

    Volume.PV.PVC.StorageClass由来 先思考一个问题,为什么会引入Volume这样一个概念? " 答案很简单,为了实现数据持久化,数据的生命周期不随着容器的消亡而消亡. ...

  6. 版本控制之git

    1.Git的介绍 Git 是一个开源的分布式版本控制软件,用以有效.高速的处理从很小到非常大的项目版本管理. Git 最初是由Linus Torvalds设计开发的,用于管理Linux内核开发.Git ...

  7. vue - Vue中的ajax

    只有在ajax才能找回一点点主场了,vue中的ajax一天整完,内容还行,主要是对axios的运用. 明天按理说要开始vuex了,这个从来都是只耳闻没有眼见过,明天来看看看看是个什么神奇的东西. 一. ...

  8. 【mq】从零开始实现 mq-08-配置优化 fluent

    前景回顾 [mq]从零开始实现 mq-01-生产者.消费者启动 [mq]从零开始实现 mq-02-如何实现生产者调用消费者? [mq]从零开始实现 mq-03-引入 broker 中间人 [mq]从零 ...

  9. 华为OPS,自定义命令,动态执行命令

     OPS     开放可编程系统OPS(Open Programmability System)是指设备通过提供统一的应用程序接口API(Application Programming Interfa ...

  10. 汇编语言中loop循环编程

    (1)向内存0:200~ 0:23f依次传送数据0~63(3FH) (2)同上简化后的代码,要求九行以内