本周 GitHub Trending 略显冷清,大概是国内的人们开始在养病,而国外的人们开始过圣诞、元旦双节。热度不减的 ChatGPT 依旧占据了本周大半的 GitHub 热点项目,不过本周的特推和周榜并未重复收录这些。不过,本周有个新的 C 项目颇为有意思,它便是特推史上最小的 x86 Linux 模拟器,主打小巧。另外个特推项目便是 Google 开源的漏洞检测工具,也是软件工程师的好帮手。

周榜方面,有 GitHub 常客算法,不只是算法还教你数据结构。搞音视频业务的同学也许也可以看看 lossless-cut,无损搞视频。还有 TS 的工具库 zod,OpenAI 使用指北和跑在终端的 Copilot。

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

  • 本文目录

    • 1. 本周特推

      • 1.1 最小的 x86 Linux 模拟器:blink
      • 1.2 漏洞扫描:osv-scanner
    • 2. GitHub Trending 周榜
      • 2.1 算法入门:hello-algo
      • 2.2 音视频无损剪切:lossless-cut
      • 2.3 TS 验证库:zod
      • 2.4 OpenAI 指南:openai-cookbook
      • 2.5 终端 Copilot:plz-cli
    • 3. 往期回顾

1. 本周特推

1.1 最小的 x86 Linux 模拟器:blink

主语言:C

New blink 是一款虚拟机可用来跑静态编译的 x86-64 Linux,它适用于不同的操作系统和硬件架构。它和 qemu-x86_64 实现类似功能,除了 blink 不是一个 4 mb 的二进制而是一个约 158 kb 的小东西之外,在某些基准测试中,比如:gcc 模拟,blink 比 Qemu 更快。由于体积小,作为折中的方案,blink 在系统集成方面不如 Qemu 丰富。

GitHub 地址→https://github.com/jart/blink

1.2 漏洞扫描:osv-scanner

主语言:Golang

New Google 开源的漏洞扫描器,数据由 https://osv.dev/ 提供。你可以用来查询项目现有依赖是否存在漏洞。

GitHub 地址→https://github.com/google/osv-scanner

2. GitHub Trending 周榜

2.1 算法入门:hello-algo

本周 star 增长数:1,600+主语言:Java、C++

New 《Hello 算法》一本动画图解、能运行、可提问的数据结构与算法入门书。「代码实践导向」提供经典算法的清晰实现与测试代码,支持多种语言、详细注释、皆可一键运行。

GitHub 地址→https://github.com/krahets/hello-algo

2.2 音视频无损剪切:lossless-cut

本周 star 增长数:950+主语言:JavaScript

lossless-cut 旨在成为对视频、音频、字幕和其他媒体文件进行快速、无损操作的跨平台 FFmpeg GUI,主要功能是对视频和音频文件进行无损修剪和剪切。你可以快速在一段视频中提取好片段,并丢弃 gb 的数据量,无需缓慢重编码。同理,增加音频和字幕亦然,无需新编码。

GitHub 地址→https://github.com/mifi/lossless-cut

2.3 TS 验证库:zod

本周 star 增长数:700+主语言:TypeScript

以 TypeScript 为先、带有静态类型推断的 schema 模式声明及验证库。这里的模式(schema)泛指任意的数据类型,从简单的 string 到复杂的嵌套对象。部分亮点:

  • 零依赖;
  • 可用在 Node.js 和浏览器;
  • 体积小:缩小压缩后 8kb;
  • 不可变:像是 .optional()会返回一个新实例;
  • 接口简洁;
  • 支持纯 JavaScript,你不一定非要用 TS 来使用它;

以下为创建一个简单的 string 示例:

import { z } from "zod";

// creating a schema for strings
const mySchema = z.string(); // parsing
mySchema.parse("tuna"); // => "tuna"
mySchema.parse(12); // => throws ZodError // "safe" parsing (doesn't throw error if validation fails)
mySchema.safeParse("tuna"); // => { success: true; data: "tuna" }
mySchema.safeParse(12); // => { success: false; error: ZodError }

GitHub 地址→https://github.com/colinhacks/zod

2.4 OpenAI 指南:openai-cookbook

本周 star 增长数:1,300+主语言:Python

前两周很火的 ChatGPT 的组织 OpenAI 出品的使用 OpenAI API 的示例和指南,当中包含了像是明星项目 GPT-3 的 Playground。

GitHub 地址→https://github.com/openai/openai-cookbook

2.5 终端 Copilot:plz-cli

本周 star 增长数:600+主语言:Rust

New CLI 工具,依据你的描述生成对应的 shell 脚本,号称终端 Copilot。

$ plz --help
Generates bash scripts from the command line Usage: plz [OPTIONS] <PROMPT> Arguments:
<PROMPT> Description of the command to execute Options:
-y, --force Run the generated program without asking for confirmation
-h, --help Print help information
-V, --version Print version information

GitHub 地址→https://github.com/m1guelpf/plz-cli

3. 往期回顾

往期回顾:

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

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

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

史上最小 x86 Linux 模拟器「GitHub 热点速览 v.22.50」的更多相关文章

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

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

  2. 平平无奇的项目「GitHub 热点速览 v.22.10」

    不知道大家对高星项目什么印象?提到这个词第一个想到哪个项目呢?本周有几个项目看着普普通通,却完成了一周 2k+ star 的事迹.比如 SingleFile,它是个浏览器扩展,点击图标之后即可保存一个 ...

  3. 听,引擎的声音「GitHub 热点速览 v.22.33」

    这期的热点速览异常 Cool,因为有呜呜声内燃机引擎加成的 engine-simengine-sim 坐镇,听到如此曼妙的引擎声,相比你的人生也在高速上升吧.还有,自己搭建个服务就能在本地用上 AI ...

  4. 不可错过的效能利器「GitHub 热点速览 v.22.39」

    如果你是一名前端工程师且维护着多个网站,不妨试试本周榜上有名的 HTML-first 的 Qwik,提升网站访问速度只用一招.除了提升网站加载速度的 Qwik,本周周榜上榜的 Whisper 也是一个 ...

  5. 程序员的情人节「GitHub 热点速览 v.22.07」

    又是一年情人日,刚好还是发文的今天.也没什么好送的,送点程序员的浪漫--代码和开源项目吧.记得在本周特推查收这份来自程序员的独有浪漫. 本周 GitHub 霸榜的项目基本上都是老项目,从老项目中挖点新 ...

  6. 能动的电脑配件「GitHub 热点速览 v.22.11」

    看到这个标题就知道硬核的 B 站 UP 主稚晖君又更新了,本次带来的是一个造型可爱的小机器人.除了稚晖君这个一贯硬核的软硬件项目之外,本周也有很多有意思的新项目,像 Linux 服务监控小工具 Ray ...

  7. 这就是艺术「GitHub 热点速览 v.22.25」

    作者:HelloGitHub-小鱼干 不知道写了那么久代码的你,是否还记得"代码写诗"这个词,它是用来形容代码的优雅.但是本周的项目,虽然你看到的是代码的成品,也会惊讶于它的艺术感 ...

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

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

  9. 一键到位「GitHub 热点速览 v.22.32」

    作者:HelloGitHub-小鱼干 上上周在 B 站观看了智能键盘--瀚文的制作过程,本周 GitHub 热榜上出现了它的软硬件开源项目 HelloWord-Keyboard,如果你的动手能力强不妨 ...

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

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

随机推荐

  1. CentOS 7 firewalld 配置详解

    1.在CentOS 7里有几种防火墙共存:firewalld.iptables.ebtables. 默认是使用firewalld来管理netfilter子系统,不过底层调用的命令仍然是iptables ...

  2. day42-反射01

    Java反射01 1.反射(reflection)机制 1.1反射机制问题 一个需求引出反射 请看下面问题: 根据配置文件 re.properties 指定信息,创建Cat对象并调用方法hi clas ...

  3. PAT (Basic Level) Practice 1014 福尔摩斯的约会 分数 20

    大侦探福尔摩斯接到一张奇怪的字条: 我们约会吧! 3485djDkxh4hhGE 2984akDfkkkkggEdsb s&hgsfdk d&Hyscvnm   大侦探很快就明白了,字 ...

  4. .NET平台下一个你不知道的框架,我只想说两个字:“牛逼”

    框架内容 零度框架是一套基于微服务和领域模型驱动设计的企业级快速开发框架,基于微软 .NET 6 + React 最新技术栈构建,容器化微服务最佳实践,零度框架的搭建以开发简单,多屏体验,前后端分离, ...

  5. Springboot 之 Filter 实现超大响应 JSON 数据压缩

    简介 项目中,请求时发送超大 json 数据外:响应时也有可能返回超大 json数据.上一篇实现了请求数据的 gzip 压缩.本篇通过 filter 实现对响应 json 数据的压缩. 先了解一下以下 ...

  6. 云原生时代的DevOps平台设计之道

    开发人员与运维人员是 IT 领域很重要的两大人群,他们都会参与到各种业务系统的建设过程中去.DevOps 是近年间火爆起来的一种新理念,这种理念被很多人错误的解读为"由开发人员(Dev)学习 ...

  7. 齐博x1动态改变标签调用不同频道的数据

    标签默认需要设置标签参数 type 指定调用哪个频道的数据,比如下面的代码,需要默认指定商城的数据, {qb:tag name="qun_pcshow_shop001" type= ...

  8. Linux正则表达式与grep

    bash是什么 bash是一个命令处理器,运行在文本窗口中,并能执行用户直接输入的命令 bash还能从文件中读取linxu命令,称之为脚本 bash支持通配符.管道.命令替换.条件判断等逻辑控制语句 ...

  9. 自动化利器 Ansible - 从了解到应用

    本文说明 本系列使用 ansible 2.9.27 版本来说明和汇总相关信息. # cat /etc/system-release Red Hat Enterprise Linux Server re ...

  10. 关于ASP.NET Core WebSocket实现集群的思考

    前言 提到WebSocket相信大家都听说过,它的初衷是为了解决客户端浏览器与服务端进行双向通信,是在单个TCP连接上进行全双工通讯的协议.在没有WebSocket之前只能通过浏览器到服务端的请求应答 ...