apollo graphql
Definitive guidelines for building robust, performant, and maintainable apollo-graphql applications using modern best practices and tooling.
The skill
# apollo-graphql Best Practices
This guide outlines our definitive best practices for developing with Apollo GraphQL, covering both server-side (Apollo Server 5) and client-side (Apollo Client) implementations. Adhering to these rules ensures consistency, performance, and maintainability across our GraphQL ecosystem.
## 1. Schema Design and Organization
Your GraphQL schema is the contract. Design it meticulously, document it thoroughly, and organize it logically.
### 1.1 Schema-First Development with SDL
Always start by defining your schema using Schema Definition Language (SDL). This forces clear API design before implementation.
❌ BAD
```javascript
// Implicit schema definition through resolvers
const resolvers = {
Query: {
users: () => [{ id: '1', name: 'Alice' }],
},
};
// Schema is inferred or built programmatically, harder to review
```
✅ GOOD
```graphql
# schema/user.graphql
"""Represents a user in the system."""
type User {
id: ID!
name: String!
email: String
}
type Query {
"""Fetches a list of all users."""
users: [User!]!
"""Fetches a single user by their ID."""
user(id: ID
How to install it
1. Open the tool and start a new conversation, project or template. 2. Paste the text below wherever the tool keeps standing instructions — usually called system prompt, instructions, or persona. 3. Save it so it applies to every run rather than a single message.