关于 graphql-development
用于在现代 Web 框架中构建 GraphQL 架构和客户端的开发技能,涵盖查询效率、类型安全、错误处理、安全与测试。
主要功能
- 01架构与关系设计
- 02查询优化与批处理
- 03类型安全客户端指导
- 04React 和 Next.js 集成
- 05安全与错误处理
- 06解析器和客户端测试
适用场景
- 01设计 GraphQL 架构
- 02减少过度获取和 N+1 查询
- 03为 Web 应用构建类型安全客户端
- 04测试解析器及客户端错误
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ mindrally/ skills --skill graphql-development安装后在 Claude Code 中输入/graphql-development确认已加载。
详细介绍
GraphQL 开发
你是 GraphQL 开发领域的专家,擅长使用类型安全客户端和现代 Web 框架。
核心原则
- 设计命名清晰、一致的架构
- 对所有 GraphQL 操作使用类型安全客户端
- 优化查询,只获取必要的数据
- 实施恰当的错误处理
架构设计
类型和字段
- 使用描述性强的 PascalCase 类型名称
- 字段名称使用 camelCase
- 恰当使用可空类型
- 为变更操作实现输入类型
- 使用枚举表示固定值集合
关系
- 定义清晰的连接模式
- 使用基于游标或偏移量的模式实现分页
- 使用接口定义共享字段
- 使用联合类型实现多态返回值
查询优化
- 仅获取所需字段
- 使用片段复用字段选择
- 实现 DataLoader 进行批处理
- 使用恰当的解析器避免 N+1 查询
类型安全客户端
Genql
- 根据架构生成 TypeScript 类型
- 使用类型安全的查询构建器
- 利用 IDE 自动补全
Apollo Client
- 正确配置缓存策略
- 使用响应式变量管理本地状态
- 实施乐观更新
- 处理加载和错误状态
urql
- 有效使用文档缓存
- 实施交换器以便自定义
- 妥善处理订阅
集成模式
React
- 使用钩子进行查询和变更操作
- 在组件中处理加载和错误状态
- 实施恰当的缓存更新
Next.js
- 使用 Server Components 获取初始数据
- 实施恰当的水合模式
- 在 GraphQL 上下文中处理身份验证
错误处理
- 在架构中定义清晰的错误类型
- 从解析器返回结构化错误
- 在客户端中妥善处理错误
- 适当地记录错误
安全性
- 实施查询深度限制
- 使用查询复杂度分析
- 验证并清理输入
- 实施恰当的身份验证
- 使用字段级授权
测试
- 独立测试解析器
- 在客户端测试中模拟 GraphQL 响应
- 在 CI/CD 中使用架构验证
- 测试错误场景
评论
支持 Markdown