Now vibe coding, so learning hammer FE ?
《Express全新面貌》

标签:#后端 #NodeJS #ExpressJS #Web框架 #文档重构 #开源社区

总结:
Express官方博客宣布完成网站全面重构与品牌焕新,涵盖Astro技术栈迁移、AI智能搜索、版本化文档及全新Logo设计,标志着这个Node.js生态老牌框架在2024年重启后进入新阶段。

文章要点:
1. 网站底层从Jekyll迁移到Astro,带来更灵活的组件模型、国际化支持和内容页性能提升,文档生成与维护方式也一并升级
2. 文档新增多版本并行浏览,Express 4和5的文档可以独立查看,告别版本混淆的烦恼
3. 搜索接入了Orama的AI能力,支持自然语言提问,找API和概念更快更准
4. 全站文档开放了llms.txt端点,方便大模型和AI助手直接读取最新文档
5. 接下来的重点是补齐内容缺口、完善多语言翻译,并让文档和新版本同步发布
6. 新Logo由社区公开协作设计,品牌定位为"Established·Dependable·Approachable",延续极简风格的同时开启新篇章

URL:
https://expressjs.com/en/blog/2026-05-18-a-new-look-for-express/ A New Look for Express · Express.js
《Mirage:AI Agent的统一虚拟文件系统》

标签:#AI_Tools #AI_Agent #文件系统 #Python #TypeScript #SDK #S3 #Slack #GitHub #Redis #缓存 #OpenAI #Vercel_AI_SDK #LangChain

总结:
Mirage 是一个专为 AI Agent 设计的统一虚拟文件系统,它将 S3、Google Drive、Slack、Gmail、Redis 等数十种后端服务挂载到同一棵文件树下。Agent 只需用熟悉的 Unix/bash 工具(如 grep、cat、cp)就能跨服务读写数据,无需学习 N 个 SDK 或 MCP。支持 Python/TypeScript SDK 和 CLI,可嵌入 FastAPI、Express 等应用,并内置双层缓存(索引缓存 + 文件缓存)减少网络开销,兼容 OpenAI Agents SDK、Vercel AI SDK、LangChain 等主流框架。

文章要点:
- 统一挂载,万物皆文件:把 S3、GDrive、Slack、GitHub、MongoDB、Redis 等后端并排挂载到同一个根目录下,Agent 看到的始终只有一棵树
- 零学习成本:任何懂 bash 的 LLM 都能直接上手,用 grepcatcpwc 这些经典命令跨服务操作,不用记新 API
- 双层缓存省流量:自带索引缓存(目录列表)和文件缓存(对象字节),默认用内存,也可切 Redis 共享给多进程/多机器
- 多语言 SDK + CLI:提供 Python 和 TypeScript(Node / Browser / Core)SDK,以及轻量 CLI,可嵌入你的 FastAPI、Express 或浏览器应用
- 主流框架即插即用:已适配 OpenAI Agents SDK、Vercel AI SDK、LangChain、Pydantic AI、CAMEL、OpenHands 等
- 工作空间可移植:支持克隆、快照、版本化管理,Agent 运行环境能在机器间迁移而不必重新配置

文章URL:https://github.com/strukto-ai/mirage GitHub - strukto-ai/mirage: A Unified Virtual Filesystem For AI Agents
《node-html-to-text:HTML转纯文本转换器》

标签:#NodeJS #工具库 #HTML解析 #文本转换 #数据提取 #内容处理

总结:
node-html-to-text 是一款成熟的 Node.js 库,用于将 HTML 文档解析并转换为格式优美的纯文本。它通过类 CSS 的 selectors 机制实现高度灵活的格式化控制,支持表格、链接、列表等复杂结构,并提供 compile 预编译模式以优化批量处理性能。

文章要点:
- **核心能力**:支持行内/块级标签、表格(含跨行跨列)、链接、自动换行、Unicode 等,能把复杂 HTML 干净地转成可读文本
- **两种使用模式**:`convert() 适合单次转换;`compile() 预编译配置后批量处理,性能更优,推荐处理大量文档时使用
- **Selectors 驱动配置**:采用类似 CSS 的 selectors 数组来匹配元素并指定格式化方式,支持标签、类名、ID、属性等组合选择,特异性高的规则优先生效
- **丰富的自定义扩展**:可通过 formatters 注册自定义格式化函数,还能传入 metadata 让 formatter 访问额外上下文信息,满足特殊业务需求
- **版本演进清晰**:v8 引入 selectors 体系,v9 支持 ESM/CJS 双模式并移除大量废弃选项,v10 要求 Node.js 20.19.0+,API 趋于稳定现代

文章URL:https://github.com/html-to-text/node-html-to-text GitHub - html-to-text/node-html-to-text: Advanced html to text converter
#文章 利用 ES2022 的 Error.cause 在构造函数中保留原始错误:`new Error(msg, { cause: err })`。
- 错误链非枚举,不污染日志;可逐层访问 `err.cause` 获取完整堆栈与类型。
- 自定义错误类只需 super(message, { cause }) 即可自动继承该能力;TypeScript 需 `target/lib ≥ es2022`。

- 使用场景
- 多层架构(服务→服务、包装函数、微调用)中,顶层抛出的同时需要追踪根因。
- 数据库/网络异常被重新包装为业务错误(如 ConnectionTimeoutErrorDatabaseError → `ServiceUnavailableError`)。
- 单元测试断言:`expect(err.cause).toBeInstanceOf(原始错误类)`。

- 最佳实践
- 只在关键上下文加链,避免过度包装导致调试噪音。
- 手动记录:`console.error(err) 后紧跟 `console.error('Caused by:', err.cause)`;使用递归辅助函数 `logErrorChain/logFullErrorChain 打印完整链。
- 保持错误类型清晰,自定义类命名语义化,方便日志与监控筛选。

https://allthingssmitty.com/2025/11/10/error-chaining-in-javascript-cleaner-debugging-with-error-cause/
#文章 Navigation API即将全面支持所有浏览器:这项令人振奋的新 Web 平台 API 很快将在所有浏览器中上线,它将重新定义我们构建客户端/单页应用导航的方式。不再需要使用原本并非为单页应用设计的笨拙 History API,也不再需要一个 <Link> 组件来拦截点击事件以调用 event.preventDefault() 和 history.pushState() ,取而代之的是,将有一个统一的中心位置来处理和拦截导航事件。React 团队正在开发一项过渡指示器功能,该功能将利用这一 API 提供原生的加载状态反馈。
#文章 #CSS 文章示范了用容器查询、:has()clamp()等现代 CSS,让“头部+卡片网格”这一简单布局随卡片数量与宽度自动切换形态。

https://ishadeed.com/article/modern-css-section-layout/ Solved By Modern CSS: Section Layout
#文章 作者在使用 Next.js App Router 和 React Server Components(RSC)一年后的不满和失望,并解释了他们为什么选择迁移到 TanStack Start。作者详细分析了 Next.js App Router 和 RSC 的设计缺陷,包括:乐观更新不可、每次导航都是另一次获取、布局人为受限、内容双重下载、Turbopack 表现不佳。

https://paperclover.net/blog/webdev/one-year-next-app-router One Year with Next.js App Router — Why We're Moving On
#UX #文章 主要介绍了ARIA属性在无障碍网络应用中的关键作用,特别是aria-selected、aria-pressed、aria-current和aria-checked这四个容易混淆的属性。文章详细解释了每个属性的用途、适用场景、常见值以及最佳实践,同时指出了开发者在使用这些属性时常见的错误,并强调了正确使用ARIA属性对于确保辅助技术准确传达界面状态的重要性。

https://www.tpgi.com/what-state-aria-in/ What State ARIA In? - TPGi — a Vispero company
#文章 Next.js App Router 结合 React Server Components 带来 零 JS 前端渲染、流式 SSR 与自动代码分割 等亮点,却同时陷入 乐观更新缺失、每次导航重复取数、布局受限、双倍内容下载与调试痛苦 的深度缺陷;作者用一年实战证明,这套架构对动态应用既浪费带宽又折磨开发者,最终迁往 TanStack Start 才重获性能与可维护性。

https://paperclover.net/blog/webdev/one-year-next-app-router One Year with Next.js App Router — Why We're Moving On
#文章 2025 年的 Node.js 已内置全套现代 Web 标准与开发工具,升 20.x 即可零依赖写 ESM、fetch、测试、watch、权限、单文件部署,彻底告别“装包装到哭”的旧时代。

https://kashw1n.com/blog/nodejs-2025/
#React #文章 文章介绍了如何使用React的`useDeferredValue()`和`useSuspenseQuery()`构建响应式的异步组合框组件,通过将数据获取逻辑提取到单独组件中并利用Suspense和错误边界,简化了加载和错误状态管理,同时通过`useDeferredValue()`优化渲染,实现平滑的用户体验和过时数据更新体验。

https://certificates.dev/blog/building-an-async-combobox-with-usesuspensequery-and-usedeferredvalue Building an Async Combobox with useSuspenseQuery() and useDeferredValue()
 
 
Back to Top