本周 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. centos7中配置java + mysql +jdk +使用jar部署项目

    centos7中配置java + mysql +jdk  +使用jar部署项目 思维导图 1. 配置JDK環境 1.1下载jdk安装包 Java Downloads | Oracle 1.2 将下载j ...

  2. Codeforces Round #442 (Div. 2) B. Nikita and string

    题意:求最长可以分a b a为三部分子串,a b a可以为空 思路在代码里 1 #include<cstdio> 2 #include<iostream> 3 #include ...

  3. P1896 [SCOI2005] 互不侵犯 方法记录

    原题链接 [SCOI2005] 互不侵犯 题目描述 在N×N的棋盘里面放K个国王,使他们互不攻击,共有多少种摆放方案.国王能攻击到它上下左右,以及左上左下右上右下八个方向上附近的各一个格子,共8个格子 ...

  4. SpringBoot-JavaMailSender接口实战

    相信使用过Spring的众多开发者都知道Spring提供了非常好用的JavaMailSender接口实现邮件发送,在Spring Boot的Starter模块中也为此提供了自动化配置. 下面通过实例来 ...

  5. 【软件学习】如何下载安装Mathtype,并将其加载至Word

    参考视频: https://www.bilibili.com/video/BV1cV41117SR?from=search&seid=11224207889712369816 首先,需要安装. ...

  6. for循环小九九乘法表

    for(int i=1;i<=9;i++) { for(int j=1;j<=i;j++) { System.out.print(i+"*"+j+"=&quo ...

  7. servlet过滤器--使用过滤器统计网站访问人数的计数(注解形式)

    文章目录 1.什么是过滤器? 2.过滤器核心对象 3.过滤器创建和配置 4.举例子 1.什么是过滤器? 主要用于对客户端的请求进行过滤处理,再将经过过滤后的请求转交给下一个资源. 2.过滤器核心对象 ...

  8. Java并发编程 | Synchronized原理与使用

    Java提供了多种机制实现多线程之间有需要同步执行的场景需求.其中最基本的是Synchronized ,实现上使用对象监视器( Monitor ). Java中的每个对象都是与线程可以锁定或解锁的对象 ...

  9. 【原创】在RT1050 LittleVgl GUI中嵌入中文输入法框架

    时隔一年多终于又冒泡了,哎,随着工作越来越忙,自己踏实坐下来写点东西真是越来越费劲,这篇文章也是准备了好久好久才打算发表出来(不瞒大家,东西做完好久了,文章憋了一年了,当真"高产" ...

  10. 剑指offer20题表示数值的字符串:这题实在是太优雅了

    目录 前言 一.憨憨初解 1.思路 2.代码 3.战绩 4.反思 二.看懂再解 1.思路 2.代码 3.C++版战绩 总结 前言 题目来源:https://leetcode.cn/problems/b ...