GitHub 开源项目发布雷达 - 201904
GitHub 开源项目发布雷达 - 201904
GitHub Blog 在 20190521 发布了 4 月份的开源项目发布雷达。GitHub 开源项目发布雷达分享和推荐的是那些令人兴奋的项目的新版本发布,这些项目有些是震惊世界的前沿技术,也有是工程师周末的副产品。重要的是,这些项目因为所有人的共同参与,因为 GitHub 的存在而诞生。
SuperTuxKart
SuperTuxKart 是一个 3D 竞速类游戏,支持的模式包括传统竞速、计时赛和战斗模式等等。版本 1.0 开始支持联网的多玩家模式,意味着不同的人可以通过网络在世界各地组队竞技,同时 1.0 版本增加了夺旗模式的新赛道来测试你的新技术。一如既往,SuperTuxKart 是免费的,支持 Windows、macOS 和 Linux 。
Termshark 1.0
Termshark 是一个图形化的命令行网络分析器,它是为 Wireshark 中的 tshark 开发的。虽然 Termshark 1.0 是项目的首次发布,但是它已经能够通过命令行终端帮助你分析网络拥塞情况。
项目地址:https://github.com/gcla/termshark
United States Web Design System 2.0
United States Web Design System (USWDS) 是帮助联邦代理机构为大众创建 Web 服务的代码、工具、文档集合。经过 两年的努力 USWDS 2.0 使其设计形式更现代化、更易使用和更一致。
Docz 1.0
Docz 是一个帮助你快速创建文档的工具,无需任何配置,只需要用 Markdown 即可。版本 1.0 的发布增加了可插拔的插件系统,同时集成了 Gatsby (基于 React 的网站生成系统)。
MDX 1.0
你是不是曾经有犹豫过选择 JSX 还是 Markdown? 现在你不用选择了,MDX 可以直接嵌入 JSX 到 Markdown 文档里面,MDX 同时支持 JSX 的库,如 React,Vue,Gatsby。MDX 发布了其里程碑的 1.0 版本,欢迎使用。
GB Studio 1.0
GB Studio 是一个帮助你自顶向下设计 2D 冒险类游戏的工具,哪些形式的游戏呢?就是你曾经在任天堂游戏机上玩过的游戏。GB Studio 出色的图形化脚本系统能够帮助没有任何代码编程经验的你制作一款游戏,同时支持在浏览器、模拟器上运行。
不知道你是不是记得?Game Boy 最初发布是在 1989 年 4 月 21,距今已经过去 30 年了。
Uppy 1.0
Uppy 是一个 JavaScript 的文件上传库,提供了一个好用的接口来上传文件和图片。通过 Server 端模块的支持,可以直接通过 Instagram 和 Dropbox 的链接来上传文件。版本 1.0 发布经过了长达三年的打磨,经历了众多功能的开发(如本地化)和设计调整。
Fluent 1.0
Fluent 是一个创建本地化系统的工具,相比一个一个语言翻译,该工具帮助翻译人员更轻松的完整本地化任务。该工具可以遵循特定语言针对名词、形容词和数词的规则来翻译。版本 1.0 的发布标志着项目的语法开始趋于稳定。
你知道吗?Mozilla 社区本地化平台 Pontoon 使用 Fluent 支持 Firefox 浏览器的本地化。
Caddy 1.0
Caddy 是一个强调安全的 Web 服务器,它将 HTTPS 设置为默认特性,同时可以自动拉取 Let’s Encrypt 证书。Caddy 最近刚刚发布了 1.0 版本,同时其承诺将会保证版本的向前兼容。此次发布增加了新的命令行参数,通过插件简化了项目的构建,以及一些功能修复。
项目地址:https://github.com/mholt/caddy
Babylon.js 4.0
如果绘图时二维已经不能满足你,那 Babylon.js 或许是能满足你的 WebGL 图形库。新发布的 4.0 版本缩小了下载大小,提高了渲染性能,同时一个强大的场景式调试器能够帮助开发者和设计师调试图像。
其他闪光点项目
Quinesnake
Quinesnake 的创意吸引了我们。它不仅仅是一个经典的贪吃蛇游戏,它同时是一个自产生程序。What?什么是自产生程序?自产生程序是一个能够将程序本身的源代码作为输出的程序。Quinesnake 贪吃蛇游戏执行时通过自己的编译程序编译并执行,将源代码打印到屏幕,然后就可以在代码上面玩贪吃蛇游戏了。
关于自产生程序可能用文字解释起来比较困难,我们看一下下面这个例子,打开 Python 交互式的命令行。
>>> s = "'s = ' + repr(s) + '\\nprint(' + s + ')'"
>>> print('s = ' + repr(s) + '\nprint(' + s + ')')
s = "'s = ' + repr(s) + '\\nprint(' + s + ')'"
print('s = ' + repr(s) + '\nprint(' + s + ')')
可以看到没有任何输入的两行代码,他们的输出是源代码自己。为什么要强调没有任何输入呢,因为通过输入输出的话,是可以作弊的。比如如下程序的输出也是源代码本身,但是是通过读取代码文件实现的。
#!/bin/sh
cat $0
是不是迫不及待想要研究一下了?自产生程序也称为 Quine,可以参考 http://www.nyx.net/~gthompso/quine.htm 。
更多详情参考:一个输出是程序本身源代码的程序
项目地址:https://github.com/taylorconor/quinesnake
Tinkersynth
Tinkersynth 是一个衍生式生成艺术作品的项目,你可以通过配置简单的线条来自动生成一副艺术作品,这些简单的线条可以是弯曲的、折叠的、甚至是看上去有些迷幻的。生成的作品是矢量图可以直接下载,同时也可以生成黑白的印刷式的图像。
原文链接:https://github.blog/2019-05-21-release-radar-april-2019/
更多精彩请扫码关注如下公众号。