本文首发于「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. 后端程序员之路 35、Index搜索引擎实现分析4-最终的正排索引与倒排索引

    # index_box 提供搜索功能的实现- 持有std::vector<ITEM> _buffer; 存储所有文章信息- 持有ForwardIndex _forward_index;  ...

  2. Image Super-Resolution via Sparse Representation——基于稀疏表示的超分辨率重建

    经典超分辨率重建论文,基于稀疏表示.下面首先介绍稀疏表示,然后介绍论文的基本思想和算法优化过程,最后使用python进行实验. 稀疏表示 稀疏表示是指,使用过完备字典中少量向量的线性组合来表示某个元素 ...

  3. CloudQuery v1.3.4 版本更新

    Hello,大家好久不见! 上一个版本(v1.3.3)发布已是春节前的事情了,此次 v1.3.4 是 CloudQuery 社区版在辛丑牛年的第一个版本发布.本次更新增加了新功能,优化了原有功能点.同 ...

  4. Sentinel熔断降级

    sentinel流量控制 Sentinel流量控制&服务熔断降级介绍 流量控制介绍 在这里我用景区的例子解释一下 一个旅游景点日接待游客数量为8K,8K以后的游客就无法买票进去景区. 对应编程 ...

  5. LAB1 启动操作系统

    从机器上电到运行OS发生了什么? 在电脑主板上有一个Flash块,存放了BIOS的可执行代码.它是ROM,断电不会丢掉数据.在机器上电的时候,CPU要求内存控制器从0地址读取数据(程序第一条指令)的时 ...

  6. android分析之Parcel

    将数据打包,跨进程传输(通过Binder).看看这货究竟是啥玩意: Parcel.java : public final class Parcel { private static final boo ...

  7. arcgis10.2 全套安装教程

    一.安装LicenseManager 1.运行在licensemanager目录下的Setup.exe 2.安装完成后点击stop停止服务,然后点击"OK" 3.选择ArcGIS1 ...

  8. subprocess如何设置命令超时时间

    一.subprocess如何设置命令超时时间 最近遇到一个问题,就是我需要在服务器上执行某些shell命令,但是有些命令失败的时候是不会自动终止的,只会一直停在那里,很耗时间. 因此想到了设置超时时间 ...

  9. 在Windows下配置Linux远程开发环境

    在Windows下配置Linux远程开发环境 欢迎光临我的个人博客 https://source.chens.life/Configure-Linux-remote-development-envir ...

  10. Android Studio 之 通过 Intent 完成点击按钮实现页面跳转

    •Intent 简介 Intent 是 Android 程序中各组件之间进行交互的一种重要方式: 它不仅可以指明当前组件想要执行的动作,还可以在不同组件之间传递数据. Intent 有多个构造函数,其 ...