SuperAPI AI 工具集

bun-sveltekit

前端与建站

查看项目

更新于 10-15 15:18

技能介绍

用途

bun-sveltekit 用于在 Bun 运行时上构建或运行 SvelteKit 应用,覆盖 SSR、适配器以及 Bun 专有 API 的使用场景。它帮助开发者将 SvelteKit 的开发、构建与部署流程迁移到 Bun,并利用 Bun 内置的 SQLite、文件读写等能力。

主要能力

  • 使用 bunx sv create 创建 SvelteKit 项目,使用 bun install 安装依赖,使用 bun run dev、bun run build、bun run preview 进行开发、构建与预览。
  • 通过 svelte-adapter-bun 适配器在 Bun 上运行 SvelteKit,支持配置输出目录、预压缩、环境变量前缀、动态 origin、X-Forwarded-For 深度等选项。
  • 在服务端加载函数、表单动作、API 路由、文件操作和服务端钩子中使用 Bun 原生 API,例如 bun:sqlite 的 Database、Bun.file、Bun.write。
  • 提供 Svelte 5 组件示例,使用 $props、$derived、$state 等响应式语法。
  • 提供 Docker 多阶段构建示例,基于 oven/bun:1 镜像构建并运行产物。
  • 提供环境变量访问方式,包括 $env/static/private、$env/static/public 和 $env/dynamic/private。
  • 提供常见错误排查表,覆盖 Cannot find bun:sqlite、Vite 错误、水合失败、刷新 404 等问题及对应修复方向。

使用方式

快速开始流程为:使用 bunx sv create my-app 创建项目,进入目录后执行 bun install,然后通过 bun run dev 启动开发,bun run build 构建,bun run preview 预览。

要使用 Bun 适配器,执行 bun add -D svelte-adapter-bun,并在 svelte.config.js 中引入该适配器并配置到 kit.adapter。

在服务端代码中可直接导入 Bun 模块,例如在 +page.server.ts 中导入 Database 进行查询与写入,在 +server.ts 中返回 JSON 或读写文件,在 hooks.server.ts 中初始化数据库并挂载到 event.locals。

部署时执行 bun run build 后运行 bun ./build/index.js,或使用文档提供的 Dockerfile 进行容器化部署。

适用场景

  • 希望在 Bun 运行时上开发 SvelteKit 应用并利用其内置 SQLite、文件 API 的项目。
  • 需要为 SvelteKit 配置 Bun 适配器并进行 SSR 部署的场景。
  • 需要将 SvelteKit 应用打包为 Docker 镜像并以 Bun 运行的场景。
  • 需要参考 Svelte 5 组件写法与 SvelteKit 服务端数据加载、表单动作、API 路由示例的场景。

限制

文档未提供具体的性能基准、收费或价格信息、支持的平台范围以及效果承诺。安全安装部分建议参考 dependency-upgrade 技能以获取完整安全配置,包括 Socket CLI 集成、冷却设置、锁文件校验和 CI 强制执行。部分高级适配器选项、静态预渲染、边缘部署、缓存策略、懒加载和流式 SSR 需加载对应参考文件(references/adapter-config.md、references/performance.md)获取,当前资料未展开。