本文首发于「HelloGitHub」微信公众号,搜索「HelloGitHub」点击关注解锁更多宝藏!

作者:HelloGitHub-小鱼干

新手开始学习的时候,都会遇到一个问题:如何开始学 xx?See,这周的 GitHub 热榜项目们就是带你来学习新技术的,在这个五一假期学习下 3D 游戏的着色、阴影处理,了解下 3D 游戏的开发过程如何?实在不行,很多 HG 小伙伴说过的问过如何写一个操作系统?rust-raspberrypi-OS-tutorials 带你从写个可用于 ARM 架构的操作系统开始。此外,clean-code-javascript 教你写出优雅、可读性高的代码,Just Try it~~

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

  • 本文目录

      1. 本周特推
      • 1.1 手把手教你做 3D 游戏:3d-game-shaders-for-beginners
      • 1.2 写个操作系统:rust-raspberrypi-OS-tutorials
      1. GitHub Trending 周榜
      • 2.1 Python 函数秒变微服务:opyrator
      • 2.2 终端命令校对器:thefuck
      • 2.3 HTML5 窗口管理器:winbox
      • 2.4 Firebase 替代品:supabase
      • 2.5 JS 代码整洁之道:clean-code-javascript
      1. 往期回顾

1. 本周特推

1.1 手把手教你做 3D 游戏:3d-game-shaders-for-beginners

本周 star 增长数:700+

3d-game-shaders-for-beginners 是一个手把手教你一步步实践,从 SSAO、着色、光影处理、法线贴图(凸凹贴图的一种表现)带你体验 3D 游戏的制作。

GitHub 地址→https://github.com/lettier/3d-game-shaders-for-beginners

1.2 写个操作系统:rust-raspberrypi-OS-tutorials

本周 star 增长数:700+

rust-raspberrypi-OS-tutorials 是一个手把手教你写个树莓派操作系统的教程,它详细地介绍了如何从零开始为嵌入式系统编写独立的操作系统内核,如果你是 ARM 64 位 ARMv8-A 的新手不妨来跟着它学习下。

GitHub 地址→https://github.com/rust-embedded/rust-raspberrypi-OS-tutorials

2. GitHub Trending 周榜

2.1 Python 函数秒变微服务:opyrator

本周 star 增长数:900+

Opyrator 可快速将你的 Python 函数变为可在生产环境使用的微服务,你可以通过 HTTP API /可交互的 UI 来部署和访问你的服务。Opyrator 由 FastAPI、Streamlit 和 Pydantic 提供服务。

GitHub 地址→https://github.com/ml-tooling/opyrator

2.2 终端命令校对器:thefuck

本周 star 增长数:1,050+

The Fuck 是个优秀的命令输出校验工具,它能自动帮你校对输入命令并执行正确的指令,当你输 git brnch 再也不会看到该死的提示语 git: 'brnch' is not a git command. See 'git --help'. The Fuck 会自动帮你执行 git branch 命令,更别提写错的 puthon 它已经能理解为是 python,是不是很棒。

GitHub 地址→https://github.com/nvbn/thefuck

2.3 HTML5 窗口管理器:winbox

本周 star 增长数:2,150+

New WinBox 是一个专业的 HTML5 Web 窗口管理器,它具有轻量、出色性能、无依赖、支持定制化开发等特性,可用于桌面应用、窗口、弹窗等场景下。

GitHub 地址→https://github.com/nextapps-de/winbox

2.4 Firebase 替代品:supabase

本周 star 增长数:1,950+

Supabase 使用企业级的开源工具构建 Firebase 特性,它是一个开源的 Firebase 替代品。特性:

  • Postgres 托管
  • 实时订阅
  • 身份验证和授权
  • 自动生成 API
  • 面板 ​

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

2.5 JS 代码整洁之道:clean-code-javascript

本周 star 增长数:900+

想写出优雅、阅读性高的 JS 代码吗?clean-code-javascript 收录了适用 JavaScript 的整洁代码之法,旨在教你写出可读、可复用、可重构的优雅代码。

GitHub 地址→https://github.com/ryanmcdermott/clean-code-javascript

3. 往期回顾

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


关注 HelloGitHub 公众号 第一时间收到更新。

还有更多开源项目的介绍和宝藏项目等待你的发现。

学就完事了!万星项目带你做 3D 游戏——GitHub 热点速览 v.21.18的更多相关文章

  1. 年底了是时候学新技术了「GitHub 热点速览 v.21.52」

    作者:HelloGitHub-小鱼干 年底了,又有新技术冒出来需要你来 Pick 了,第一个先要被 Pick 的是即将到来的元旦英文版:Happy New Year,再来的话就是这周非常火的新一代爬虫 ...

  2. 大型项目源码集合「GitHub 热点速览 v.21.39」

    作者:HelloGitHub-小鱼干 代码,尤其是优雅规范的代码,一直都是学习编程技巧的捷径.虽然有实用的代码小片段,能拯救当前业务的燃眉之急,但是真要去提升自己的技能还是得从大型的项目,尤其是有一定 ...

  3. 命名秘籍周获近五千星——GitHub 热点速览 v.21.04

    作者:HelloGitHub-小鱼干 命名一直是编程界的难点,这次 naming-cheatsheet 就能帮上你的忙.按照它的 SID(Short..Intuitive.Descriptive)原则 ...

  4. 万星开源项目强势回归「GitHub 热点速览 v.22.38」

    本周霸榜的 GitHub 项目多为老项目,比如:老面孔的 theatre 凭借极其优秀的动画功底连续三天霸榜 TypeScript 类目.借 Figma 被 Adobe 收购之风,又出现在 GitHu ...

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

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

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

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

  7. 什么新东西值得学「GitHub 热点速览 v.22.29」

    上周 18k+ 的项目 bun 这周又获得 7k+ star,是时候了解下它背后的编程语言 zig 了,它并不是一门新的语言,伴随着 bun 的风靡,zig 本周也上了 GitHub 热榜.同样,可以 ...

  8. GitHub 热点速览 Vol.21:Go 新手起手式,学就完事儿了

    作者:HelloGitHub-小鱼干 摘要:说到学习之道,方法很重要,好的学习方法能让你比他人更快地入门到精通,比如本周被 3k 多人 pick 的 learngo 项目,它收录了多个例子和练习,新手 ...

  9. NB 的开源项目遍地开花——GitHub 热点速览 Vol.41

    作者:HelloGitHub-小鱼干 本周的 GitHub 热点速览的关键词便是 nb,也是本周特推之一的项目名字,这个功能如名字一般 nb 的项目是一个脚本,帮你处理笔记.书签.归档和知识库应用程序 ...

随机推荐

  1. 关于 HTTP 后端人员需要了解的 20+ 图片!

    前言 当您网上冲浪时,HTTP 协议无处不在.当您浏览网页.获取一张图片.一段视频时,HTTP 协议就正在发生. 本篇将尽可能用简短的例子和必要的说明来让您了解基础的 HTTP 知识. 目录: 什么是 ...

  2. 使用gitlab构建基于docker的持续集成(二)

    使用gitlab构建基于docker的持续集成(二) gitlab docker aspnetcore Centos配置gitlab镜像并且启动 Centos配置防火墙 windows上访问gitla ...

  3. redis数据结构和对象二

    跳跃表(skiplist) 跳跃表是一种有序数据结构.跳跃表支持平均O(logN),最坏O(N)复杂度的节点查找,大部分情况下,跳跃表的效率可以和平衡树相媲美,并且因为跳跃表的实现比平衡树简单,所有不 ...

  4. PAT-1167(Cartesian Tree)根据中序遍历序列重建最小堆

    Cartesian Tree PAT-1167 一开始我使用数组进行存储,但是这样可能会导致无法开足够大的数组,因为树如果是链表状的则无法开这么大的数组(虽然结点很少). 正确的解法还是需要建树,使用 ...

  5. [GXYCTF2019]Ping Ping Ping 1

    进入界面 根据提示进行ping信号 看到网页的内容就想到经典的Linux命令执行,使用命令执行的管道符 "  |  "尝试列出文件 FLAG应该在Flag.php里面 构造play ...

  6. Keytool 工具使用

    Keytool 管理私钥仓库(keystore)和与之相关的 X.509 证书链(用以验证与私钥对应的公钥),也可以用来管理其他信任实体 keytool 将密钥和证书存储在一个所谓的密钥仓库中,缺省的 ...

  7. WPF 基础 - ControlTemplate

    常用 ControlTemplate 的地方:Control 的 Template 属性 运用效果举例:穿着 CheckBox 外衣的 ToggleButton,披着温度计的 ProgressBar. ...

  8. Nacos常用配置

    属性配置 1. 配置年级是否显示 这里配置的屏蔽的年级,在运营后台去删掉相关id就行了 2. 过滤标签显示特定课程数据 指定 yaml 文件显示 course.tagCourse.tagName=寒假 ...

  9. 制作API离线chm帮助文件教程

    当我们开发好一个通信库的时候,我们希望给这个通信库配备一个帮助文档,最好的方式,就是有一个离线的chm版本的API文档,这样别人在使用的时候,就可以清楚看到命名空间.类的结构,同时也能看到每个方法和属 ...

  10. 2020-2021 ACM-ICPC, Asia Seoul Regional Contest

    C. Dessert Café: 题意: 给你一个N个节点的树,树上有m个房子,问树上有几个节点是在两个房子之间的. 思路:我们发现只要是该节点的子树里包括了所有节点或者只有一个节点,那么这个结点肯定 ...