mcpField
G
graphql-development

graphql-development

github.com/mindrally开发287665 次安装3 周前更新
代码仓库

关于 graphql-development

用于在现代 Web 框架中构建 GraphQL 架构和客户端的开发技能,涵盖查询效率、类型安全、错误处理、安全与测试。

主要功能

  1. 01架构与关系设计
  2. 02查询优化与批处理
  3. 03类型安全客户端指导
  4. 04React 和 Next.js 集成
  5. 05安全与错误处理
  6. 06解析器和客户端测试

适用场景

  1. 01设计 GraphQL 架构
  2. 02减少过度获取和 N+1 查询
  3. 03为 Web 应用构建类型安全客户端
  4. 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