本周热点
Astro 7.0 正式发布
Astro 7.0 于 6 月 22 日正式发布,带来了多项重大改进:
- Vite 8 — 构建工具升级,带来更快的 HMR 和构建速度
- Rust 编译器 — 核心编译逻辑用 Rust 重写,构建速度提升约 4 倍
- Advanced Routing — 支持更灵活的路由配置,包括 Hono 集成
- 后台 Dev Server — 开发服务器支持后台运行
- 结构化日志 — 更清晰的构建输出和调试信息
对于使用 Astro 搭建博客的同学来说,这是一个值得关注的大版本更新。
TypeScript 7 RC 发布
TypeScript 7 是一个里程碑式的版本——编译器从 JavaScript 重写为 Go 语言,性能提升显著:
| 指标 | TypeScript 5 | TypeScript 7 |
|---|---|---|
| VS Code 类型检查 | 36s | 5s |
| npm run watch | 80s | ~20s |
目前 VS Code 团队已经在逐步迁移到 TypeScript 7,预计正式版很快就会发布。对于大型项目来说,这将极大改善开发体验。
Meta 开源 Astryx 设计系统
Meta 正式发布了 Astryx 设计系统,这是他们在内部打磨了 8 年的产物:
- 基于 React + StyleX 构建
- 超过 160+ 组件
- 支持主题定制、模板系统
- 声称已驱动 Meta 内部超过 13,000 个应用
如果你在做企业级 React 项目,Astryx 值得一试。
Deno 2.9 发布
Deno 2.9 带来了一个杀手级功能——Deno Desktop:
- 将脚本和框架项目打包为原生桌面应用
- 支持从 npm/pnpm/Yarn/Bun lockfile 快速迁移
- 测试运行器大幅改进
- 冷启动速度提升约 2 倍
- 目标兼容 Node.js 26
前沿技术
Linear 从 styled-components 迁移到 StyleX
知名项目管理工具 Linear 宣布将样式方案从 styled-components 迁移到 StyleX(Meta 出品的零运行时 CSS-in-JS 方案),迁移后页面间导航的渲染速度提升了约 30%。
这说明运行时 CSS-in-JS 在大型应用中确实存在性能瓶颈,编译时方案是更好的选择。
npm v12 预览版
npm 12 带来了重要的安全改进:
- 默认阻止 install scripts — 降低供应链攻击风险
- 对高影响力账号(流行包的维护者)进行 72 小时只读锁定
- 改进 2FA 恢复码的安全策略
不过也有观点认为这并非万全之策,install scripts 只是供应链安全问题的一部分。
Gea:编译器优先的响应式 UI 框架
Gea 是一个新的 UI 框架,主打”编译掉框架本身”:
- 无 VDOM
- JSX 转换为字符串模板
- 基于 Proxy 的状态管理
- 精准 DOM 更新
- 构建产物极小
工具推荐
shadcn/ui 新增聊天组件
shadcn/ui 推出了聊天界面专用组件,包括:
MessageScroller— 消息滚动容器Message— 消息气泡Bubble— 聊天气泡Attachment— 附件展示Marker— 消息标记
如果你在做即时通讯相关的项目,可以直接用 CLI 拷贝到项目中。
mapcn — shadcn 风格的地图组件
由 Cloudflare 设计工程师开发的 mapcn,基于 MapLibre + Tailwind,采用和 shadcn/ui 相同的”拷贝即用”模式,开箱即用的地图组件。
Nub — Node.js 增强工具包
Zod 的作者 Colin McDonnell 推出了 Nub,一个增强 Node.js 的工具包:
- 更完善的 TypeScript 支持
- 更快更安全的包安装
- 更好的
.env处理 - Web 标准 Worker 支持
生态动态
版本发布速览
| 工具 | 版本 | 亮点 |
|---|---|---|
| React Router | 8.1 | 支持 Agent Skills,新增 instrumentation 元数据 |
| Prettier | 3.9 | 格式化改进 |
| Rspack | 2.1 | Rust 打包工具更新 |
| Electron | 43 | 桌面应用框架更新 |
| ESLint | 10.6 | 代码检查改进 |
| pnpm | 11.9 | 包管理器更新 |
| Git | 2.55 | 新增 history fixup,Linux 下 git status 更快 |
其他值得关注
- Storybook 新增对 TanStack 项目的原生支持
- Meta 将 Flow 类型检查器从 OCaml 移植到 Rust
- pnpm 项目正在开发 pnpr — 一个 Rust 实现的 pnpm 兼容 npm 注册表服务器
- Postgres 19 进入 Beta — 预计今年 9 月正式发布
推荐阅读
- The Shifting Line Between CSS States and JavaScript Events — 探索 CSS 伪类替代 JS 事件监听的可能性
- The Hidden Cost of Hydration Mismatches — 水合不匹配如何影响 LCP
- Blocking Install Scripts is Not a Silver Bullet — npm 安全策略的深度分析
感谢阅读本期周刊!如果觉得有帮助,欢迎分享给朋友。