前端周刊 | Vue 3将成为新默认版本, Nginx之父离职, Faker.js成为社区控制项目, Axios v0.25发布
前端周刊第六期来啦,快来看看本周发生了哪些新鲜事吧~
科技趣闻
1. Vue 3 将成为新的默认版本
2022年1月20日,Vue创始人尤雨溪宣布,Vue 3 将在 2022 年 2 月 7 日 成为新的默认版本!
届时,Vue 及相关库会发生如下变化:
npm install vue 将默认安装 Vue 3; 所有其他官方 npm 包的 latest 发布标签将指向其 Vue 3 的兼容版本; 所有的文档和官方站点将默认切换到 Vue 3 版本; Vue 组织下的所有 GitHub 仓库将把默认分支切换到 Vue 3 对应的版本; 新的开发者工具扩展,同时支持 Vue 2/Vue 3。
详见:https://zhuanlan.zhihu.com/p/460055155
2. Nginx之父离职
2022年1月18日,Nginx 官网发布了一篇告别信,正式宣告 Nginx 的作者和 Nginx Inc. 的联合创始人 Igor Sysoev 退出 Nginx 和 F5 Networks。
从 2002 年发展至今,Nginx 已经成为全球最受欢迎的 Web 服务器。根据 W3Techs 的统计,截至 2022 年 1 月,Nginx 占据了全球 Web 服务器市场 33% 的份额。排在第二位的是 Apache,份额为 31%。
告别信提到 Igor 从 Nginx 离职后将从事个人项目,目前尚不清楚他具体会涉及哪些项目。下图右一为Igor Sysoev:
告别信原文:https://www.nginx.com/blog/do-svidaniya-igor-thank-you-for-nginx
3. Faker.js 成为社区控制的项目
在 Faker.js 作者恶意破坏自己的开源项目 Faker.js 和 colors.js 一周后,Faker.js 现在已成为由社区控制的项目。目前项目的管理团队由八名来自不同公司的工程师组成。团队表示经过他们的努力,Faker.js 主包被删除之后依然可以在产品中使用 Faker。
Faker.js 是十分流行的 Node.js 工具库,提供了各种类型的模拟数据,用于开发调试。最早的 Faker 项目于 2004 年由 Jason Kohles 首次使用 Perl 实现。后来 Marak 实现了 Node.js 版本,并投入了大量精力和时间来维护 Faker.js。
上周,项目作者 Marak Squires 主动删除了开源库faker.js的所有代码,导致数千个应用程序无限输出乱码。此事迅速掀起开源社区热议。目前,由社区控制的 Faker.js 项目已获得了不少开发者的认可。
4. 微软 Edge 浏览器推出 Web 协议处理程序
1 月 21 日消息,微软宣布,从 Edge 96 版本开始,Web 应用将能够在浏览器中使用协议处理程序。最新功能将允许已安装的 Web 应用程序(或 PWA)导航预设或自定义协议。
已安装的 Web 应用程序也将能够向操作系统注册为协议处理程序,并在调用特定协议后启动。换句话说,用户可以将网页设置为默认处理程序,比如用户想创建电子邮件,系统将默认打开浏览器中的某个网站。
此外,开发者可以通过注册以 web+ 为前缀的协议来生成 Web 应用程序自定义方案。协议处理程序可用于 Web 应用通信,其中一个应用直接调用另一个应用并通过自定义协议链接传递数据。
微软表示,协议处理程序在 Windows、Linux 和 Mac 中受支持,并在 Edge 96 浏览器中发布。微软已将这项工作贡献给 Chromium 开源项目,现在其他基于 Chromium 的浏览器也可以使用该功能。
更新速递
1. Deno v1.18.0 发布
2022年1月20日,Deno v1.18 正式发布,主要更新包括:
已完成 Web Cryptography API; 测试步骤API稳定化; 改进FFI API; Error.cause可以在所有堆栈跟踪中显示; 覆盖范围更加强大; 启动时间得到优化; V8升级到9.8版本。
Deno 是一个现代且安全的 TypeScritp 和 JavaScript 运行时,基于 V8 和 Rust 实现。Promises、async/await、ES模块和异步迭代器等在 Deno 中都是一等公民。为了确保 JavaScript 的未来发展将继续适用于 Deno 和服务器端 JavaScript 运行时,Deno 公司已加入负责 JavaScript 标准(ECMA-262)的 ECMA 国际标准组织,并参与到TC39工作组的工作中,Luca Casonato 是 Deno 在 TC39 的主要代表。
更新内容详见:https://deno.com/blog/v1.18
2. Axios v0.25.0 发布
2022年1月18日,Axios v0.25.0 版本正式发布,主要更新包括:
修复 maxBodyLength 限制; 在 utils.js 中使用原生 Array.isArray() ; 在流结束回调中添加错误处理; 缺少 url 时添加错误处理;
Axios 是一个基于 promise 的 HTTP 库,可以用在浏览器和 node.js 中。
更新内容详见:https://github.com/axios/axios/releases/tag/v0.25.0
3. ESLint v8.7.0 发布
2022年1月15日,ESLint v8.7.0 版本正式发布。ESLint最初是由 Nicholas C. Zakas 于2013年6月创建的开源项目。它的目标是提供一个插件化的 javascript 代码检测工具。
更新内容详见:https://eslint.org/blog/2022/01/eslint-v8.7.0-released
开源趋势
1. focalboard
Focalboard 是 Trello、Notion 和 Asana 的一个开源、自我托管的替代品。它是一个项目管理工具,帮助定义、组织、跟踪和管理跨团队的工作,使用熟悉的看板视图。
Star⭐:8.8k
本周Star⭐️:1535
Github地址:https://github.com/mattermost/focalboard
2. mometa
mometa是面向研发的低代码元编程,代码可视编辑,辅助编码工具,可以引入外部组件库建立物料库。mometa 不是传统主流的低代码平台,而是面向研发的、代码可视设计编辑平台;它更像是 dreamweaver、gui 可视编辑 之于程序员。
Star⭐:1.3k
本周Star⭐️:1038
Github地址:https://github.com/imcuttle/mometa
3. faker
Faker.js 是十分流行的 Node.js 工具库,提供了各种类型的模拟数据,用于开发调试。上周本项目本开源作者恶意破坏,目前该项目已被社区接手,根据本周的star增加数可见,由社区控制的 Faker.js 项目已获得了不少开发者的认可。
Star⭐:2.7k
本周Star⭐️:1017
Github地址:https://github.com/faker-js/faker
4. falso
falso用于在浏览器和 NodeJS 中创建大量模拟数据。
Star⭐:1.5k
本周Star⭐️:1001
Github地址:https://github.com/ngneat/falso
5. CyberChef
CyberChef 是一个用于加密、编码、压缩和数据分析的网络应用程序,被称为“网络版瑞士军刀”。CyberChef 是一个简单、直观的 Web 应用程序,用于在 Web 浏览器中执行各种“网络”操作。这些操作包括创建hexdumps、简单编码(如XOR或Base64)、复杂加密(如AES,DES和Blowfish)、数据压缩和解压缩、计算哈希和校验和、IPv6和X.509解析等等。
该工具旨在使技术和非技术分析人员能够以复杂的方式操作数据,而无需处理复杂的工具或算法。它是由分析师在其多年的10%创新时间进行构思、设计、构建和增量改进的。已经尽了一切努力以可读和可扩展的格式构建代码。
Star⭐:14.9k
本周Star⭐️:1003
Github地址:https://github.com/gchq/CyberChef
工具推荐
今天来推荐5个热门的SVG动画库。
1. BonsaiJS
BonsaiJS 是一个轻量级的 JavaScript 图形库,提供直观的图形 API 和 SVG 渲染器。从创建简单的图标到复杂的图表,它使我们可以使用关键帧完全控制SVG中的路径和动画效果。
BonsaiJS 的特点如下:
支持所有主流的浏览器,包括Chrome、Safari、Firefox 和 Opera; 提供关键帧和传统的动画; 支持HTML5的图形画布和SVG; 可以使用iFrame, Worker和Node来运行; 支持不同的资源(视频,图片,字体); 在设计上分开了选择和运行器。
官网地址:http://bonsaijs.org/
2. VivusJS
VivusJS是一个轻量级的 JavaScript 库,主要用来创建SVG动画。它提供了很多不同种类的动画,并允许根据需要编写脚本来绘制 SVG。此外,VivusJS 没有依赖关系。
VivusJS的特点如下:
提供了三种类型的动画:延迟、同步、一对一; 为路径和动画提供 5 个计时选项; 高性能; 允许创建自己的 SVG; 可以在安装前使用Vivus Instant 进行测试。
官网地址:http://maxwellito.github.io/vivus/
3. SVG.js
SVG.js是一款操作SVG和创建SVG动画的轻量的JavaScript库。它允许我们从大小、位置和颜色三个方面来为SVG设置动画。
SVG.js的特点如下:
语法易于阅读和理解; 压缩后仅有16kb; 完全支持剪切路径和不透明蒙版。
官网地址:https://svgjs.dev/docs/3.0/
4. Snap.svg
Snap.svg是一个现代 JavaScript 库,它专为现代浏览器设计,支持所有最新的SVG功能,比如遮罩、裁剪、图案、全渐变等。
Snap.svg的特点如下:
支持最新的SVG功能; 可以在 Illustrator、Inkscape 或 Sketch 中创建 SVG 内容,然后使用 Snap 对其进行动画处理或其他方式对其进行操作; 无需使用 Snap 生成 SVG 内容即可使用 Snap; 完全免费并且开源。
官网地址:http://snapsvg.io/
5. Lazy Line Painter
Lazy Line Painter是一个用于SVG路径动画的现代JavaScript库。它专门用于路径动画。还提供了一个名为 Lazy Line Composer 的在线工具,可让在几秒钟内创建动画 SVG。
官网地址:http://lazylinepainter.info/
文章推荐
1. 我的 2021 年终总结
总结了我的2021,一个应届毕业生的学习和成长之路,文末有抽奖哦~
2. 最佳 React 图标库推荐
推荐一些适合React项目的图标库。
3. 现代 CSS 颜色指南
介绍了CSS中颜色体系,包含命名颜色、RGB、Hex、HSL、HWB、LAB、LCH、CMYK。
4. 前端周刊第5期
主要内容:AngularJS 停止长期支持; 知名开源库遭开发者恶意破坏; GitHub开源趋势; Firefox 96发布。