Changelog

All notable changes to this project will be documented here.

Format follows Keep a Changelog. Versioning follows Semantic Versioning.


[2.0.0] — 2026-07-31


[1.2.0] — 2026-04-22

Query parameters (typed)

Response helpers with body

Documentation


[1.1.0] — 2026-03-23


[1.0.0] — 2026-03-20

First stable release.

Router construction

Typed routes (get1 / get2 / get3)

Typed path parameters in patterns

Match priority (structural, not registration-order)

Literal > <id:int> > <name:string> > *wildcard. A literal segment always takes priority over a capture regardless of which was registered first. <id:int> always takes priority over <name:string> for integer segments.

Routing tree

Prefix tree (trie) backend. Literal segment lookup is O(1) via an internal Dict; captures and wildcards are tried only when no literal matches. For all-literal paths, matching cost is strictly O(path depth).

Routing utilities

Request accessors

Type-safe context

Response helpers

Built-in middleware

HEAD support

HEAD requests automatically fall through to the registered GET handler and return an empty body, per RFC 9110 §9.3.2.

Server integration

Testing helpers

Request builders: test_request, test_get, test_post, test_put, test_patch, test_delete, test_head, test_options.

Fluent assertions (chainable, panic on failure):

Runtime dependencies

gleam_stdlib, gleam_http, gleam_json, exception.

Search Document