Remix
基于 Web 标准 API 的全栈 Web 框架,服务端用标准 Request/Response 处理路由与中间件,无应用构建步骤,适合想用一套模型覆盖服务端和浏览器、并愿意跟着 Web 标准写代码的开发者。
Remix 是一个全栈 Web 框架,把服务端运行时、路由、认证、会话、数据库集成、UI 框架、资源编译和可访问组件放在同一套体系里,底层尽量用 Web 标准 API。它想解决的是:做一个完整 Web 应用,不必在每一层都学一套不同的系统。
安装方式是在终端用 npx remix new my-app 建项目,npm、pnpm、Yarn、Bun、Deno 都列在页面上。
主要功能
服务端部分把进来的 HTTP 请求转成标准 Request,交给路由和中间件,再返回标准 Response,HTML、JSON、重定向、文件和流都走这条路。页面里给了用 createRequestListener 起服务的示例代码。
前端部分有几个明确取舍:状态就是普通 JavaScript 变量、对象或类,不用 hooks 或指定的状态容器;改完状态要显式调用 handle.update() 才会重新渲染;不是所有东西都要做成组件,mixin 可以直接把行为挂到元素的事件、样式、ref 和无障碍属性上;客户端组件的边界在服务端代码里看得见。 用来拿服务端渲染的 HTML 局部更新页面。
资源方面,TypeScript、JSX、CSS 在请求时按需编译,开发和生产都没有应用构建步骤,浏览器按原生 ES 模块各自缓存。
适合谁
适合想用一套模型覆盖服务端和浏览器、并且愿意跟着 Web 标准写代码的开发者。页面也强调人和编码 agent 都能顺着普通代码和标准追行为,还提供了教 agent 使用该框架的 skills。
费用与限制
文档和示例以 MIT 协议授权,页脚版权归 Shopify, Inc.。页面没有给出框架本身的收费信息,也没有说明使用是否要注册账号。上手前需要接受它和主流框架不同的写法,比如手动触发更新、不用 hooks 管状态。