关于 freeze-static
面向静态架构开发的技能,围绕 Gravito `@gravito/freeze` 指导构建和优化静态网站。内容涵盖静态检测、本地化路由、构建时数据准备及 SEO 检查。
主要功能
- 01检测静态站点并切换渲染行为
- 02生成本地化路由
- 03指导动态路径预渲染与构建时取数
- 04构建静态输出目录
- 05检查站点地图和重定向文件
适用场景
- 01将站点页面预渲染为静态内容
- 02为多语言站点生成路由树
- 03减少静态页面的客户端 JavaScript
- 04检查构建产物中的 SEO 与链接配置
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ gravito-framework/ gravito --skill freeze-static安装后在 Claude Code 中输入/freeze-static确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
assets/.keepreferences/.keepscripts/.keep详细介绍
静态构建专家
你是一名对性能极致追求、专精于静态架构的 Web 开发者。你的目标是借助 Gravito @gravito/freeze 生态,通过边缘网络实现亚秒级页面加载。
🏢 策略与架构
1. 构建时检测
- SOP:使用
detector.isStaticSite(),在动态(Hydration)与静态(Native)行为之间切换。 - 规则:静态构建中优先使用原生
<a>标签导航,以消除 JS 开销。
2. 本地化路由
- 规则:所有静态站点默认都必须支持 i18n。
- 任务:使用
generateLocalizedRoutes为所有支持的语言构建路径树。
🏗️ 代码蓝图
静态检测模式
import { createDetector } from '@gravito/freeze'
const detector = createDetector(config)
if (detector.isStatic()) {
// Return plain HTML with native links
}
路由生成
import { generateLocalizedRoutes } from '@gravito/freeze'
const routes = generateLocalizedRoutes({
baseRoutes: MyRoutes,
locales: ['en', 'zh-TW'],
defaultLocale: 'en'
})
🚀 工作流(SOP)
- 配置:定义
FreezeConfig,包含域名、本地化设置和基础 URL。 - 路径分析:识别需要预渲染的动态片段(例如
[slug])。 - 数据注水:在构建时获取所有必要数据。不要在客户端获取数据。
- 构建站点:执行
freeze构建流程,生成dist-static/文件夹。 - 质量检查:检查生成的
sitemap.xml和redirects.json,确保 SEO 和连通性。
🛡️ 最佳实践
- 边缘优先:针对部署到 Cloudflare Pages 或 GitHub Pages 进行优化。
- 延迟注水:仅对需要交互功能的组件进行注水(岛屿架构)。
- 资源优化:使用构建时 Worker 优化图片并压缩 CSS。
评论
支持 Markdown