http4k is a lightweight but fully-featured HTTP toolkit written in pure Kotlin that enables the serving and consuming of HTTP services in a functional and consistent way. http4k applications are just Kotlin functions. http4k consists of a lightweight core library, http4k-core, providing a base HTTP implementation and Server/Client implementations based on the JDK classes. Further servers, clients, serverless, templating, websockets capabilities are then implemented in add-on modules. http4k apps can be simply mounted into a running Server, Serverless platform, or compiled to GraalVM and run as a super-lightweight binary. Apart the from Kotlin StdLib, http4k-core module has ZERO dependencies and weighs in at ~1mb. Add-on modules only have dependencies required for specific implementation.

Features

  • Application as a Function
  • All entities in the library are immutable unless their function explicitly disallows this
  • Dependency-lite
  • Test individual endpoints
  • Apps are completely portable across deployment platform in either a Server-based, Serverless or Native binaries
  • Testability Built by TDD enthusiasts, so supports super-easy mechanisms for both in-memory and port-based testing

Project Samples

Project Activity

See All Activity >

License

Apache License V2.0

Follow http4k

http4k Web Site

Other Useful Business Software
Full-stack observability with actually useful AI | Grafana Cloud Icon
Full-stack observability with actually useful AI | Grafana Cloud

Our generous forever free tier includes the full platform, including the AI Assistant, for 3 users with 10k metrics, 50GB logs, and 50GB traces.

Built on open standards like Prometheus and OpenTelemetry, Grafana Cloud includes Kubernetes Monitoring, Application Observability, Incident Response, plus the AI-powered Grafana Assistant. Get started with our generous free tier today.
Create free account
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of http4k!

Additional Project Details

Programming Language

Kotlin

Related Categories

Kotlin HTTP Servers, Kotlin HTTP Clients

Registered

2023-05-11