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: