fuego

Golang Fuego - web framework generating OpenAPI 3 spec from source code

MIT License

Stars
813

Bot releases are hidden (Show)

fuego - v0.14.0: Going stronger ⚙️ Latest Release

Published by EwenQuim 3 months ago

v0.14 : Going stronger ⚙️

v0.14 was a lot of hard work for us maintainers, but a lot of new features are coming to Fuego. 🔥

Fuego's has been tested through an intensive test suite and also in prod last few months, with great success at my company! I think we can say we are production-ready.

I wanted to thank the maintainers team for everything, thank you all!

Feature highlights

  • OpenAPI generation is now more complete accurate
  • We added a lot of internal tests and fixed bugs
  • We have the long-awaited multi-return feature (will describe this in a blog post)
  • Validation annotations are now understood for generating the OpenAPI schema
  • Errors can be declared globally to register standard 400, 401... errors
  • Errors can be declared on a per-route basis

What's Changed

Breaking changes

  • Your OpenAPI will be changed significantly (but for the better, we pass a lot of linters and tests)
  • Markdown package has been moved to its own module github.com/go-fuego/fuego/extra/markdown

New Contributors

Full Changelog: https://github.com/go-fuego/fuego/compare/v0.13.4...v0.14.0

fuego - v0.13.0: Errors & Tags

Published by EwenQuim 7 months ago

Features highlights 🔥

  • RFC 9457 is implemented : Fuego now uses the standard way to handle errors in an API!
  • Groups Tags : only add a tag Book once for all your /books/* routes!
  • Hide routes and groups from OpenAPI Spec (useful for HTML routes for example)
  • decode YAML input
  • (net/http) *Server is now an embedded field, making Fuego even closed from the standard library

What's Changed

New Contributors

Full Changelog: https://github.com/go-fuego/fuego/compare/v0.12.0...v0.13.0

fuego -

Published by EwenQuim 8 months ago

Features

Fuego now uses an online OpenAPI UI by default. This make the binaries built with Fuego 10Mb lighter, with the drawback to not be able to use the OpenAPI UI when offline. You can activate offline OpenAPI UI (embedded in the binary) with the build tag openapi_ui_local, see docs.

Making the binary size smaller was planned, but the idea of using StopLight Elements for the online UI was given to me by @danielgtaylor in his project Huma, a project similar to Fuego.

What's Changed

New Contributors

Full Changelog: https://github.com/go-fuego/fuego/compare/v0.11.0...v0.12.0

fuego - v0.11.0

Published by EwenQuim 8 months ago

New Features 🔥

  • Cookie OpenAPI param
fuego.Get(s, "/test", testController).
	Cookie("my-cookie", "my description")
  • Header OpenAPI param
fuego.Get(s, "/test", testController).
	Header("my-header", "my description")

What's Changed

Breaking Changes

The breaking changes are (and will always be) explicit (no silent breaking changes) and easy to change until Fuego hits 1.0

  • renamed WithDescription to Description
  • renamed WithSummary to Summary
  • renamed WithQueryParam to QueryParam
  • renamed SetDeprecated to Deprecated

New Contributors

Full Changelog: https://github.com/go-fuego/fuego/compare/v0.10.0...v0.11.0

fuego - v0.10.0

Published by EwenQuim 9 months ago

What's Changed

Features

Fixes

  • Handles strings with correct Content-Types by @EwenQuim in c2adc2e

Other

Full Changelog: https://github.com/go-fuego/fuego/compare/v0.9.0...v0.10.0

fuego - v0.8.0 The "Fuego" release 🔥

Published by EwenQuim 10 months ago

What's Changed

  • Add per route middlewares by @rizerkrof in https://github.com/go-fuego/fuego/pull/28
  • HTML Rendering by @EwenQuim in https://github.com/go-fuego/fuego/pull/29
  • Renamed Op to Fuego everywhere by @EwenQuim in 0a56b232aabc70ee3dbb4471293a498bcf573356
  • Markdown support by @EwenQuim in 121af761e26921d1ea86232edb681d14d8557d34
  • Group mux does not accepts trailing slashesby @EwenQuim in a20613a7b23a365adb49f8fbf97450226431b218
  • Pass any context from a controller to a Ctx[any] controller by @EwenQuim in 2fe3a1359145b6c952dd75ffa1201cf634a362c4
  • QueryParamInt/Bool methods by @EwenQuim in bfe4fd5867ed6eda3f22f786f85f6577911ce6f1
  • Validation should return 400 on fail by @rizerkrof in https://github.com/go-fuego/fuego/pull/30

Full Changelog: https://github.com/go-fuego/fuego/compare/v0.7.0...v0.8.0

fuego - v0.7: Templating 📃 and Auth 🔐

Published by EwenQuim 11 months ago

What's Changed

New Contributors

Full Changelog: https://github.com/go-op/op/compare/v0.6.1...v0.7.0

Package Rankings
Top 6.54% on Proxy.golang.org
Badges
Extracted from project README
Go Reference Go Report Card Coverage Status Discord Gophers