# Tapir > Declarative, type-safe web endpoints library for Scala ## Docs - [tapir](https://tapir.softwaremill.com/en/latest/_sources/index.md.txt) - [Quickstart](https://tapir.softwaremill.com/en/latest/_sources/quickstart.md.txt) - [Generate a Tapir project](https://tapir.softwaremill.com/en/latest/_sources/generate.md.txt) - [Adopters](https://tapir.softwaremill.com/en/latest/_sources/adopters.md.txt) - [Support & sponsorship](https://tapir.softwaremill.com/en/latest/_sources/support.md.txt) - [Scala 2, Scala 3; JVM, JS & Native](https://tapir.softwaremill.com/en/latest/_sources/scala_2_3_platforms.md.txt) - [1. Hello, world!](https://tapir.softwaremill.com/en/latest/_sources/tutorials/01_hello_world.md.txt) - [2. Auto-generating OpenAPI docs](https://tapir.softwaremill.com/en/latest/_sources/tutorials/02_openapi_docs.md.txt) - [3. Using JSON bodies](https://tapir.softwaremill.com/en/latest/_sources/tutorials/03_json.md.txt) - [4. Error handling](https://tapir.softwaremill.com/en/latest/_sources/tutorials/04_errors.md.txt) - [5. Multiple inputs & outputs](https://tapir.softwaremill.com/en/latest/_sources/tutorials/05_multiple_inputs_outputs.md.txt) - [6. Error variants](https://tapir.softwaremill.com/en/latest/_sources/tutorials/06_error_variants.md.txt) - [7. Integration with cats-effect & http4s](https://tapir.softwaremill.com/en/latest/_sources/tutorials/07_cats_effect.md.txt) - [Examples by category](https://tapir.softwaremill.com/en/latest/_sources/examples.md.txt) - [Articles, videos, other examples](https://tapir.softwaremill.com/en/latest/_sources/external.md.txt) - [Handling Delimited Path Parameters](https://tapir.softwaremill.com/en/latest/_sources/how-tos/delimited-path-parameters.md.txt) - [Basics](https://tapir.softwaremill.com/en/latest/_sources/endpoint/basics.md.txt) - [Codecs](https://tapir.softwaremill.com/en/latest/_sources/endpoint/codecs.md.txt) - [Content type](https://tapir.softwaremill.com/en/latest/_sources/endpoint/contenttype.md.txt) - [Adding support for custom types](https://tapir.softwaremill.com/en/latest/_sources/endpoint/customtypes.md.txt) - [Enumerations](https://tapir.softwaremill.com/en/latest/_sources/endpoint/enumerations.md.txt) - [Forms](https://tapir.softwaremill.com/en/latest/_sources/endpoint/forms.md.txt) - [Third-party datatype libraries integrations](https://tapir.softwaremill.com/en/latest/_sources/endpoint/integrations.md.txt) - [Inputs/outputs](https://tapir.softwaremill.com/en/latest/_sources/endpoint/ios.md.txt) - [Working with JSON](https://tapir.softwaremill.com/en/latest/_sources/endpoint/json.md.txt) - [One-of variants](https://tapir.softwaremill.com/en/latest/_sources/endpoint/oneof.md.txt) - [JSON Pickler](https://tapir.softwaremill.com/en/latest/_sources/endpoint/pickler.md.txt) - [Schema derivation](https://tapir.softwaremill.com/en/latest/_sources/endpoint/schemas.md.txt) - [Security](https://tapir.softwaremill.com/en/latest/_sources/endpoint/security.md.txt) - [Serving static content](https://tapir.softwaremill.com/en/latest/_sources/endpoint/static.md.txt) - [Streaming support](https://tapir.softwaremill.com/en/latest/_sources/endpoint/streaming.md.txt) - [Validation](https://tapir.softwaremill.com/en/latest/_sources/endpoint/validation.md.txt) - [Web sockets](https://tapir.softwaremill.com/en/latest/_sources/endpoint/websockets.md.txt) - [Working with XML](https://tapir.softwaremill.com/en/latest/_sources/endpoint/xml.md.txt) - [Overview of server integrations](https://tapir.softwaremill.com/en/latest/_sources/server/overview.md.txt) - [Running as an akka-http server](https://tapir.softwaremill.com/en/latest/_sources/server/akkahttp.md.txt) - [Running as an Armeria server](https://tapir.softwaremill.com/en/latest/_sources/server/armeria.md.txt) - [Running using the AWS serverless stack](https://tapir.softwaremill.com/en/latest/_sources/server/aws.md.txt) - [Logging & debugging](https://tapir.softwaremill.com/en/latest/_sources/server/debugging.md.txt) - [Error handling](https://tapir.softwaremill.com/en/latest/_sources/server/errors.md.txt) - [Running as a Finatra server](https://tapir.softwaremill.com/en/latest/_sources/server/finatra.md.txt) - [Running as an http4s server](https://tapir.softwaremill.com/en/latest/_sources/server/http4s.md.txt) - [Interceptors](https://tapir.softwaremill.com/en/latest/_sources/server/interceptors.md.txt) - [Running as a JDK http server](https://tapir.softwaremill.com/en/latest/_sources/server/jdkhttp.md.txt) - [Server logic](https://tapir.softwaremill.com/en/latest/_sources/server/logic.md.txt) - [Running as a Netty-based server](https://tapir.softwaremill.com/en/latest/_sources/server/netty.md.txt) - [Running as a Helidon Níma server](https://tapir.softwaremill.com/en/latest/_sources/server/nima.md.txt) - [Observability](https://tapir.softwaremill.com/en/latest/_sources/server/observability.md.txt) - [Server options](https://tapir.softwaremill.com/en/latest/_sources/server/options.md.txt) - [Path matching](https://tapir.softwaremill.com/en/latest/_sources/server/path.md.txt) - [Running as a pekko-http server](https://tapir.softwaremill.com/en/latest/_sources/server/pekkohttp.md.txt) - [Running as a Play server](https://tapir.softwaremill.com/en/latest/_sources/server/play.md.txt) - [Running as a Vert.X server](https://tapir.softwaremill.com/en/latest/_sources/server/vertx.md.txt) - [Running as an http4s server using ZIO](https://tapir.softwaremill.com/en/latest/_sources/server/zio-http4s.md.txt) - [Running as a zio-http server](https://tapir.softwaremill.com/en/latest/_sources/server/ziohttp.md.txt) - [Using as an sttp client (v3)](https://tapir.softwaremill.com/en/latest/_sources/client/sttp.md.txt) - [Using as an http4s client](https://tapir.softwaremill.com/en/latest/_sources/client/http4s.md.txt) - [Using as a Play client](https://tapir.softwaremill.com/en/latest/_sources/client/play.md.txt) - [Using as an sttp client (v4)](https://tapir.softwaremill.com/en/latest/_sources/client/sttp4.md.txt) - [Generating OpenAPI documentation](https://tapir.softwaremill.com/en/latest/_sources/docs/openapi.md.txt) - [Generating AsyncAPI documentation](https://tapir.softwaremill.com/en/latest/_sources/docs/asyncapi.md.txt) - [Generating JSON Schema](https://tapir.softwaremill.com/en/latest/_sources/docs/json-schema.md.txt) - [Testing](https://tapir.softwaremill.com/en/latest/_sources/testing.md.txt) - [Generate endpoint definitions from an OpenAPI YAML](https://tapir.softwaremill.com/en/latest/_sources/generator/sbt-openapi-codegen.md.txt) - [Stability of modules](https://tapir.softwaremill.com/en/latest/_sources/other/stability.md.txt) - [Architecture Decision Records](https://tapir.softwaremill.com/en/latest/_sources/other/adr.md.txt) - [Contributing](https://tapir.softwaremill.com/en/latest/_sources/other/contributing.md.txt) - [Goals of the project](https://tapir.softwaremill.com/en/latest/_sources/other/goals.md.txt) - [gRPC](https://tapir.softwaremill.com/en/latest/_sources/other/grpc.md.txt) - [Migrating](https://tapir.softwaremill.com/en/latest/_sources/other/migrating.md.txt) - [Creating your own tapir](https://tapir.softwaremill.com/en/latest/_sources/other/mytapir.md.txt) - [Other interpreters & extensions](https://tapir.softwaremill.com/en/latest/_sources/other/other_interpreters.md.txt) - [Troubleshooting](https://tapir.softwaremill.com/en/latest/_sources/other/troubleshooting.md.txt) - [1. Explicit encode function on Validator.Enum](https://tapir.softwaremill.com/en/latest/_sources/adr/0001-explicit-encode-function-on-validator-enum.md.txt) - [2. Codecs, schemas, validators](https://tapir.softwaremill.com/en/latest/_sources/adr/0002-codecs-schemas-validators.md.txt) - [3. Shape of IOs](https://tapir.softwaremill.com/en/latest/_sources/adr/0003-shape-of-ios.md.txt) - [4. Codecs parametrised by raw values](https://tapir.softwaremill.com/en/latest/_sources/adr/0004-codecs-parametrised-by-raw-values.md.txt) - [5. Rethinking codecs](https://tapir.softwaremill.com/en/latest/_sources/adr/0005-rethinking-codecs.md.txt) - [6. Partial server logic](https://tapir.softwaremill.com/en/latest/_sources/adr/0006-partial-server-logic.md.txt) - [7. Codecs and schemas derivation configs](https://tapir.softwaremill.com/en/latest/_sources/adr/0007-codecs-schemas-configuration.md.txt) - [8. No effectful maps](https://tapir.softwaremill.com/en/latest/_sources/adr/0008-effectful-maps.md.txt) - [9. Lists are optional](https://tapir.softwaremill.com/en/latest/_sources/adr/0009-lists-are-optional.md.txt) - [10. Security refactoring](https://tapir.softwaremill.com/en/latest/_sources/adr/0010-security-refactoring.md.txt) - [11. Dedicated schema macros](https://tapir.softwaremill.com/en/latest/_sources/adr/0011-dedicated-schema-macros.md.txt) - [12. Extracting schema as a module](https://tapir.softwaremill.com/en/latest/_sources/adr/0012-extracting-schema-as-a-module.md.txt) - [SoftwareMill launches stable release of tapir, making it easier than ever for HTTP API developers to benefit from Scala’s expressivity](https://tapir.softwaremill.com/en/latest/_sources/press/tapir-1-0-released.md.txt)