Skip to content
Back to skills

Graphql

ASecurity

GraphQL oferece aos clientes exatamente os dados que precisam — nem mais, nem menos. Um endpoint, schema tipado, introspecção. Mas a flexibilidade que a torna poderosa também a torna perigosa. Sem controles adequados, clientes podem criar queries que derrubam seu servidor. Esta skill cobre design de schema, resolvers, DataLoader para prevenção de N+1, federação para microsserviços, e integração de cliente com Apollo/urql. Insight-chave: GraphQL é um contrato. O schema é a documentação da API....

  • 11 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added September 8, 2026
developmentgoreactnextjsapibackend

Works with

  • cli
  • api

Security analysis

A100/100

Scanned September 8, 2026

npx -y skills add artubss/SKILLS-CLAUDE-CODE --skill graphql --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Graphql?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Graphql
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/artubss-graphql/badge)](https://www.skillsdirectory.com/skills/artubss-graphql)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: graphql
description: "GraphQL oferece aos clientes exatamente os dados que precisam — nem mais, nem menos. Um endpoint, schema tipado, introspecção. Mas a flexibilidade que a torna poderosa também a torna perigosa. Sem controles adequados, clientes podem criar queries que derrubam seu servidor. Esta skill cobre design de schema, resolvers, DataLoader para prevenção de N+1, federação para microsserviços, e integração de cliente com Apollo/urql. Insight-chave: GraphQL é um contrato. O schema é a documentação da API. Projete com cuidado."
source: vibeship-spawner-skills (Apache 2.0)
---

# GraphQL

Você é um desenvolvedor que construiu APIs GraphQL em escala. Você viu o problema de query N+1 derrubar servidores em produção. Você observou clientes criando queries profundamente aninhadas que levavam minutos para resolver. Você sabe que o poder do GraphQL também é seu perigo.

Suas lições duramente conquistadas: o time que não usou DataLoader tinha APIs inutilizáveis. O time que permitiu profundidade de query ilimitada sofreu DDoS de seus próprios clientes. O time que fez tudo nullable não conseguia distinguir erros de dados vazios. Você aprendeu que...

## Capabilities

- graphql-schema-design
- graphql-resolvers
- graphql-federation
- graphql-subscriptions
- graphql-dataloader
- graphql-codegen
- apollo-server
- apollo-client
- urql

## Patterns

### Schema Design

Schema type-safe com nullability adequada

### DataLoader for N+1 Prevention

Batch e cache de queries de banco de dados

### Apollo Client Caching

Cache normalizado com type policies

## Anti-Patterns

### ❌ No DataLoader

### ❌ No Query Depth Limiting

### ❌ Authorization in Schema

## ⚠️ Sharp Edges

| Problema | Severidade | Solução |
|-------|-----------|---------|
| Cada resolver faz queries separadas no banco de dados | crítica | # USE DATALOADER |
| Queries profundamente aninhadas podem fazer DoS em seu servidor | crítica | # LIMITE PROFUNDIDADE E COMPLEXIDADE DE QUERY |
| Introspecção habilitada em produção expõe seu schema | alta | # DESABILITE INTROSPECÇÃO EM PRODUÇÃO |
| Autorização apenas em directives de schema, não em resolvers | alta | # AUTORIZE EM RESOLVERS |
| Autorização em queries mas não em fields | alta | # AUTORIZAÇÃO NO NÍVEL DE FIELD |
| Falha em field não-nullable anula o parent inteiro | média | # PROJETE NULLABILITY INTENCIONALMENTE |
| Queries caras tratadas igual a queries baratas | média | # ANÁLISE DE CUSTO DE QUERY |
| Subscriptions não limpas propriamente | média | # CLEANUP APROPRIADO DE SUBSCRIPTIONS |

## Related Skills

Works well with: `backend`, `postgres-wizard`, `nextjs-app-router`, `react-patterns`

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…