#优质博文 #前端 #node #工程化 #新动态
🕒 Node Weekly Issue #582
🕒 Node Weekly Issue #582
AI 摘要:本期 Node Weekly 聚焦 Node.js 生态系统的最新动态,重点介绍了 Node.js 通过 Amaro 1.0 向稳定支持 TypeScript 迈进的关键进展,同时涵盖了 pnpm 10.12 的全局虚拟存储功能、JavaScript 30 周年纪念以及多个实用工具和库的更新。此外,还包括对 Node.js 社区重要人物 Mikeal Rogers 的缅怀,以及对各种框架、测试工具和开发资源的深入探讨,内容详实且覆盖广泛。
1. Node.js 与 TypeScript 支持进展:
• Amaro 1.0 发布,作为 Node.js 官方工具,用于剥离 TypeScript 代码中的类型,使其能够在 Node.js 中运行,同时也可作为独立库使用。
• 这是 Node.js 将 TypeScript 支持从实验性转向稳定的重要里程碑,预计年内将在正式版本中实现稳定支持。
• Sarah Gooding 详细报道了相关进展,Marco Ippolito 在 Node Congress 2025 的演讲中进一步探讨了原生 TypeScript 支持的实现方式及当前局限性。
2. pnpm 10.12 新功能:
• 引入实验性“全局虚拟存储”功能,通过 node_modules 符号链接实现依赖共享,避免重复安装,从而提升效率和速度。
3. 社区动态与纪念:
• Isaac Z. Schlueter 发表了对 Node.js 社区重要贡献者 Mikeal Rogers 的缅怀文章,悼念其上周逝世。
• Dylan Goings 庆祝 JavaScript 诞生 30 周年,回顾其发展历程。
4. 技术文章与教程:
• 顶级 await 支持: 介绍了在现代浏览器及 Node.js(v16 以上)中,ES 模块支持顶级 await 的用法,适用于 .mjs 文件或指定为模块的 .js 文件。
• JavaScript 爬虫库推荐: 探讨了包括 Crawlee、Cheerio 等在内的最佳爬虫库,以及如何从 Node.js 使用浏览器进行爬取。
• Hono 框架与 Node.js: Hono 框架创始人 Yusuke Wada 分享了将其引入 Node.js 的经验,Hono 是一个基于 Web 标准的轻量级 Web 应用框架。
• 性能与压力测试: 介绍了三种 Node.js 测试工具(AutoCannon、Artillery、k6)的使用方法和场景。
• Nx 构建 MCP 服务器: Nx 团队分享了如何使用 Nx 构建 MCP 服务器的教程。
5. 工具与库更新(Code & Tools):
• WelsonJS: 利用 Windows 内置 JS 引擎构建 Windows 应用,类似 Electron,适合计算能力有限的环境,支持多种 JS 替代方案和 RPC 客户端。
• Croner 9.1: 使用 cron 语法触发函数或评估表达式,v9 已迁移至 TypeScript 并引入了一些破坏性变更。
• log-vwer: 基于 Node.js 的自托管日志监控仪表板,适用于本地日志存储与搜索。
• 其他更新: 包括 & Entities 6.0(HTML/XML 实体编码/解码)、ESLint v9.29.0(支持显式资源管理语法)、LogTape 0.12(无依赖日志库)、fast-png 7.0(PNG 图像编解码)、node-llama-cpp 3.10(本地运行 LLM)、Discord.js 14.20、Ableton.js 3.7、Fastify 5.4、Mongoose 8.16、Piscina 5.1、tiff 7.0 等。
6. 由于本周内容相对较少,编辑团队回顾了未入选的库存项目,推荐了以下资源:
• FIGLet.js: 使用 FIGfont 规范将文本渲染为 ASCII 形式,适用于 CLI 工具开发。
• Stricli: Bloomberg 使用的 CLI 工具构建框架。
• Pyodide: 基于 WebAssembly 的 Python 发行版,支持浏览器和 Node.js 运行时。
• VS Code 中的 Node.js 性能分析: Pavel Romanov 展示了如何在 VS Code 中进行 Node.js 应用的基本性能分析。