logo
  • Introduction
  • Quickstart
  • Rationale & concepts
  • Changelog
  • Developer guide
    Overview Core Server backend Serverless backend HTTP & Websocket clients Typesafe contracts (OpenAPI3) JSON handling Templating Multipart forms Cloud native Configuration Micrometer OpenTelemetry Resilience4J AWS OAuth GraphQL JSON RPC XML handling YAML handling Testing
    Overview Hamkrest Kotest WebDriver Approval Testing Chaos Testing Service Virtualisaion
  • Cookbook
    How to use this guide Server as a function Client as a function Container integration Simple routing Nestable routes OpenAPI contracts/routing Templating engines Typesafe RequestContexts Typesafe HTTP requests with lenses Custom JSON marshallers HTML forms Multipart forms Websockets Structured Logging with Events Basic OAuth Server configuration Custom OAuth Provider configuration Custom Server (SSL) Service Virtualisation with Servirtium Principal lookup Monitoring http4k Recording/replaying HTTP traffic Test driven apps
  • http4k in action
  • Blog
    Overview Meet http4k Typesafe Websockets TDDing http4k 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...
  • Performance
  • FAQ
  • Getting support
  • Contribute/support http4k
  • Code of Conduct
  • API docs
  • 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 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 OAuth Micrometer OpenTelemetry Resilience4J

Testing¶

Approval Testing Chaos Monkey Hamkrest Kotest Servirtium WebDriver