本文首发于「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. 五. SpringCloud服务降级和熔断

    1. Hystrix断路器概述 1.1 分布式系统面临的问题 复杂分布式体系结构中的应用程序有数十个依赖关系,每个依赖关系在某些时候将不可避免地失败.这就造成有可能会发生服务雪崩.那么什么是服务雪崩呢 ...

  2. es6 快速入门 —— 函数

    其他章节请看: es6 快速入门 系列 函数 函数是所有编程语言的重要组成部分,es6之前函数语法一直没什么变化,遗留了许多问题,javaScript开发者多年来不断抱怨,es6终于决定大力度更新函数 ...

  3. 【pytest官方文档】解读fixtures - 1.什么是fixtures

    在深入了解fixture之前,让我们先看看什么是测试. 一.测试的构成 其实说白了,测试就是在特定的环境.特定的场景下.执行特定的行为,然后确认结果与期望的是否一致. 就拿最常见的登录来说,完成一次正 ...

  4. CentOS 7关闭firewalld启用iptables 开放端口

    在CentOS7中,有很多CentOS 6中的常用服务发生了变化. 其中iptables是其中比较大的一个.防火墙iptables被firewalld取代. 本文将介绍,如果采用systemctl关闭 ...

  5. C# 应用 - 多线程 4) Task cancel

    1. 操作取消 1.1 步骤 实例化 CancellationTokenSource 对象,该对象管理取消通知并将其发送给单个取消标记 将 CancellationTokenSource.Token ...

  6. 【翻译】内部API的价值

    内部api的设计,主要是为了简化软件的开发,简化系统和操作过程.目前绝大多数用例是这样的. 内部api经常被忽略,因为它们是针对内部开发人员的.这种类型的api通常使用于特定公司及其部门的专用数据.尽 ...

  7. mysql数据库的数据备份,以及开启日志

    导出数据: location代表需要保存的数据文件的位置,默认保存在 C:\ProgramData\MySQL\MySQL Server 5.7\Data(Windows10系统位置,其他系统位置自行 ...

  8. CentOS 7 卸载 OpenJDK 安装 OracleJDK

    查看 JDK 安装版本 java -version java version 1.7.0_51 OpenJDK Runtime Environment ( rhel-2.4.5.5.el7-x86_6 ...

  9. C++单重继承分析

    code[class*="language-"], pre[class*="language-"] { color: rgba(51, 51, 51, 1); ...

  10. javascript常用方法封装

    1,获取链接上的参数 getQueryString = (name, search) => { search = search || window.location.search.substr( ...