OpenReplay 博客
深入解析 pnpm 的 Rust 重写
了解 pnpm 12 的 Rust 重写、性能测试结果、与 pnpm 11 的兼容性,以及可能影响 CI 安装的升级风险。
在 Node 中不借助第三方库读写 ZIP 文件
使用 Node.js 26.8.0 的实验性 node:zlib API 读写 ZIP 文件,了解流式处理示例、zip-slip 防护、大小限制及旧版 Node.js 的替代方案。
无需 nth-child 计算的交错动画
用sibling-index()替代nth-child规则和JavaScript循环,实现CSS错峰动画。了解反向与居中效果、布局用法、浏览器支持及兼容方案。
5 款用于构建移动应用的 AI 工具
比较五款AI移动应用构建工具:Dactyl、Rork、FlutterFlow、Thunkable和Bubble,了解代码导出、平台支持、定价及应用商店发布。
用户代理字符串还值得信任吗?
了解User-Agent中哪些信息仍可靠、哪些被浏览器固定,以及如何用Chromium Client Hints和功能检测取代脆弱的字符串解析。
加固 Linux 主机上的 Docker 安全
Docker组权限等同于root权限。通过无根模式、sudo规则、Podman、容器加固和审计清单,保护Linux上的Docker。
使用编译 Schema 提升 Zod 校验性能
了解Zod编译模式如何加快验证、何时收益明显,以及如何应对编译成本、不支持的模式、CSP限制和Cloudflare Workers环境。
为什么你的 useEffect 会执行两次
了解React StrictMode为何在开发环境中让useEffect运行两次,并学习通过正确清理修复请求、监听器及其他副作用。
如何构建自定义 Gutenberg 区块
使用 React、block.json 和 PHP 构建自定义 Gutenberg 区块,了解属性、静态与动态渲染及旧版本迁移,避免验证错误。
HTTP 迎来一个专为搜索设计的新方法
了解 HTTP QUERY:一种通过请求正文执行搜索的安全、幂等方法。查看缓存与重试机制、支持它的客户端,以及可能拦截请求的基础设施。
如何验证 Webhook 签名
在Express中验证Stripe和GitHub Webhook签名,使用原始请求体、恒定时间HMAC校验、防重放保护及密钥轮换。
5 款你可能没听说过的 Linux 发行版
比较五款较少人知的开发者 Linux 发行版:CachyOS、Bazzite、Nobara、Vanilla OS 和 Chimera Linux,了解驱动、更新与工具链差异。
如何使用原生 CSS Mixin 替代 Sass
了解如何使用 @mixin 和 @apply 将 Sass 混入迁移到原生 CSS、处理参数,并判断哪些功能仍需 Sass。
Vitest 5 有哪些变化
了解 Vitest 5 的变化:性能提升、不兼容变更、新默认设置、报告路径,以及升级测试和 CI 的实用清单。
使用 scriptc 将 TypeScript 编译为原生二进制文件
scriptc将TypeScript编译为原生二进制,支持静态构建、620KB动态引擎、coverage检查和清晰诊断,定位阻塞代码。
清理用户粘贴到应用中的文本
使用 Unicode 规范化、格式字符清理、空白折叠,并安全保留 ZWJ 和 NBSP,整理网页表单中的粘贴文本。
如何阅读 JavaScript 堆栈跟踪
阅读 JavaScript 堆栈跟踪:识别首个有用帧,理解 async 间隙、压缩代码、source map 和 Error.cause。
初探 Astryx:Meta 的设计系统
Meta 的开源设计系统 Astryx 汇集 150 多个 React 组件、主题、CLI 设置、自定义层级,以及与 shadcn/ui 和 Base UI 的比较。
编写你自己的 Hono 中间件
构建 Hono 中间件,涵盖类型化上下文变量、请求计时、提前结束和路径作用域,并了解 next() 与响应顺序。
什么是 Vue Vapor Mode?
Vue Vapor Mode 详解:SFC 如何编译为直接 DOM 操作,Vue 3.6 RC 有何变化,以及事件和插槽的常见陷阱。
直接在浏览器中使用 npm 包
在普通 HTML 中通过 import map 和 CDN URL 使用 npm 包。了解如何区分 ESM 与 CommonJS、固定版本并跳过构建步骤。
面向终端用户的 WP-CLI 指南
面向WordPress迁移、备份、登录受限、插件和核心更新、远程SSH任务及序列化数据安全替换的WP-CLI命令指南。
如何避免 JSON 把你的对象“压扁”
用replacer、reviver、toJSON和context.source解决JavaScript中的JSON扁平化,准确恢复Date、Map、Set和BigInt。
使用 WebMCP 向 AI 智能体开放你网站的操作能力
WebMCP 说明如何用 document.modelContext 注册站点工具、设置注释,并在已登录浏览器会话中安全执行操作。