freshcrate
Skin:/

goa

Design-first Go framework that generates API code, documentation, and clients. Define once in an elegant DSL, deploy as HTTP and gRPC services with zero drift between code and docs.

Why this rank:Strong adoptionRecent releaseHealthy release cadence

Description

Design-first Go framework that generates API code, documentation, and clients. Define once in an elegant DSL, deploy as HTTP and gRPC services with zero drift between code and docs.

README

Goa

ReleaseGo DocGitHub Action: TestGo Report CardSoftware LicenseGurubaseGoa Design WizardSubstack: Design FirstSlack: GoaBluesky: Goa Design

Overview

Goa transforms how you build APIs and microservices in Go with its powerful design-first approach. Instead of writing boilerplate code, you express your API's intent through a clear, expressive DSL. Goa then automatically generates production-ready code, comprehensive documentation, and client librariesโ€”all perfectly aligned with your design.

The result? Dramatically reduced development time, consistent APIs, and the elimination of the documentation-code drift that plagues traditional development.

Sponsors

incident.io

incident.io: Bounce back stronger after every incident

Use our platform to empower your team to run incidents end-to-end. Rapidly fix and learn from incidents, so you can build more resilient products.

Learn more
Speakeasy

Speakeasy: Enterprise DevEx for your API

Our platform makes it easy to create feature-rich production ready SDKs. Speed up integrations and reduce errors by giving your API the DevEx it deserves.

Integrate with Goa

Why Goa?

Traditional API development suffers from:

  • Inconsistency: Manually maintained docs that quickly fall out of sync with code
  • Wasted effort: Writing repetitive boilerplate and transport-layer code
  • Painful integrations: Client packages that need constant updates
  • Design afterthoughts: Documentation added after implementation, missing key details

Goa solves these problems by:

  • Generating 30-50% of your codebase directly from your design
  • Ensuring perfect alignment between design, code, and documentation
  • Supporting multiple transports (HTTP, gRPC, and JSON-RPC) from a single design
  • Maintaining a clean separation between business logic and transport details

Key Features

  • Expressive Design Language: Define your API with a clear, type-safe DSL that captures your intent
  • Comprehensive Code Generation:
    • Type-safe server interfaces that enforce your design
    • Client packages with full error handling
    • Transport layer adapters (HTTP/gRPC/JSON-RPC) with routing and encoding
    • OpenAPI/Swagger documentation that's always in sync
    • CLI tools for testing your services
  • Multi-Protocol Support: Generate HTTP REST, gRPC, and JSON-RPC endpoints from a single design
  • Clean Architecture: Business logic remains separate from transport concerns
  • Enterprise Ready: Supports authentication, authorization, CORS, logging, and more
  • Comprehensive Testing: Includes extensive unit and integration test suites ensuring quality and reliability

How It Works

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”     โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”     โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚ Design API  โ”‚โ”€โ”€โ”€โ”€>โ”‚ Generate Codeโ”‚โ”€โ”€โ”€โ”€>โ”‚ Implement Business  โ”‚
โ”‚ using DSL   โ”‚     โ”‚ & Docs       โ”‚     โ”‚ Logic               โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜     โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜     โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
  1. Design: Express your API's intent in Goa's DSL
  2. Generate: Run goa gen to create server interfaces, client code, and documentation
  3. Implement: Focus solely on writing your business logic in the generated interfaces
  4. Evolve: Update your design and regenerate code as your API evolves

Quick Start

# Install Goa
go install goa.design/goa/v3/cmd/goa@latest

# Create a new module
mkdir hello && cd hello
go mod init hello

# Define a service in design/design.go
mkdir design
cat > design/design.go << EOF
package design

import . "goa.design/goa/v3/dsl"

var _ = Service("hello", func() {
    Method("say_hello", func() {
        Payload(func() {
            Field(1, "name", String)
            Required("name")
        })
        Result(String)

        HTTP(func() {
            GET("/hello/{name}")
        })
    })
})
EOF

# Generate the code
goa gen hello/design
goa example hello/design

# Build and run
go mod tidy
go run cmd/hello/*.go --http-port 8000

# In another terminal
curl http://localhost:8000/hello/world

The example above:

  1. Defines a simple "hello" service with one method
  2. Generates server and client code
  3. Starts a server that logs requests server-side (without displaying any client output)

JSON-RPC Alternative

For a JSON-RPC service, simply add a JSONRPC expression to the service and method:

var _ = Service("hello" , func() {
    JSONRPC(func() {
        Path("/jsonrpc")
    })
    Method("say_hello", func() {
        Payload(func() {
            Field(1, "name", String)
            Required("name")
        })
        Result(String)

        JSONRPC(func() {})
    })
}

Then test with:

curl -X POST http://localhost:8000/jsonrpc \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","method":"hello.say_hello","params":{"name":"world"},"id":"1"}'

Documentation

Our documentation site at goa.design provides comprehensive guides and references:

Real-World Examples

The examples repository contains complete, working examples demonstrating:

  • Basic: Simple service showcasing core Goa concepts
  • Cellar: A more complete REST API example
  • Cookies: HTTP cookie management
  • Encodings: Working with different content types
  • Error: Comprehensive error handling strategies
  • Files & Upload/Download: File handling capabilities
  • HTTP Status: Custom status code handling
  • Interceptors: Request/response processing middleware
  • Multipart: Handling multipart form submissions
  • Security: Authentication and authorization examples
  • Streaming: Implementing streaming endpoints (HTTP, WebSocket, JSON-RPC SSE)
  • Tracing: Integrating with observability tools
  • TUS: Resumable file uploads implementation

Community & Support

License

MIT License - see LICENSE for details.

Release History

VersionChangesUrgencyDate
v3.28.0Goa v3.28.0 focuses on faster generation for large designs, more accurate OpenAPI security output, and compatibility with the current Go 1.25 toolchain. ## Highlights - Code generation now avoids repeated import recomputation across generated file batches, significantly reducing generation time for large designs. In downstream testing, a full generation script dropped from about 46 seconds to about 11 seconds. [#3932](https://github.com/goadesign/goa/pull/3932) - OpenAPI v2 and v3 generation nHigh6/2/2026
v3.27.0Goa v3.27.0 adds first-class support for standard Bearer token authentication and improves generated code in a few places that matter when real projects turn on stricter typing and linting. ## Highlights - Added `BearerSecurity` and `BearerToken` for APIs that use the standard `Authorization: Bearer` format without needing JWT-specific DSL names. This gives generic bearer-token APIs clearer designs, generated code, and OpenAPI output. (#3925) - Fixed HTTP path and query parameter generation foHigh5/24/2026
v3.26.0Goa v3.26.0 improves code generation correctness across HTTP and gRPC, adds support for cookie-backed API key inference, and reduces generator churn for downstream users. ## Highlights - Added cookie-backed API key security inference across generated HTTP code and OpenAPI output. - Fixed mixed gRPC streaming request generation by moving one-shot payloads back into the typed protobuf channel instead of implicitly rewriting them into metadata. - Improved generator stability with deterministic unHigh4/12/2026
v3.25.3## Highlights - Fixes a code generation regression where HTTP request decoders for **primitive payloads** (e.g. `string`, `bool`, numeric types) could emit invalid early returns (`return nil, err`) on validation/decode errors. - Prevents downstream build failures such as `cannot use nil as string value in return statement` for designs using primitive payloads with validations (e.g. `Format(FormatIP)` on path params). - Adds regression coverage, including a golden-backed case for `Format(FormatILow2/19/2026
v3.25.2## Highlights - Fixes code generation for `OneOf` primitive aliases when service types are emitted to custom packages via `struct:pkg:path`. - Prevents `undefined: Value*` compile errors in generated service code for affected designs. - Adds regression coverage for nested types and JSON-tagged field variants to prevent this from reappearing. ## What's Changed - codegen/service: fix primitive OneOf alias emission with struct:pkg:path by @raphael in #3900 ## Full Changelog https://github.com/Low2/19/2026
v3.25.1## Highlights - **HTTP route tagging fix (otelhttp)**: v3.25.1 completes the `r.Pattern` route tagging work from v3.25.0 so `otelhttp` (v0.65.0+) reliably records the `http.route` span attribute and metric route when used as a mux middleware (`mux.Use(otelhttp.NewMiddleware(...))`). ([#3898](https://github.com/goadesign/goa/pull/3898)) - **Better DSL error messages**: validation errors include `file:line` locations pointing to the offending design declaration, making it much faster to find and Low2/16/2026
v3.25.0## Highlights - **Automatic HTTP route tagging**: the default Goa muxer now sets `r.Pattern` on every dispatched request, enabling observability middleware like `otelhttp` (v0.65.0+) to tag spans and metrics with the matched route automatically โ€” no per-handler wrapping or plugin required. ([#3897](https://github.com/goadesign/goa/pull/3897)) - **Better DSL error messages**: validation errors now include `file:line` locations pointing to the offending design declaration, making it much faster tLow2/16/2026
v3.24.3## Highlights - **Codegen (views/OneOf)**: fix generated examples when a `ResultType` contains a `OneOf` (union) field by emitting the required union helpers in the `views` package. ([#3884](https://github.com/goadesign/goa/pull/3884)) - **Codegen (mixed unary + SSE)**: support services that expose both unary and SSE streaming results cleanly. ([#3883](https://github.com/goadesign/goa/pull/3883)) - **HTTP client codegen**: fixes and improvements to the generated HTTP client. ([#3879](https://gitLow2/7/2026
v3.24.2## Highlights - **Codegen correctness for union transforms**: sum-type union **object branches now use the generated per-type helper transforms**, avoiding branch-local inline conversions that could disagree on details (notably **nested map key casts**). ([#3880](https://github.com/goadesign/goa/pull/3880)) - **Qualified type refs are now stable and real**: transport codegen no longer โ€œsuffixesโ€ the `Type` portion of `pkg.Type` refs (preventing invalid refs like `pkg.Foo2`), while still **reusinLow2/1/2026
v3.24.1### Goa v3.24.1 ### Highlights - **Fix: unions + custom `struct:pkg:path` now generate valid code** v3.24.0 introduced generated JSON marshalers for union sum types. When a union (or a type containing a union) was generated into a separate file via `Meta("struct:pkg:path", ...)`, the generated file could miss the required `encoding/json` import, causing compile failures. v3.24.1 fixes this by ensuring service codegen `struct:pkg:path` โ€œUser typesโ€ files include the JSON import. ### ChangLow1/18/2026
v3.23.4## What's Changed ### Bug Fixes * **eval:** Fix error location for module cache paths ([#3861](https://github.com/goadesign/goa/pull/3861)) When Goa is consumed from the Go module cache, file paths contain `@version` segments (e.g., `goa/v3@v3.23.2/dsl/...`). The error location heuristic was failing to recognize these as DSL frames, causing errors to point at internal DSL files rather than the user's design. Error messages now correctly show: ``` [design.go:5] invalid use of ViewLow12/14/2025
v3.23.2## What's Changed * grpc: complete validation helper naming fix by @raphael in https://github.com/goadesign/goa/pull/3854 **Full Changelog**: https://github.com/goadesign/goa/compare/v3.23.1...v3.23.2Low11/26/2025
v3.23.1## What's Changed * grpc: fix validation helper naming to match call sites by @raphael in https://github.com/goadesign/goa/pull/3853 **Full Changelog**: https://github.com/goadesign/goa/compare/v3.23.0...v3.23.1Low11/26/2025
v3.23.0# Goa v3.23.0 We are thrilled to announce Goa v3.23.0! This release brings massive performance improvements to the code generation process, speeding it up by over 80%. It also includes important updates to the DSL, improved validation logic, and support for the latest JSON Schema draft in OpenAPI. ## Performance * **Massive Code Generation Speedup:** The code generator has been optimized to be over 80% faster, making your development loop tighter than ever. ([#3832](https://github.com/gLow11/26/2025
v3.22.6## New Features - http/codegen(sse): format SSE data using response body types with primitive-friendly encoding (#3821) ## Bug Fixes - expr/interceptor: fix attribute validation to consider inherited attributes from Extend (#3822) - http/codegen: add GetBody to requests with JSON encoder to fix HTTP/2 retry errors (#3737) - http/openapi/v3: normalize file server wildcards and add parameter schema for wildcard paths (#3816) - codegen/cli: escape CLI examples to avoid raw baLow10/19/2025
v3.22.5This release includes a few new features and bug fixes. ### New Features * `grpc`: add support for Any type mapping to google.protobuf.Any (#3812) * `grpc`: enhance error handling with detailed history in ErrorResponse (#3810) ### Bug Fixes * `http/codegen`: fix SSE client unused locals and struct decode (#3813) * `codegen(service)`: add SendWithContext and RecvWithContext methods to streaming interfaces (#3811) Low10/4/2025
v3.22.3## What's Changed * codegen(service,jsonrpc): dedupe SSE event markers and JSON-RPC SSE switch cases for shared result types; add tests by @raphael in https://github.com/goadesign/goa/pull/3805 * gRPC: Avoid synthetic wrappers for user-type OneOfs; add regression test by @raphael in https://github.com/goadesign/goa/pull/3808 * chore: redirect CLAUDE.md to AGENTS.md by @raphael in https://github.com/goadesign/goa/pull/3809 **Full Changelog**: https://github.com/goadesign/goa/compare/v3.22Low9/21/2025
v3.22.2 # Goa v3.22.2 Release Notes ## Highlights - Prevent invalid code when different declared types share the same TypeName. Goa now validates duplicate TypeNames across declared ResultTypes and UserTypes (generated collections are ignored), failing fast with a clear error instead of generating conflicting code (Fixes Issue #3799 (https://github.com/goadesign/goa/issues/3799), PR #3801 (https://github.com/goadesign/goa/pull/3801)). - Robustness across transports: - HTTP: fix Low9/13/2025
v3.22.1### Goa v3.22.1 Release Notes #### Highlights - JSONโ€‘RPC 2.0 transport joins HTTP and gRPC as a firstโ€‘class option. Generate servers, clients, CLI, streaming (WebSocket, SSE), batch requests, and notifications from the same design. This makes Goa a great fit for RPCโ€‘style APIs across protocols without duplicating effort ([PR #3734](https://github.com/goadesign/goa/pull/3734)). - Toolchain updated to Go 1.24 (toolchain `go1.24.4`) with refreshed dependencies for better performLow8/13/2025
v3.21.5# Goa v3.21.5 Release Notes ## Major Architectural Improvements ### Eliminated Global Dependencies in Code Generation ([#3721](https://github.com/goadesign/goa/pull/3721)) *by @raphael* The code generation architecture has been significantly refactored to remove global state dependencies, improving maintainability and testability: - **Non-global root expressions**: Code generation now passes root expressions as parameters instead of relying on global variables - **Restructured ServicLow7/21/2025
v3.21.1## What's Changed * **Update Speakeasy sponsor URL** by @ndimares in https://github.com/goadesign/goa/pull/3707 This update refreshes the sponsor URL for Speakeasy, ensuring that links to this Goa framework sponsor point to the correct location. * **Fix duplicate security schemes in generated code** by @disintegrator in https://github.com/goadesign/goa/pull/3690 This fix resolves a code generation bug that occurred when API designs used multiple security schemes of the same type.Low5/23/2025
v3.21.0## New Features This release adds native support for [Server-Sent Events](https://developer.mozilla.org/en-US/docs/Web/API/Server-sent_events/Using_server-sent_events) to Goa. * Read the [initial proposal](https://github.com/goadesign/goa/issues/3696) * Run the [monitor example](https://github.com/goadesign/examples/tree/master/sse) Additionally this release changes how Goa generated OpenAPI specification examples for aliased primitive types. Previously each attribute using such types wouLow5/5/2025
v3.20.1## What's Changed * Make tests independent of Goa version by @raphael in https://github.com/goadesign/goa/pull/3657 * Use eval.InvalidArgError() to dsl.Body() more by @tchssk in https://github.com/goadesign/goa/pull/3658 * Refresh README by @raphael in https://github.com/goadesign/goa/pull/3659 * Properly consider bases when validating interceptors by @raphael in https://github.com/goadesign/goa/pull/3666 * Properly handle interceptor types in custom packages by @raphael in https://github.cLow3/26/2025
v3.20.0## What's Changed * Use doc.IsPredeclared() and token.IsKeyword() for codegen.fixReservedGo() by @tchssk in https://github.com/goadesign/goa/pull/3599 * Fix conversion methods to use correct external type by @tchssk in https://github.com/goadesign/goa/pull/3607 * Remove bases from attributes once they are finalized. by @raphael in https://github.com/goadesign/goa/pull/3608 * Introducing Goa Guru on Gurubase.io by @kursataktas in https://github.com/goadesign/goa/pull/3612 * chore: update speLow2/22/2025
v3.19.1## What's Changed * Properly handle serving renamed files by @raphael in https://github.com/goadesign/goa/pull/3593 * Property set request and response type UIDs by @raphael in https://github.com/goadesign/goa/pull/3596 **Full Changelog**: https://github.com/goadesign/goa/compare/v3.19.0...v3.19.1Low9/23/2024
v3.19.0## What's Changed * Add typed nil validation to dsl.Security by @tchssk in https://github.com/goadesign/goa/pull/3574 * Write response headers with SkipEncodeDecodeResponseBody using a custom writer by @raphael in https://github.com/goadesign/goa/pull/3578 * Add "openapi:typename" meta to user types by @raphael in https://github.com/goadesign/goa/pull/3572 * Add TooFewArgError to dsl.OneOf by @tchssk in https://github.com/goadesign/goa/pull/3577 * Add nil validation of reference type to dslLow9/10/2024
v3.18.2## What's Changed * Generate view types for embedded user types by @raphael in https://github.com/goadesign/goa/pull/3569 **Full Changelog**: https://github.com/goadesign/goa/compare/v3.18.1...v3.18.2Low8/2/2024
v3.18.1## What's Changed * Remove generation of unnecessary view types. by @raphael in https://github.com/goadesign/goa/pull/3568 **Full Changelog**: https://github.com/goadesign/goa/compare/v3.18.0...v3.18.1Low7/31/2024
v3.18.0## What's Changed * Fix handling of result types used in bodies by @raphael in https://github.com/goadesign/goa/pull/3559 * Remove unnecesary imports of exampleServiceFile() in codegen/service by @tchssk in https://github.com/goadesign/goa/pull/3558 * Add eval.TooFewArgError() by @tchssk in https://github.com/goadesign/goa/pull/3557 * Update Speakeasy URL in Goa Readme by @ndimares in https://github.com/goadesign/goa/pull/3563 * Handle Any type as a typeless schema in OpenAPI by @tchssk in Low7/28/2024
v3.17.2## What's Changed * Fix example generation by @raphael in https://github.com/goadesign/goa/pull/3547 * Use errorlint from golangci-lint by @tchssk in https://github.com/goadesign/goa/pull/3548 * Fix grpc example by @raphael in https://github.com/goadesign/goa/pull/3549 * Mount clue HTTP request log middleware by @raphael in https://github.com/goadesign/goa/pull/3550 * Properly handle custom package result types by @raphael in https://github.com/goadesign/goa/pull/3551 * Correctly handle spLow7/8/2024
v3.17.1## What's Changed * Support nested DSLs by eval.caller() by @tchssk in https://github.com/goadesign/goa/pull/3523 * Properly handle SkipRequestBodyEncodeDecode when generating CLI by @raphael in https://github.com/goadesign/goa/pull/3532 * Use eval.TooManyArgError() more by @tchssk in https://github.com/goadesign/goa/pull/3526 * Add test for eval.InvalidArgError() by @tchssk in https://github.com/goadesign/goa/pull/3536 * SkipResponseWriter by @duckbrain in https://github.com/goadesign/goa/Low7/3/2024
v3.16.2## What's Changed * Add eval.TooManyArgError() by @tchssk in https://github.com/goadesign/goa/pull/3512 * Handle unsupported request content type by @raphael in https://github.com/goadesign/goa/pull/3513 * Fix godoc for dsl.Param() by @tchssk in https://github.com/goadesign/goa/pull/3514 * Fix OpenAPI v2 to not merge service params into endpoint headers by @tchssk in https://github.com/goadesign/goa/pull/3515 * Add test for eval.TooManyArgError() by @tchssk in https://github.com/goadesign/gLow5/18/2024
v3.16.1## What's Changed * Save r.URL.Query() in a variable by @duckbrain in https://github.com/goadesign/goa/pull/3506 * chore: fix function names in comment by @goodfirm in https://github.com/goadesign/goa/pull/3504 * go fmt ./... by @tchssk in https://github.com/goadesign/goa/pull/3507 * Fix handling of custom gen packages by @raphael in https://github.com/goadesign/goa/pull/3508 ## New Contributors * @duckbrain made their first contribution in https://github.com/goadesign/goa/pull/3506 * @Low4/16/2024
v3.16.0## What's Changed * Add OpenAPI deprecated support to DSL. by @xlanor in https://github.com/goadesign/goa/pull/3497 * Customize proto message name by @nitinmohan87 in https://github.com/goadesign/goa/pull/3498 * Fix eval.IncompatibleDSL() to hide internal DSL by @tchssk in https://github.com/goadesign/goa/pull/3502 ## New Contributors * @xlanor made their first contribution in https://github.com/goadesign/goa/pull/3497 **Full Changelog**: https://github.com/goadesign/goa/compare/v3.15.Low4/10/2024
v3.15.2## What's Changed * Rename to codegen/service/templates/security_authfuncs.go.tpl by @tchssk in https://github.com/goadesign/goa/pull/3496 **Full Changelog**: https://github.com/goadesign/goa/compare/v3.15.1...v3.15.2Low3/13/2024
v3.15.1## What's Changed * Add openapi:json:indent Meta by @tchssk in https://github.com/goadesign/goa/pull/3480 * Fix validation code for projected union types by @raphael in https://github.com/goadesign/goa/pull/3487 * Return a validation error when query string is malformed by @raphael in https://github.com/goadesign/goa/pull/3488 * Properly handle decoding of maps with nil entries by @raphael in https://github.com/goadesign/goa/pull/3490 * Correctly handle union to union transforms by @raphaelLow3/10/2024
v3.15.0## What's Changed * Standardize OpenAPI integer format by @raphael in https://github.com/goadesign/goa/pull/3451 * Fix openapi:generate Meta to affect required validations by @tchssk in https://github.com/goadesign/goa/pull/3452 * Merge duplicate mustGenerate() functions by @tchssk in https://github.com/goadesign/goa/pull/3453 * Generate valid OpenAPI specifications by @raphael in https://github.com/goadesign/goa/pull/3454 * Embed template files at compile time by @raphael in https://githubLow2/18/2024
v3.14.6## What's Changed * Properly generate format for primitive types in OpenAPI specs by @tchssk in https://github.com/goadesign/goa/pull/3447 * Properly handle MapParams by @raphael in https://github.com/goadesign/goa/pull/3450 **Full Changelog**: https://github.com/goadesign/goa/compare/v3.14.5...v3.14.6Low1/15/2024
v3.14.5## What's Changed * Fix godoc for openapi:generate Meta by @tchssk in https://github.com/goadesign/goa/pull/3443 * Add Speakeasy sponsorship banner by @raphael in https://github.com/goadesign/goa/pull/3444 * Add APIName constant to generated code by @raphael in https://github.com/goadesign/goa/pull/3445 * Corrected MapParams Behavior to Avoid Unintended Filtering by @raphael in https://github.com/goadesign/goa/pull/3446 **Full Changelog**: https://github.com/goadesign/goa/compare/v3.14.Low1/12/2024
v3.14.4## What's Changed * Add openapi:generate Meta support to dsl.Attribute by @tchssk in https://github.com/goadesign/goa/pull/3437 * Add API version constant to generated code by @raphael in https://github.com/goadesign/goa/pull/3439 * Deprecate obsolete instrumentation by @raphael in https://github.com/goadesign/goa/pull/3440 * Handle inline object array and map elements by @raphael in https://github.com/goadesign/goa/pull/3442 **Full Changelog**: https://github.com/goadesign/goa/compare/Low1/8/2024
v3.14.1## What's Changed * Fix generated validation code for gRPC by @tchssk in https://github.com/goadesign/goa/pull/3409 * Bump golang.org/x/text from 0.13.0 to 0.14.0 by @dependabot in https://github.com/goadesign/goa/pull/3410 * Add openapi:typename Meta support to openapi v2 by @tchssk in https://github.com/goadesign/goa/pull/3412 * Bump golang.org/x/tools from 0.14.0 to 0.15.0 by @dependabot in https://github.com/goadesign/goa/pull/3414 * Use sync.Map for http.mux.wildcards by @tchssk in htLow12/10/2023
v3.14.0## What's Changed * Bump golang.org/x/tools from 0.13.0 to 0.14.0 by @dependabot in https://github.com/goadesign/goa/pull/3386 * Update README.md by @tibers in https://github.com/goadesign/goa/pull/3391 * Bug fix SkipRequestBodyEncodeDecode by @emilkor1 in https://github.com/goadesign/goa/pull/3384 * Bump golang.org/x/net from 0.15.0 to 0.17.0 by @dependabot in https://github.com/goadesign/goa/pull/3388 * Revert "Use RedirectSlashes middleware by default Goa mux " by @tchssk in https://githLow11/3/2023
v3.13.2## What's Changed * Use HTTPName for cookies in response encoders by @sevein in https://github.com/goadesign/goa/pull/3362 * Bump google.golang.org/grpc from 1.58.1 to 1.58.2 by @dependabot in https://github.com/goadesign/goa/pull/3365 * Unescape HTTP path parameters by @tchssk in https://github.com/goadesign/goa/pull/3364 * Use RedirectSlashes middleware by default Goa mux by @tchssk in https://github.com/goadesign/goa/pull/3366 * Make DeepSource action work for all PRs by @raphael in https://Low10/2/2023
v3.13.1## What's Changed * Bump actions/checkout from 3 to 4 by @dependabot in https://github.com/goadesign/goa/pull/3352 * Bump github.com/getkin/kin-openapi from 0.119.0 to 0.120.0 by @dependabot in https://github.com/goadesign/goa/pull/3353 * Bump github.com/stretchr/testify from 1.8.1 to 1.8.4 by @dependabot in https://github.com/goadesign/goa/pull/3354 * Bump golang.org/x/tools from 0.12.0 to 0.13.0 by @dependabot in https://github.com/goadesign/goa/pull/3355 * Consider service and API level Low9/22/2023
v3.13.0## What's Changed * Bump github.com/google/uuid from 1.3.0 to 1.3.1 by @dependabot in https://github.com/goadesign/goa/pull/3331 * unused parameter should be replaced by underscore by @deepsource-autofix in https://github.com/goadesign/goa/pull/3334 * Try out deep source by @raphael in https://github.com/goadesign/goa/pull/3333 * meta openapi:example work at APIExpr level too by @antipopp in https://github.com/goadesign/goa/pull/3330 * fix unused method receiver by @deepsource-autofix in htLow9/10/2023
v3.12.4## What's Changed * Bump google.golang.org/grpc from 1.56.2 to 1.57.0 by @dependabot in https://github.com/goadesign/goa/pull/3321 * Fix returning correct status code on not hijacked streaming endpoints by @cubic3d in https://github.com/goadesign/goa/pull/3322 * Bump golang.org/x/text from 0.11.0 to 0.12.0 by @dependabot in https://github.com/goadesign/goa/pull/3324 * Bump golang.org/x/tools from 0.11.0 to 0.12.0 by @dependabot in https://github.com/goadesign/goa/pull/3325 * Replace goregenLow8/18/2023
v3.12.3## What's Changed * Enable custom primitive types to decode by @jerejones in https://github.com/goadesign/goa/pull/3317 * Fix to handle time.Time slice and other slices as type override by @maxmcd in https://github.com/goadesign/goa/pull/3312 **Full Changelog**: https://github.com/goadesign/goa/compare/v3.12.2...v3.12.3Low7/24/2023
v3.12.2## What's Changed * Bump golang.org/x/tools from 0.10.0 to 0.11.0 by @dependabot in https://github.com/goadesign/goa/pull/3314 * Bump google.golang.org/grpc from 1.56.1 to 1.56.2 by @dependabot in https://github.com/goadesign/goa/pull/3313 * Add acronym "SDK" to commonInitialisms by @dalv0911 in https://github.com/goadesign/goa/pull/3315 ## New Contributors * @dalv0911 made their first contribution in https://github.com/goadesign/goa/pull/3315 **Full Changelog**: https://github.com/goaLow7/24/2023
v3.12.1## What's Changed * Bump actions/setup-go from 3.5.0 to 4.0.0 by @dependabot in https://github.com/goadesign/goa/pull/3265 * Bump github.com/getkin/kin-openapi from 0.114.0 to 0.115.0 by @dependabot in https://github.com/goadesign/goa/pull/3266 * Bump google.golang.org/protobuf from 1.29.1 to 1.30.0 by @dependabot in https://github.com/goadesign/goa/pull/3267 * Bump google.golang.org/grpc from 1.53.0 to 1.54.0 by @dependabot in https://github.com/goadesign/goa/pull/3270 * Bump actions/staleLow7/4/2023
v3.11.3## What's Changed * Rewrite `interface{}` to `any` by @ikawaha in https://github.com/goadesign/goa/pull/3263 * OpenAPI v3 response is binary when SkipResponseBodyEncodeDecode by @najeira in https://github.com/goadesign/goa/pull/3262 * Remove use of deprecated package by @raphael in https://github.com/goadesign/goa/pull/3264 **Full Changelog**: https://github.com/goadesign/goa/compare/v3.11.2...v3.11.3Low3/20/2023
v3.11.2## What's Changed * Fix syntax of dsl.Meta("struct:field:external") from dots to colons by @tchssk in https://github.com/goadesign/goa/pull/3251 * Bump golang.org/x/text from 0.7.0 to 0.8.0 by @dependabot in https://github.com/goadesign/goa/pull/3252 * Use time.DateOnly by @tchssk in https://github.com/goadesign/goa/pull/3254 * Fix use of View in CollectionOf by @raphael in https://github.com/goadesign/goa/pull/3255 * Bump golang.org/x/tools from 0.6.0 to 0.7.0 by @dependabot in https://gitLow3/17/2023
v3.11.1## What's Changed * ClientError: Add original error by @RadekDvorak in https://github.com/goadesign/goa/pull/3232 * Remove typo in documented example for CollectionOf DSL by @sbchapin in https://github.com/goadesign/goa/pull/3239 * Fix broken type references in custom package by @c-reeder in https://github.com/goadesign/goa/pull/3207 * Use errors.Join() instead of go-multierror by @tchssk in https://github.com/goadesign/goa/pull/3249 * Fix use of `struct:pkg:path` with result types. by @rapLow2/26/2023

Dependencies & License Audit

Loading dependencies...

Similar Packages

go-apispecGenerate OpenAPI 3.1 specs from Go source code via static analysis โ€” zero annotations, automatic framework detectionv0.4.14
jzero Automatically generate server and client framework code based on descriptive files (proto/api/sql), while using built-in jzero-skills to empower AI to generate production-ready business code adheringv1.4.0
drf-spectacularSane and flexible OpenAPI 3 schema generation for Django REST framework0.29.0
suricataType-safe AI agents for Go. Suricata combines LLM intelligence with Goโ€™s strong typing, declarative YAML specs, and code generation to build safe, maintainable, and production-ready AI agents.0.0.0
boxsdkOfficial Box Python SDKv10.11.0

More in Frameworks

langchainThe agent engineering platform
deer-flowAn open-source long-horizon SuperAgent harness that researches, codes, and creates. With the help of sandboxes, memories, tools, skill, subagents and message gateway, it handles different levels of ta
tqdmFast, Extensible Progress Meter
simBuild, deploy, and orchestrate AI agents. Sim is the central intelligence layer for your AI workforce.