Skip to content

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

go get github.com/grokify/aha-go@v0.3.0

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.1 for 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.

Contributors