Skip to content

Fully self-contained examples of using the various http4k features

License

Notifications You must be signed in to change notification settings

http4k/examples

Repository files navigation

http4k Examples

.github/workflows/build.yaml

These sample projects are designed to demonstrate how easy it is to use the various features of http4k in isolation. They are all entirely self-contained and can be run locally or using the included script to run them in a Docker container.

  • hello-world : "Hello world" application with a single endpoint.

  • aws-lambda-custom-runtime: Building and deploying HttpHandler as a Serverless function with the lightweight http4k custom runtime (on Graviton).

  • aws-lambda-http: Building and deploying HttpHandler as a Serverless function.

  • aws-lambda-events: Building and deploying an event-based FnHandler as a Serverless function.

  • graalvm : "Hello world" application with a single endpoint, compiled to a native binary using GraalVM.

  • graphql : Using the http4k graphql routing module to build an API which exposes a data graph backed by the GraphQL-Java library.

  • hexagonal: Writing Hexagonal http4k applications with DomainDrivenTests.

  • hexagonal-arrow: Writing Hexagonal http4k applications with Functional Error Handling via Arrow with DomainDrivenTests.

  • hotwire : Serve a Hotwire application via http4k (with Websocket support)!

  • http4k-connect : A app which utilises the http4k-connect libraries, which provide both a framework for http4k client connectors to external systems and Fake versions of those systems.

  • json-api : A app which uses Jackson to automatically marshall Kotlin data classes into JSON objects.

  • oauth : Using the http4k OAuth support, shows how to protect resources for use with an external auth provider such as Google or Auth0.

  • openapi : Using the http4k contract routing module to build an API which is auto-documented in a generated OpenAPI3 specification.

  • quarkus : "Hello world" application with a single endpoint, compiled to a native binary using Quarkus.

  • react-app : Combines a React front end with an http4k backend.

  • typesafe-configuration : Application configured using the typesafe configuration facility in the http4k-cloudnative module..

  • web-content : Using the http4k templating system and serving static content.

  • bearer-auth : Use nimbus-jose-jwt to secure an API with bearer authentication