v0.3.0¶
Release Date: 2026-06-07
Overview¶
This release adds a type-safe GraphQL client generated by genqlient via gqlforge, providing compile-time safety for GraphQL operations.
Highlights¶
- Type-Safe GraphQL Client - Generated client with strongly-typed queries and responses using genqlient
Installation¶
What's New¶
Type-Safe GraphQL Client¶
The new generated client provides full type safety for GraphQL operations:
import (
"github.com/grokify/aha-go/graphql"
"github.com/grokify/aha-go/graphql/generated"
)
// Create a genqlient-compatible client
client := graphql.NewGenqlientClient("mycompany", "your-api-key")
// Get a feature with full type safety
resp, err := generated.GetFeature(ctx, client, "FEAT-123")
if err != nil {
log.Fatal(err)
}
fmt.Printf("Feature: %s - %s\n", resp.Feature.ReferenceNum, resp.Feature.Name)
// Search documents
searchResp, err := generated.SearchDocuments(ctx, client, "onboarding", []string{"Page", "Feature"})
for _, node := range searchResp.SearchDocuments.Nodes {
fmt.Printf("Found: %s (%s)\n", *node.Name, node.SearchableType)
}
Available Operations¶
| Category | Operations |
|---|---|
| Queries | GetFeature, GetPage, GetIdea, GetRelease, GetGoal, GetEpic, GetInitiative, GetRequirement, GetProject, GetAccount, SearchDocuments |
Environment Variables¶
Standardized environment variable names for consistency:
| Variable | Description |
|---|---|
AHA_SUBDOMAIN |
Your Aha account subdomain |
AHA_API_KEY |
Your Aha API key |
Commits¶
| Hash | Description |
|---|---|
2edfb33 |
test(graphql): add genqlient integration test |
c93e46d |
test(graphql): standardize env vars to AHA_SUBDOMAIN and AHA_API_KEY |
d177919 |
docs: add GraphQL genqlient usage examples and v0.3.0 changelog |
e015029 |
feat(graphql): add genqlient-generated type-safe client via gqlforge |
Dependencies¶
- Added
github.com/Khan/genqlient v0.8.1for type-safe GraphQL code generation
Upgrade Notes¶
This is a backward-compatible release. The handwritten GraphQL client from v0.2.0 remains available for reference but is no longer the recommended approach.