logo
  • Introduction
  • Quickstart
  • About the docs
  • Concepts
    Rationale HTTP Serverless WebSockets Server-Sent Events
  • Tutorials
    Your first http4k app Deploying an http4k app to AWS Lambda Going native with Graal on AWS Lambda TDDing http4k
  • How-to guides
    Overview Basic: Server as a function Basic: Client as a function Basic: Use a Server backend Basic: Different test-types Basic: Simple routing Basic: Nestable routes Attach context to a request Configure an OAuth Server Create a custom JSON marshaller Customise a Server backend Deploy WebJars Integrate with OpenAPI Leverage GraphQL Lookup a User Principal Monitor http4k Record & replay HTTP traffic Serve Server-Sent Events Serve Websockets Structure your logs with Events Test using Service Virtualisation Typesafe your API with lenses Secure and auth HTTP services Use a custom OAuth Provider Use a templating engines Use HTML forms Use Multipart forms Create a Distributed Tracing tree Use Auto Content Negotiation Create a Swagger UI
  • Reference
    Overview API docs Core Server backend Serverless backend HTTP & Websocket clients Typesafe contracts (OpenAPI3) JSON handling Templating Multipart forms Cloud Native Configuration Cloud Events Micrometer OpenTelemetry Resilience4J AWS OAuth GraphQL JSON RPC XML handling YAML handling Testing
    Overview Approval Testing Chaos Testing Hamkrest Kotest Service Virtualisation Strikt WebDriver
  • Blog
    Overview Meet http4k Typesafe Websockets Typesafe 12-factor config Documenting http4k apps with OpenApi3 Retrospective on v3 Nanoservices Toolbox: Guns for show, knives for a pro http4k v4 - 17 platforms and counting... JCenter Shutdown
  • Changelog
  • http4k in action
  • Performance
  • FAQ
  • Getting support
  • Contribute/support http4k
  • Code of Conduct
  • See source on GitHub  Source Code

http4k Modules overview¶

Core functionality¶

Core OpenAPI Contracts Multipart Forms GraphQL

HTTP Server Backends¶

Apache 4 & 5 Jetty Ktor CIO & Netty Netty Ratpack SunHttp Undertow

HTTP Serverless Backends¶

Alibaba Function Compute Apache OpenWhisk AWS Lambda Azure Functions Google Cloud Functions Tencent Serverless Cloud Functions

HTTP Clients¶

Apache4 Sync & Async Apache5 Sync & Async Java Fuel Jetty OkHttp Websocket

Messaging formats¶

Argo Gson Gson XML Jackson Jackson XML Jackson YAML JSON RPC KotlinX Serialisation Klaxon Moshi

Templating libraries¶

Dust Freemarker Handlebars Jade4j Pebble Thymeleaf

Cloud-Native & Observability¶

AWS Cloud Native Configuration Cloud Events Digest Auth OAuth Micrometer OpenTelemetry Resilience4J

Testing¶

Approval Testing Chaos Monkey Hamkrest Kotest Servirtium WebDriver