An http4k server is just a regular function that gets invoked with a Request and returns a Response. In a single line of code you can switch your server between Java (built-in), Apache, Jetty, Netty, Undertow, Ktor, or Ratpack.
An http4k client is just a regular function that you invoke with a Request and receives a Response. In a single line of code you can switch your client implementation between Java (built-in), Apache, Jetty, and OkHttp.
The core library has no dependencies and it’s all you need to create fully-functional applications. http4k APIs take advantage of Kotlin features and are powered by Functional Programming techniques.
Supports many Server, Serverless and HTTP Client technologies behind simple, consistent interfaces. http4k provides 30+ pre-built integrations for developers to choose from including Operability, JSON, and OpenAPI support.
Create lightning fast, rock solid test suites for individual endpoints, applications or multi-service systems, all running fully in-memory. http4k embraces advanced testing approaches such as Approval, Chaos and Service Virtualization.
http4k takes advantage of technologies that have millions of hours of production runtime. The toolkit has been used to build high volume applications in Banking, Publishing & Government projects.
Many of the features of http4k have been added by its amazing contributors. New versions for features and fixes are released quickly and without fuss. http4k had been designed to make it easy to contribute or get help when you need it.Contribute