简介
Nitro 是一个全栈服务器框架,兼容任何运行环境和任何部署目标。
Nitro 为您提供了一个可用于生产环境的服务器,具备文件系统路由、代码拆分,以及对存储、缓存和数据库的内置支持,完全与运行时无关,并且可以部署到任何地方。
#什么是 Nitro?
在 routes/ 目录中创建服务器和 API 路由。每个文件都会直接映射到一个 URL 路径,而 Nitro 会处理其余工作:路由、代码拆分和优化构建。
您也可以通过创建一个 server.ts 服务器入口来完全掌控服务器。Nitro 与运行时无关的方式让您可以使用任何 HTTP 库,例如 Elysia、H3 或 Hono。
#性能
Nitro 在构建时编译您的路由,无需运行时路由器。只需加载和执行处理每个传入请求所需的代码。这使其非常适合无服务器托管,无论项目大小如何,都能实现接近 0 毫秒的启动时间。
#随处部署
将您的服务器构建到经过优化的 .output/ 文件夹中,无需任何配置即可兼容 Node.js、Bun、Deno 和许多托管平台:Cloudflare Workers、Netlify、Vercel 等。无需更改一行代码,即可利用 ESR、ISR 和 SWR 等平台功能。
#服务端渲染
使用您喜欢的模板引擎渲染 HTML,或直接在服务器上使用 React、Vue 或 Svelte 等组件库。通过客户端注水实现完全通用渲染。Nitro 提供基础架构和渐进式方法来达成您的目标。
#存储
Nitro 开箱即用地提供了与运行时无关的键值 存储层。它默认使用内存存储,但您可以连接 20 多种不同的驱动程序(FS、Redis、S3 等),将它们附加到不同的命名空间,并在不更改代码的情况下进行替换。
#缓存
Nitro 支持服务器路由和服务器函数的缓存,并直接由服务器存储提供支持(通过 cache 命名空间)。
#数据库
Nitro 还内置了 SQL 数据库。它默认使用 SQLite,但您可以使用相同的 API 连接并查询 10 多种数据库(Postgres、MySQL、PGLite 等)。
#元框架基础
Nitro 可用作构建您自己元框架的基础。Nuxt、SolidStart 和 TanStack Start 等流行框架都完全或部分地利用了 Nitro。
#Vite 集成
Nitro 以插件形式与 Vite 无缝集成。如果您正在使用 Vite 构建前端应用,添加 Nitro 后即可获得 API 路由、服务端渲染和完整的生产服务器,并通过 vite build 一起完成构建。
import { defineConfig } from "vite";
import { nitro } from "nitro/vite";
export default defineConfig({
plugins: [nitro()],
});使用 Nitro 时,vite build 会生成一个经过优化的 .output/ 文件夹,其中同时包含您的前端和后端,可随处部署。
准备好尝试了吗?进入 快速开始。