Goals of the project
programmer-friendly, human-comprehensible types, that you are not afraid to write down
(also inferencable by IntelliJ)
discoverable API through standard auto-complete
separate “business logic” from endpoint definition & documentation
as simple as possible to generate a server, client & docs
based purely on case class-based, immutable and reusable data structures
first-class OpenAPI support. Provide as much or as little detail as needed.
reasonably type safe: only, and as much types to safely generate the server/client/docs
Similar projects
There’s a number of similar projects from which tapir draws inspiration: