-
-
Notifications
You must be signed in to change notification settings - Fork 4
Commit
- Loading branch information
There are no files selected for viewing
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -88,7 +88,7 @@ | |
</span></span></code></pre></div><h2 id=quickstart>Quickstart</h2><p>Bored with reading already and just want to get coding? Read the <a href=https://www.http4k.org/quickstart/>quickstart</a> or take a look at | ||
the <a href=https://github.com/http4k/examples>examples repo</a>, which | ||
showcases a variety of <a href=https://http4k.org>http4k</a> use-cases and features.</p><h2 id=module-feature-overview>Module feature overview</h2><p>If you’re needed it to build an HTTP application, there’s an excellent chance that http4k has a module for it. Check out the reference guide sections for | ||
details on the over 65 different built in integrations. Here’s a selection:</p><ul><li><strong>Seamless app running in all these runtimes</strong>:<ul><li><strong>Server</strong>: 8 server integrations including Jetty, Helidon, Undertow and Ktor</li><li><strong>Servlets</strong>: Plug into any HTTP Servlet container</li><li><strong>Serverless</strong>: Support for 6 platforms including AWS Lambda, GCP, Alibaba and Azure</li><li><strong>Custom Lambda runtime</strong>: For running performance sensitive AWS Lambdas without the overhead of the AWS runtime</li><li><strong>Native</strong>: http4k apps can compile to GraalVM with no changes or configuration</li><li><strong>In-memory</strong>: Running apps in a JVM for lightning fast tests</li><li><strong>Realtime</strong>: WebSockets and Server Sent Events (SSE)</li></ul></li><li><strong>OpenAPI</strong>: Document your APIs with industry leading support</li><li><strong>Protocol formats:</strong> Support for lots of protocol formats including JSONRpc, Graphql</li><li><strong>Pluggable wire format integrations for</strong>: JSON, YAML, CSV, XML, DataFrame</li><li><strong>Clients are available for these technologies</strong>:<ul><li><strong>HTTP</strong>: 6 clients including Apache, Jetty and OkHttp</li><li><strong>WebSocket & SSE</strong>: For realtime connectivity</li></ul></li><li><strong>Observability</strong>: Measure http4k with integrations including OpenTelemetry and Micrometer</li><li><strong>Metrics</strong>: Protect your app with Resilience4k and Failsafe</li><li><strong>Security</strong>: Seamless OAuth and Digest integrations</li><li><strong>HTML Templating</strong>: 7 serverside rendering engines including Handlebars, Pug4J and Rocker</li><li><strong>Testing styles</strong>: Support for innovative testing techniques such as TracerBullet, Approval and Chaos testing</li><li><strong>Testing Integrations</strong>: Battle harden your apps with integrations for WebDriver, Playwright, KoTest and others</li></ul><h2 id=acknowledgments>Acknowledgments</h2><ul><li><a href=https://twitter.com/DanielBodart>Dan Bodart</a>’s <strong>utterlyidle</strong></li><li>Ivan Moore for pairing on the original hackday project - Barely Magical.</li><li>You can see the amazing people and companies who have helped us to make http4k <a href=https://http4k.org/community>here</a>.</li></ul></div></article></main></div><script language=JavaScript>$(".sideToggle").on("click",function(){$(".aside").toggleClass("no-side")})</script><footer><div class=container><div class="row pb-3 text-start text-xl-start"><div class="col-md-6 col-lg-3" style=width:200px><a class=p-0 href=https://http4k.org><img src=/images/logo.svg alt=logo width=50%></a><p></p><ul class=list-unstyled><li class="small text-white text-decoration-none">http4k Limited</li><li class="small text-white text-decoration-none">Registered in England & Wales</li><li class="small text-white text-decoration-none">Reg no: 14687467</li></ul></div><div class="col-xs-6 col-md"><h5>About</h5><ul class=list-unstyled><li><a class="small text-white text-decoration-none" href=/overview/>Overview</a></li><li><a class="small text-white text-decoration-none" href=/news/>News</a></li><li><a class="small text-white text-decoration-none" href=/showcase/>Showcase</a></li></ul></div><div class="col-xs-6 col-md"><h5>Learn</h5><ul class=list-unstyled><li><a class="small text-white text-decoration-none" href=/learn/>About the docs</a></li><li><a class="small text-white text-decoration-none" href=/quickstart/>Quickstart</a></li><li><a class="small text-white text-decoration-none" href=/tutorial/>Tutorials</a></li><li><a class="small text-white text-decoration-none" href=/howto/>How-to guides</a></li><li><a class="small text-white text-decoration-none" href=/faq/>FAQ</a></li><li><a class="small text-white text-decoration-none" href=/performance/>Performance</a></li></ul></div><div class="col-xs-6 col-md"><h5>Ecosystem</h5><ul class=list-unstyled><li><a class="small text-white text-decoration-none" href=/ecosystem/>Overview</a></li><li><a class="small text-white text-decoration-none" href=/ecosystem/http4k/>http4k Core</a></li><li><a class="small text-white text-decoration-none" href=/ecosystem/connect/>http4k Connect</a></li><li><a class="small text-white text-decoration-none" href=/ecosystem/changelog/>Changelog</a></li></ul></div><div class="col-xs-6 col-md"><h5>Solutions</h5><ul class=list-unstyled><li><a class="small text-white text-decoration-none" href=/solutions/>Overview</a></li><li><a class="small text-white text-decoration-none" href=/enterprise/>Enterprise Edition</a></li><li><a class="small text-white text-decoration-none" href=/consulting/>Consulting</a></li><li><a class="small text-white text-decoration-none" href=/training/>Developer Training</a></li><li><a class="small text-white text-decoration-none" href=http://http4k.slack.com/>Private Slack</a></li><li><a class="small text-white text-decoration-none" href=/security/>Security Advisories</a></li></ul></div><div class="col-xs-6 col-md"><h5>Community</h5><ul class=list-unstyled><li><a class="small text-white text-decoration-none" href=/community/>Our Community of Contributors</a></li><li><a class="small text-white text-decoration-none" href=https://kotlinlang.slack.com/archives/C5AL3AKUY>Community Slack</a></li><li><a class="small text-white text-decoration-none" href=/code-of-conduct/>Code of Conduct</a></li></ul></div><div class="col-xs-6 col-md"><h5>Toolbox</h5><ul class=list-unstyled><li><a class="small text-white text-decoration-none" href=https://toolbox.http4k.org/>Web</a></li><li><a class="small text-white text-decoration-none" href=https://plugins.jetbrains.com/plugin/25243-http4k-toolbox>IntelliJ</a></li><li><a class="small text-white text-decoration-none" href=https://toolbox.http4k.org/>CLI</a></li></ul></div><div class="col-xs-6 col-md"><h5>Company</h5><ul class=list-unstyled><li><a class="small text-white text-decoration-none" href=/company/>About</a></li><li><a class="small text-white text-decoration-none" href=mailto:[email protected]>Contact</a></li><li><a class="small text-white text-decoration-none" href=https://www.linkedin.com/company/http4k>LinkedIn</a></li><li><a class="small text-white text-decoration-none" href=https://x.com/http4k>X</a></li></ul></div></div></div><div class="row text-center"><div class=col><p class="small text-white text-decoration-none">© 2024 | All Rights Reserved | ||
details on the over 65 different built in integrations. Here’s a selection:</p><ul><li><strong>Seamless app running in all these runtimes</strong>:<ul><li><strong>Server</strong>: 8 server integrations including Jetty, Helidon, Undertow and Ktor</li><li><strong>Servlets</strong>: Plug into any HTTP Servlet container</li><li><strong>Serverless</strong>: Support for 6 platforms including AWS Lambda, GCP, Alibaba and Azure</li><li><strong>Custom Lambda runtime</strong>: For running performance sensitive AWS Lambdas without the overhead of the AWS runtime</li><li><strong>Native</strong>: http4k apps can compile to GraalVM with no changes or configuration</li><li><strong>In-memory</strong>: Running apps in a JVM for lightning fast tests</li><li><strong>Realtime</strong>: WebSockets and Server Sent Events (SSE)</li></ul></li><li><strong>OpenAPI</strong>: Document your APIs with industry leading support</li><li><strong>Protocol formats:</strong> Support for lots of protocol formats including JSONRpc, Graphql</li><li><strong>Pluggable wire format integrations for</strong>: JSON, YAML, CSV, XML, DataFrame</li><li><strong>Clients are available for these technologies</strong>:<ul><li><strong>HTTP</strong>: 6 clients including Apache, Jetty and OkHttp</li><li><strong>WebSocket & SSE</strong>: For realtime connectivity</li></ul></li><li><strong>Observability</strong>: Measure http4k with integrations including OpenTelemetry and Micrometer</li><li><strong>Safety</strong>: Protect your app with Resilience4j and Failsafe</li><li><strong>Security</strong>: Seamless OAuth and Digest integrations</li><li><strong>HTML Templating</strong>: 7 serverside rendering engines including Handlebars, Pug4J and Rocker</li><li><strong>Testing styles</strong>: Support for innovative testing techniques such as TracerBullet, Approval and Chaos testing</li><li><strong>Testing Integrations</strong>: Battle harden your apps with integrations for WebDriver, Playwright, KoTest and others</li></ul><h2 id=acknowledgments>Acknowledgments</h2><ul><li><a href=https://twitter.com/DanielBodart>Dan Bodart</a>’s <strong>utterlyidle</strong></li><li>Ivan Moore for pairing on the original hackday project - Barely Magical.</li><li>You can see the amazing people and companies who have helped us to make http4k <a href=https://http4k.org/community>here</a>.</li></ul></div></article></main></div><script language=JavaScript>$(".sideToggle").on("click",function(){$(".aside").toggleClass("no-side")})</script><footer><div class=container><div class="row pb-3 text-start text-xl-start"><div class="col-md-6 col-lg-3" style=width:200px><a class=p-0 href=https://http4k.org><img src=/images/logo.svg alt=logo width=50%></a><p></p><ul class=list-unstyled><li class="small text-white text-decoration-none">http4k Limited</li><li class="small text-white text-decoration-none">Registered in England & Wales</li><li class="small text-white text-decoration-none">Reg no: 14687467</li></ul></div><div class="col-xs-6 col-md"><h5>About</h5><ul class=list-unstyled><li><a class="small text-white text-decoration-none" href=/overview/>Overview</a></li><li><a class="small text-white text-decoration-none" href=/news/>News</a></li><li><a class="small text-white text-decoration-none" href=/showcase/>Showcase</a></li></ul></div><div class="col-xs-6 col-md"><h5>Learn</h5><ul class=list-unstyled><li><a class="small text-white text-decoration-none" href=/learn/>About the docs</a></li><li><a class="small text-white text-decoration-none" href=/quickstart/>Quickstart</a></li><li><a class="small text-white text-decoration-none" href=/tutorial/>Tutorials</a></li><li><a class="small text-white text-decoration-none" href=/howto/>How-to guides</a></li><li><a class="small text-white text-decoration-none" href=/faq/>FAQ</a></li><li><a class="small text-white text-decoration-none" href=/performance/>Performance</a></li></ul></div><div class="col-xs-6 col-md"><h5>Ecosystem</h5><ul class=list-unstyled><li><a class="small text-white text-decoration-none" href=/ecosystem/>Overview</a></li><li><a class="small text-white text-decoration-none" href=/ecosystem/http4k/>http4k Core</a></li><li><a class="small text-white text-decoration-none" href=/ecosystem/connect/>http4k Connect</a></li><li><a class="small text-white text-decoration-none" href=/ecosystem/changelog/>Changelog</a></li></ul></div><div class="col-xs-6 col-md"><h5>Solutions</h5><ul class=list-unstyled><li><a class="small text-white text-decoration-none" href=/solutions/>Overview</a></li><li><a class="small text-white text-decoration-none" href=/enterprise/>Enterprise Edition</a></li><li><a class="small text-white text-decoration-none" href=/consulting/>Consulting</a></li><li><a class="small text-white text-decoration-none" href=/training/>Developer Training</a></li><li><a class="small text-white text-decoration-none" href=http://http4k.slack.com/>Private Slack</a></li><li><a class="small text-white text-decoration-none" href=/security/>Security Advisories</a></li></ul></div><div class="col-xs-6 col-md"><h5>Community</h5><ul class=list-unstyled><li><a class="small text-white text-decoration-none" href=/community/>Our Community of Contributors</a></li><li><a class="small text-white text-decoration-none" href=https://kotlinlang.slack.com/archives/C5AL3AKUY>Community Slack</a></li><li><a class="small text-white text-decoration-none" href=/code-of-conduct/>Code of Conduct</a></li></ul></div><div class="col-xs-6 col-md"><h5>Toolbox</h5><ul class=list-unstyled><li><a class="small text-white text-decoration-none" href=https://toolbox.http4k.org/>Web</a></li><li><a class="small text-white text-decoration-none" href=https://plugins.jetbrains.com/plugin/25243-http4k-toolbox>IntelliJ</a></li><li><a class="small text-white text-decoration-none" href=https://toolbox.http4k.org/>CLI</a></li></ul></div><div class="col-xs-6 col-md"><h5>Company</h5><ul class=list-unstyled><li><a class="small text-white text-decoration-none" href=/company/>About</a></li><li><a class="small text-white text-decoration-none" href=mailto:[email protected]>Contact</a></li><li><a class="small text-white text-decoration-none" href=https://www.linkedin.com/company/http4k>LinkedIn</a></li><li><a class="small text-white text-decoration-none" href=https://x.com/http4k>X</a></li></ul></div></div></div><div class="row text-center"><div class=col><p class="small text-white text-decoration-none">© 2024 | All Rights Reserved | ||
| <a class="text-white text-decoration-none" href=/privacy-policy/>Privacy policy</a> | ||
| <a class="text-white text-decoration-none" href=/terms-and-conditions/>Terms & conditions</a> | ||
| <a class="text-white text-decoration-none" href=/disclaimer/>Disclaimer</a> </p></div></div></footer><script src=https://cdn.jsdelivr.net/npm/@docsearch/js@3></script><script type=text/javascript>docsearch({appId:"YCNGOLH2XD",apiKey:"7d482d8fd709c47a83521cc49479d4b1",indexName:"http4k",container:"#searchBox"}),$(document).ready(function(){$(".highlight").each(function(){const e=$('<i class="fs-2 bi bi-clipboard copy-button"></i>');$(this).find("pre").prepend(e),e.on("click",function(){const e=$(this),t=e.parent().find("code").text();navigator.clipboard.writeText(t).then(()=>{e.removeClass("bi-clipboard").addClass("bi-clipboard-check-fill"),setTimeout(()=>{e.removeClass("bi-clipboard-check-fill").addClass("bi-clipboard")},250)}).catch(e=>{console.error("Could not copy text: ",e)})})})})</script></body></html> |