Dev graphql
Skill christopherlouet/claude-base/.claude/skills/dev-graphql
Opinionated Claude Code foundation — Explore → TDD → Audit workflow, auto-detected stack presets (nextjs, fastapi, astro, ...), curl | bash install. MIT.
npx -y skills add christopherlouet/claude-base --skill dev-graphqlAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 5 stars5 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
GraphQL API development. Trigger when the user wants to create schemas, resolvers, or GraphQL queries.
SKILL.md
2.9 KB, as published. Nobody here has run it
GraphQL Development
Schema Definition
type User {
id: ID!
email: String!
name: String!
posts: [Post!]!
createdAt: DateTime!
}
type Post {
id: ID!
title: String!
content: String
author: User!
published: Boolean!
}
type Query {
user(id: ID!): User
users(limit: Int, offset: Int): [User!]!
post(id: ID!): Post
}
type Mutation {
createUser(input: CreateUserInput!): User!
updateUser(id: ID!, input: UpdateUserInput!): User!
deleteUser(id: ID!): Boolean!
}
input CreateUserInput {
email: String!
name: String!
password: String!
}
Resolvers
const resolvers = {
Query: {
user: (_, { id }, ctx) => ctx.userService.findById(id),
users: (_, { limit, offset }, ctx) => ctx.userService.findAll({ limit, offset }),
},
Mutation: {
createUser: (_, { input }, ctx) => ctx.userService.create(input),
},
User: {
posts: (user, _, ctx) => ctx.postService.findByAuthor(user.id),
},
};
DataLoader (N+1 Prevention)
import DataLoader from 'dataloader';
const userLoader = new DataLoader(async (ids: string[]) => {
const users = await userService.findByIds(ids);
return ids.map(id => users.find(u => u.id === id));
});
// In the context
context: ({ req }) => ({
userLoader,
postLoader: createPostLoader(),
});
Client (Apollo)
const GET_USER = gql`
query GetUser($id: ID!) {
user(id: $id) {
id
name
email
posts {
id
title
}
}
}
`;
function UserProfile({ userId }) {
const { data, loading, error } = useQuery(GET_USER, {
variables: { id: userId }
});
if (loading) return <Loading />;
if (error) return <Error message={error.message} />;
return <Profile user={data.user} />;
}
See also
Apollo GraphQL publishes their own official agent skills at apollographql/skills (maintained by the Apollo team, last commit 2026-05-04). The repo covers Apollo Client, Apollo Server 5, Apollo Connectors, Federation 2, and Apollo Kotlin — the Apollo-specific stack.
When working on a project that uses Apollo, install the vendor skill alongside this one. This skill captures the stack-agnostic angle (schema design, DataLoader, N+1 prevention, query depth limits, generic security) that complements Apollo's vendor-specific guidance. Both together is the recommended setup for Apollo users; for non-Apollo GraphQL stacks (Yoga, Pothos, Mercurius, Strawberry, gqlgen), this skill remains the primary reference.
Install command and full list of validated vendor skills: docs/recipes/recommended-vendor-skills.md. Audit pilot trace: specs/marketplace-audit/dev-skills-pilot-2026-05-05.md.