返回顶部
s

sveltekit-webappSvelteKit网页应用

|

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 1.1.1
安全检测
已通过
1,406
下载量
免费
免费
0
收藏
概述
安装方式
版本历史

sveltekit-webapp

SvelteKit Web应用技能

使用预设默认值和引导式执行,快速搭建生产就绪的SvelteKit渐进式Web应用。

快速开始

  1. 1. 描述你的应用 — 告诉我你想构建什么
  2. 审阅产品需求文档 — 我会生成包含用户故事的计划
  3. 批准 — 在你的监督下进行构建、测试和部署
  4. 完成 — 获得一个线上URL和管理文档

帮我构建一个带有截止日期和优先级标签的任务追踪器

这就是我需要开始的所有信息。如有需要,我会提出后续问题。

前置条件

以下CLI工具必须可用(技能会在预检阶段验证):

CLI用途安装方式
svSvelteKit脚手架npm i -g sv(或通过pnpx使用)
pnpm
包管理器 | npm i -g pnpm |
| gh | GitHub仓库创建 | cli.github.com |
| vercel | 部署 | npm i -g vercel |

可选(如果功能需要):

  • - turso — Turso数据库CLI

预设默认值

本技能附带经过良好配合的合理默认值。所有默认值均可通过SKILL-CONFIG.json覆盖

  • - 组件库: Skeleton(Svelte 5原生)+ Bits UI后备
  • 包管理器: pnpm
  • 部署平台: Vercel
  • 附加组件: ESLint、Prettier、Vitest、Playwright、mdsvex、MCP
  • 状态管理: Svelte 5 runes($state、$derived、$effect)

查看用户配置了解覆盖详情。



用户配置

在使用技能默认值前,检查~/.openclaw/workspace/SKILL-CONFIG.json中的用户特定默认值。用户配置可覆盖技能默认值,涉及:

  • - 部署提供商(如vercel、cloudflare、netlify)
  • 包管理器(pnpm、npm、yarn)
  • 始终包含的附加组件
  • MCP IDE配置
  • 组件库偏好

工作流程概览

  1. 1. 收集:自由格式描述 + 设计参考 + 针对性跟进
  2. 规划:生成完整的产品需求文档(脚手架、配置、功能、测试作为故事)
  3. 迭代:与用户一起完善产品需求文档直至确认
  4. 预检:验证所有必需的认证和凭据
  5. 执行:引导式构建-部署-验证循环,包含用户检查点(开发 → 预发布 → 生产)

阶段1:收集项目描述

采用对话式、迭代的方法来理解用户需求。

1a. 自由开场

以开放式问题开始:

  • - 你想构建什么?
  • 描述一下你心目中的Web应用

让用户主导他们关心的事情。

1b. 设计参考

请求灵感:

分享1-3个你希望这个应用感觉像的网站
(设计、功能或两者兼有)。

示例:

  • - 像Notion但更简单
  • Fieldwire的移动优先方法
  • Linear的简洁美学

告诉我你喜欢什么比大段描述更能传达信息。

1c. 视觉标识(可选)

如果设计参考暗示了自定义品牌,可以询问:

是否有任何特定的颜色、字体或Logo想要使用?
(我可以预先配置Tailwind主题)

1d. 针对性跟进

根据描述中的空白,具体提问:

空白问题
用户不明确主要用户是谁?(角色、场景)
核心操作不明确
他们必须能够做到的一件事是什么? |
| 内容未知 | 是否有任何现有内容/资源需要整合? |
| 规模未知 | 你预计有多少用户?(大致范围) |
| 时间线 | 是否有任何截止日期驱动? |

只问缺失的内容,不要审问。

1e. 结构化总结

在继续之前,确认理解:

📝 项目摘要:[名称]

目的:[一句话]
主要用户:[谁]
核心操作:[他们做什么]
设计灵感:[参考]
视觉标识:[颜色/字体(如果指定)]
关键功能:
• [功能1]
• [功能2]
• [功能3]

检测到的技术信号:
• 数据库:[是/否] — [原因]
• 认证:[是/否] — [原因]
• 国际化:[是/否] — [原因]

以上是否准确?[是 / 调整]

迭代直到用户确认。



阶段2:规划(生成产品需求文档)

生成包含技术栈、用户故事和模拟数据策略的完整产品需求文档。

技术栈

始终包含:

CLI: pnpx sv(后备:npx sv)
模板: 最小化
TypeScript: 是
包管理器: pnpm(后备:npm)

核心附加组件(通过sv add):
✓ eslint
✓ prettier
✓ mcp(claude-code)
✓ mdsvex
✓ tailwindcss(+ typography、forms插件)
✓ vitest
✓ playwright

脚手架后:
✓ Skeleton(主要组件库 — Svelte 5原生、可访问)
✓ Bits UI(无头原语 — 用于填补空白/复杂自定义UI的后备)
✓ vite-plugin-pwa(PWA支持)
✓ Svelte 5 runes模式
✓ adapter-auto(自动检测部署目标)

为什么选择Skeleton + Bits UI?

  • - Skeleton:为Svelte 5构建的全功能组件库,默认可访问
  • Bits UI:当需要更多控制或自定义样式时的无头原语
  • 两者配合良好 — Skeleton用于速度,Bits用于灵活性

从描述中推断:

drizzle → 如果需要数据库(询问:postgres/sqlite/turso)
lucia → 如果需要认证
paraglide → 如果需要国际化(询问:哪些语言)

状态管理

遵循Svelte 5最佳实践(参见https://svelte.dev/docs/kit/state-management):

  • - 使用$state() runes进行响应式状态
  • 使用$derived()进行计算值
  • 使用Svelte的上下文API(setContext/getContext)进行跨组件状态
  • 服务器状态通过load函数 → data属性流动
  • 永远不要在模块级变量中存储用户特定状态(跨请求共享)

代码风格偏好

检查SKILL-CONFIG.json中的用户偏好。常见模式:

  • - 优先使用bind:而非回调 — 对于子→父数据流,使用bind:value代替onchange回调属性。更具声明性,更少样板代码。
  • 避免使用onMount — 使用$effect()处理副作用。它是响应式的,并且支持SSR。
  • 全面使用Runes — $state()、$derived()、$effect()替代传统存储和生命周期钩子。
  • 小组件 — 每个组件默认软限制约200行(可在SKILL-CONFIG.json中配置)。如果变得更大,提取子组件。小即是美。🤩

目录结构

sv create生成:

src/
├── routes/ # SvelteKit路由
├── app.html # HTML模板
├── app.d.ts # 类型声明
└── app.css # 全局样式
static/ # 静态资源

我们添加:

src/
├── lib/
│ ├── components/ # 可复用组件(Skeleton + Bits UI)
│ ├── server/ # 仅服务器端代码(数据库客户端、认证)
│ ├── stores/ # Svelte存储(.svelte.ts用于runes)
│ ├── utils/ # 辅助函数
│ └── types/ # TypeScript类型
static/
└── icons/ # PWA图标

用户故事(prd.json)

故事结构:
json
{
project: 项目名称,
branchName: dev,
description: 简要描述,
userStories: [
{
id: US-001,
title: 脚手架项目,
description: 设置基础的SvelteKit项目。,
acceptanceCriteria: [...],
priority: 1,
passes: false,
blocked: false,
notes:
}
]
}

故事大小规则: 每个故事必须适合一个上下文窗口。如果感觉太大,就拆分。

标准故事序列:

  1. 1. 脚手架 — pnpx sv create,添加核心附加组件
  2. 配置 — Skeleton + Bits UI、PWA、目录

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 sveltekit-webapp-1776336914 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 sveltekit-webapp-1776336914 技能

通过命令行安装

skillhub install sveltekit-webapp-1776336914

下载

⬇ 下载 sveltekit-webapp v1.1.1(免费)

文件大小: 21.12 KB | 发布时间: 2026-4-17 14:13

v1.1.1 最新 2026-4-17 14:13
Updated skill

Archiver·手机版·闲社网·闲社论坛·羊毛社区· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2025 闲社网·线报更新论坛·羊毛分享社区·http://xianshe.com

p2p_official_large
返回顶部