eslint 支持多线程并发 Lint
ESLint 于 2025/08/15 日合并了一个 PR:feat: multithread linting,这个 PR 解决了一个长达十年之久的 issue,是一个非常大的优化项。下面一起来看下这个 PR 改动了什么。
ESLint 于 2025/08/15 日合并了一个 PR:feat: multithread linting,这个 PR 解决了一个长达十年之久的 issue,是一个非常大的优化项。下面一起来看下这个 PR 改动了什么。
在目前火热的 AI Coding 概念的背后,前端工具链生态也在蓬勃发展。目前新一代工具如Vite
、Bun
、 Rspack
等已经不局限于只做Webpack
那样的打包工具,而是围绕性能、开发体验和可扩展性构建完整的前端工具解决方案,各自形成了独特的技术路线与社区氛围。在这篇文章中,我将浅显得对比 Rspack、Vite 与 Bun 的生态布局,并在后续持续关注并更新这篇文章的内容。
距离上一篇介绍shadcn
文章已过去一年之久啦😅。在这一年多的时间内,随着AI Generate Web
技术的快速发展,shadcn
凭借其 AI 友好的组件开发模式,生态发展得极为庞大。shadcn
本身也经过了一些架构调整,新增了一些特性,比如add
命令支持第三方registry
以及支持build
命名等。本篇在解析shadcn
CLI 的基础上详细介绍一下如何加入shadcn
组件生态。
Shadcn ui 是最近比较火的一个 React 组件库,官方介绍其并非组件库,因为它并非基于 npm package 的形式来维护,而是通过 nodejs 命令支持将组件源码直接复制到你的项目中。
本篇文章从使用到分析 shadcn cli 命令源码的实现,来深入了解这个组件库内部的一些原理。
TypeScript 全局类型定义或者覆盖在日常开发中经常使用,本文主要介绍几种常见的方式。
当我们说到图片懒加载、页面数据的滚动加载这些体验设计时,一般能够想到基于scroll
事件,通过getBoundingClientRect
方法获取元素相对于视口偏移量top
,来判断元素是否可见,demo 如下
这种实现方式较为繁琐,但是现在我们有了IntersectionObserver
API,可以大大简化这些通过计算元素偏移量来判断可视性的逻辑。
无损压缩目前使用最广泛的图像格式是 PNG,但是近几年也出现了许多新的压缩算法标准,以期望替代 PNG,提供更好的图像压缩效果。
说完了有损压缩和无损压缩的图像格式,来整理下 nodejs 方面图像处理相关的库。
根据 httpachive 的统计数据,在统计的 5,431,533 个 PC 页面中:
图像流量平均占页面的 44.5%(1032.0 KB -> 2317.8 KB)
请求数量平均占页面的 33%(25 -> 76)
所以图像数据在网站内容部分占比巨大,使用合适的图像格式能有效降低网站的流量带宽,同时降低网络传输延时,提升用户体验。
有损压缩目前使用最广泛的是 JPEG 压缩算法和文件格式,下面来整理一下三种有损压缩格式。