本文首发于「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. 第七届蓝桥杯JavaB组——第7题剪邮票

    题目: 剪邮票 如[图1.jpg], 有12张连在一起的12生肖的邮票. 现在你要从中剪下5张来,要求必须是连着的. (仅仅连接一个角不算相连) 比如,[图2.jpg],[图3.jpg]中,粉红色所示 ...

  2. go 报 need type assertion

    responese_total := m["responses"].([]interface{})[0].(map[string]interface{})["hits&q ...

  3. Hexo的详细搭建过程——小白的血泪经历QAQ

    Hexo的详细搭建过程 环境要求: node.js git 这里提供Centos8.2下的安装过程: dnf module list nodejs dnf module install nodejs: ...

  4. 【转载】Android的事件分发(dispatchTouchEvent),拦截(onInterceptTouchEvent)与处理(onTouchEvent)

    出处:https://blog.csdn.net/caifengyao/article/details/65437695 在Android中,View的结构是树状的,所以,当触发触摸事件的时候,其事件 ...

  5. Mock 框架 Moq 的使用

    Mock 框架 Moq 的使用 Intro Moq 是 .NET 中一个很流行的 Mock 框架,使用 Mock 框架我们可以只针对我们关注的代码进行测试,对于依赖项使用 Mock 对象配置预期的依赖 ...

  6. 医学图像配准 | Voxelmorph 微分同胚 | MICCAI2019

    文章转载:微信公众号「机器学习炼丹术」 作者:炼丹兄(已授权) 联系方式:微信cyx645016617(欢迎交流) 论文题目:'Unsupervised Learning for Fast Proba ...

  7. slickgrid ( nsunleo-slickgrid ) 4 解决区域选择和列选择冲突

    slickgrid ( nsunleo-slickgrid ) 3 解决区域选择和列选择冲突 之前启用区域选择的时候,又启用了列选择(CheckboxSelectColumn),此时发现选择状态与区域 ...

  8. EF Core 原理从源码出发(二)

    紧接着我的上一篇博客,上回分析到ef 一个重要的对象,changetracker这个对象,当我们向DbContext添加对象的时候我们会调用如下代码. 1 private EntityEntry< ...

  9. Java 语言基础 (初识Java语言, 变量和数据类型, 运算符, 流程控制语句, 数组)

    初始 Java 语言 Java SE -- Java Platform, Standard Edition 是 Java 平台的基础 Java SE 以前称为 J2SE, 可以编写桌面应用和基于 we ...

  10. 攻防世界 reverse 进阶 notsequence

    notsequence  RCTF-2015 关键就是两个check函数 1 signed int __cdecl check1_80486CD(int a1[]) 2 { 3 signed int ...