<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Juanjo Aguililla</title>
    <description>The latest articles on DEV Community by Juanjo Aguililla (@jaguililla).</description>
    <link>https://dev.to/jaguililla</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F184821%2F104109eb-02c7-4290-9f4c-bab5bbfa12a0.jpeg</url>
      <title>DEV Community: Juanjo Aguililla</title>
      <link>https://dev.to/jaguililla</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/jaguililla"/>
    <language>en</language>
    <item>
      <title>Hexagon v4 released 🎉</title>
      <dc:creator>Juanjo Aguililla</dc:creator>
      <pubDate>Fri, 07 Mar 2025 08:43:31 +0000</pubDate>
      <link>https://dev.to/hexagontk/hexagon-v4-released-am3</link>
      <guid>https://dev.to/hexagontk/hexagon-v4-released-am3</guid>
      <description>&lt;p&gt;A few days ago I released version 4 of Hexagon, a toolkit for developing REST APIs (and now also 'serverless' services). If you are curious to try something other than Java + Spring (Hexagon is more like JS + Express), give it a try... And share your feedback :) Check the link to the release below:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://hexagontk.com" rel="noopener noreferrer"&gt;https://hexagontk.com&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/hexagontk/hexagon/releases/tag/4.0.1" rel="noopener noreferrer"&gt;https://github.com/hexagontk/hexagon/releases/tag/4.0.1&lt;/a&gt;&lt;/p&gt;

</description>
      <category>opensource</category>
      <category>news</category>
      <category>jvm</category>
      <category>http</category>
    </item>
    <item>
      <title>TFB Benchmarks latest round was released (including Kotlin tools)</title>
      <dc:creator>Juanjo Aguililla</dc:creator>
      <pubDate>Sat, 11 Nov 2023 11:33:40 +0000</pubDate>
      <link>https://dev.to/jaguililla/tfb-benchmarks-latest-round-was-released-including-kotlin-tools-5bl0</link>
      <guid>https://dev.to/jaguililla/tfb-benchmarks-latest-round-was-released-including-kotlin-tools-5bl0</guid>
      <description>&lt;p&gt;Well, while the results were published a few days back. It's worth the time to review the results.&lt;/p&gt;

&lt;p&gt;You can find them here: &lt;a href="https://www.techempower.com/benchmarks"&gt;https://www.techempower.com/benchmarks&lt;/a&gt;&lt;/p&gt;

</description>
      <category>jvm</category>
      <category>news</category>
      <category>rest</category>
      <category>kotlin</category>
    </item>
    <item>
      <title>Hexagon Toolkit 3.0 was released 🎊🎉</title>
      <dc:creator>Juanjo Aguililla</dc:creator>
      <pubDate>Fri, 18 Aug 2023 08:58:24 +0000</pubDate>
      <link>https://dev.to/jaguililla/hexagon-toolkit-30-was-released-12c2</link>
      <guid>https://dev.to/jaguililla/hexagon-toolkit-30-was-released-12c2</guid>
      <description>&lt;p&gt;Hexagon is a toolkit for writing Web applications and REST APIs. You can check the details at: &lt;a href="https://github.com/hexagonkt/hexagon"&gt;https://github.com/hexagonkt/hexagon&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Release Highlights
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Use same model and event handler for HTTP servers and clients (allowing the creation of middleware
also for clients)&lt;/li&gt;
&lt;li&gt;Add 'Before' handlers and short circuit 'On' handlers to improve DX (previously, all matching 'On'
handlers were executed)&lt;/li&gt;
&lt;li&gt;Exception handlers clear the handled exception to prevent further error processing, exception
propagation is still possible through a parameter&lt;/li&gt;
&lt;li&gt;3.x releases will be source compatible (enforced in the build process). Experimental modules are
excluded and their APIs may change&lt;/li&gt;
&lt;li&gt;Native Image metadata inclusion to ease users' applications native compilation (tests pass in
native mode at builds)&lt;/li&gt;
&lt;li&gt;Update Jetty adapter to v12&lt;/li&gt;
&lt;li&gt;Add Nima Adapter to take advantage of Java Virtual Threads (experimental)&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Future Features
&lt;/h2&gt;

&lt;p&gt;3.x releases will focus on extensions over the core functionality:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;OpenApi contracts generation / enforcement&lt;/li&gt;
&lt;li&gt;REST utilities for working with DTOs and ease integration tests&lt;/li&gt;
&lt;li&gt;Serverless support (FaaS)&lt;/li&gt;
&lt;li&gt;Messaging support (use the event handler to also support message queues)&lt;/li&gt;
&lt;li&gt;New adapters&lt;/li&gt;
&lt;li&gt;New middleware (callbacks / handlers)&lt;/li&gt;
&lt;li&gt;Use annotation processing to allow a Spring / Micronaut DX (optionally)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;4.0 release is a long shot and the main goals will be:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Add asynchronous handlers and support coroutines (partial developments done)&lt;/li&gt;
&lt;li&gt;Support WASM and Native targets (right now, there is only a small proof of concept)&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>kotlin</category>
      <category>opensource</category>
      <category>microservices</category>
      <category>jvm</category>
    </item>
    <item>
      <title>Hexagon v2 released 🎉</title>
      <dc:creator>Juanjo Aguililla</dc:creator>
      <pubDate>Thu, 09 Jun 2022 14:05:03 +0000</pubDate>
      <link>https://dev.to/hexagontk/hexagon-v2-released-29hn</link>
      <guid>https://dev.to/hexagontk/hexagon-v2-released-29hn</guid>
      <description>&lt;p&gt;Check the latest changes on the &lt;a href="https://hexagonkt.com"&gt;project website&lt;/a&gt; or its &lt;a href="https://github.com/hexagonkt/hexagon"&gt;GitHub repository&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;This is an important milestone in the project. It switches from using DSL transformation to adapters constructions,&lt;br&gt;
to define a common handlers pipeline used by all adapters. &lt;/p&gt;

&lt;p&gt;To wrap up the project history:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Fork of Spark to support Java 8.&lt;/li&gt;
&lt;li&gt;Port to Kotlin (first Hexagon version). Still heavily based on Spark.&lt;/li&gt;
&lt;li&gt;V2, complete rewrite to be based on middlewares, as opposed to before/after filters like Spark.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;This design change makes easier to add new adapters as proved&lt;br&gt;
with Netty's brand new adapter.&lt;/p&gt;

&lt;p&gt;These changes come with a performance boost, however there is still room for improvement here (stay tuned for more performance gains here).&lt;/p&gt;

&lt;p&gt;Also, the new design improves reusability by letting users define their own Callbacks, Handlers and Predicates.&lt;/p&gt;

&lt;p&gt;The documentation and examples are not yet fully ported, but works on this regard are ongoing.&lt;/p&gt;

&lt;p&gt;Please take a look at the changes, share your feedback... and spread the word!&lt;/p&gt;

&lt;p&gt;Thanks for your support 🙂&lt;/p&gt;

</description>
      <category>kotlin</category>
      <category>opensource</category>
      <category>news</category>
      <category>microservices</category>
    </item>
    <item>
      <title>Hexagon 1.4.0 released!!! 🎉</title>
      <dc:creator>Juanjo Aguililla</dc:creator>
      <pubDate>Fri, 13 Aug 2021 06:36:59 +0000</pubDate>
      <link>https://dev.to/hexagontk/hexagon-1-4-0-released-4b2b</link>
      <guid>https://dev.to/hexagontk/hexagon-1-4-0-released-4b2b</guid>
      <description>&lt;p&gt;Hello fellow Kotlin lovers... The 1.4.0 version of the Hexagon Toolkit got released!&lt;/p&gt;

&lt;p&gt;&lt;a href="https://hexagonkt.com"&gt;Hexagon&lt;/a&gt; is a Microservices Toolkit that aims to provide all you need to develop applications that run on Cloud environments.&lt;/p&gt;

&lt;p&gt;This is a minor release, but I think it is important to note because it contains a lot of internal improvements (and a lot of contributions from the past &lt;a href="https://hacktoberfest.digitalocean.com"&gt;Hacktoberfest&lt;/a&gt;).&lt;/p&gt;

&lt;p&gt;Another important event tied to this release is that it is the first release since &lt;a href="https://github.com/BikramjeetSingh"&gt;Bikramjeet Singh&lt;/a&gt; joined the project. Welcome Bikramjeet!&lt;/p&gt;

&lt;h2&gt;
  
  
  Features
&lt;/h2&gt;

&lt;p&gt;This release brings the following features:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Logging modules: Programmatically change logging level on packages not having to rely on configuration files (shaving some ms. to the start up time).&lt;/li&gt;
&lt;li&gt;Server options and parameters: Fine tune the HTTP Server adapter under the hood (i.e., changing the number of worker threads).&lt;/li&gt;
&lt;li&gt;Server features: Allow the development of Server Adapters with a subset of the functionalities. Some features could be ZIP support or Sessions support. Adapter's users can also use those adapters with a subset of the supported features to improve memory usage and overall performance.&lt;/li&gt;
&lt;li&gt;Serialization modularization. Serialization formats have been moved to their own modules, making the final service include only the ones used (and saving disk on the binary distribution).&lt;/li&gt;
&lt;li&gt;Recover Java 8 support (Jetty not supported, but Servlet is). This can be handy if you work in a slow-moving-company and want to use Hexagon to build some tools, do testing... or delivering production services if you dare 😉&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Thanks to Contributors
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://github.com/hexagonkt/hexagon/issues/312"&gt;Build mock servers from OpenAPI specs for testing&lt;/a&gt; by &lt;a href="https://github.com/BikramjeetSingh"&gt;Bikramjeet Singh&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/hexagonkt/hexagon/issues/339"&gt;Latest MkDocs Material&lt;/a&gt; by &lt;a href="https://github.com/SalmonKing72"&gt;SalmonKing72&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/hexagonkt/hexagon/issues/328"&gt;Fix error parsing query parameters&lt;/a&gt; by &lt;a href="https://github.com/pedro-cze"&gt;Petr Kadlec&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/hexagonkt/hexagon/issues/311"&gt;Parse query and form parameters into type&lt;/a&gt; by &lt;a href="https://github.com/AnoojPoozhikuth"&gt;Anooj&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/hexagonkt/hexagon/issues/310"&gt;Review Templates Port&lt;/a&gt; by &lt;a href="https://github.com/jdornieden"&gt;Jens Dornieden&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/hexagonkt/hexagon/issues/34"&gt;Add compression support&lt;/a&gt; by &lt;a href="https://github.com/sumitkp18"&gt;Sumit Kumar Pradhan&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Future Steps
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Complete the functionality set (security, Websockets and OpenAPI).&lt;/li&gt;
&lt;li&gt;Change the API: make it more consistent and switch to middleware filters instead before/after.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Spread the Word
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Play with the toolkit and share your feedback :)&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/hexagon_kt"&gt;Tweet about it&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/hexagonkt/hexagon/stargazers"&gt;Give it a ⭐&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://hexagonkt.com/contributing"&gt;Contribute!&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>kotlin</category>
      <category>microservices</category>
      <category>news</category>
      <category>showdev</category>
    </item>
    <item>
      <title>Hacktoberfest is coming</title>
      <dc:creator>Juanjo Aguililla</dc:creator>
      <pubDate>Thu, 24 Sep 2020 16:41:52 +0000</pubDate>
      <link>https://dev.to/hexagontk/hacktoberfest-is-coming-1a77</link>
      <guid>https://dev.to/hexagontk/hacktoberfest-is-coming-1a77</guid>
      <description>&lt;p&gt;For those of you who are looking for a &lt;a href="https://kotlinlang.org"&gt;Kotlin&lt;/a&gt; project to help in the next Hacktoberfest, I'm sharing with you the tasks you can pick in the Hexagon Toolkit project (you can find more information about the project on the &lt;a href="https://hexagonkt.com"&gt;Web page&lt;/a&gt;, &lt;a href="https://github.com/hexagonkt"&gt;GitHub organization&lt;/a&gt; and the &lt;a href="https://github.com/hexagonkt/hexagon"&gt;main repository&lt;/a&gt;).&lt;/p&gt;

&lt;p&gt;If you find the project interesting, you can check the tasks labeled with &lt;code&gt;hacktoberfest&lt;/code&gt; in the following boards:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://github.com/hexagonkt/hexagon/projects/1"&gt;Toolkit board&lt;/a&gt;: for features and improvements on any toolkit module (like the HTTP server or Template processors).&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/orgs/hexagonkt/projects/1"&gt;Organization board&lt;/a&gt;: for side tasks as the Benchmark and examples.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Once you have found an appealing task, you can read the &lt;a href="https://github.com/hexagonkt/hexagon/blob/master/contributing.md"&gt;Contributing Guide&lt;/a&gt; with all the details on how to proceed to start working on it. If you would like to take a task, and you find the information incomplete, do not hesitate to contact me for any detail you want or need.&lt;/p&gt;

&lt;p&gt;Thanks... And happy coding!!!&lt;/p&gt;


&lt;div class="ltag-github-readme-tag"&gt;
  &lt;div class="readme-overview"&gt;
    &lt;h2&gt;
      &lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--A9-wwsHG--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev.to/assets/github-logo-5a155e1f9a670af7944dd5e12375bc76ed542ea80224905ecaf878b9157cdefc.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/hexagontk"&gt;
        hexagontk
      &lt;/a&gt; / &lt;a href="https://github.com/hexagontk/hexagon"&gt;
        hexagon
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      Hexagon is a microservices toolkit written in Kotlin. Its purpose is to ease the building of services (Web applications or APIs) that run inside a cloud platform.
    &lt;/h3&gt;
  &lt;/div&gt;
  &lt;div class="ltag-github-body"&gt;
    
&lt;div id="readme" class="md"&gt;
&lt;div class="markdown-heading"&gt;
&lt;h3 class="heading-element"&gt;
  &lt;a href="https://hexagontk.com" rel="nofollow"&gt;
    &lt;img alt="Hexagon" src="https://camo.githubusercontent.com/13630143b8ffa2d09969003148beeb85904b7c0bf4fde9c770a73306a129d62b/68747470733a2f2f68657861676f6e746b2e636f6d2f74696c652d736d616c6c2e706e67"&gt;
  &lt;/a&gt;
  &lt;br&gt;
  Hexagon
&lt;/h3&gt;
&lt;/div&gt;
&lt;div class="markdown-heading"&gt;
&lt;h4 class="heading-element"&gt;The atoms of your platform&lt;/h4&gt;
&lt;/div&gt;
&lt;p&gt;
  &lt;a href="https://github.com/hexagontk/hexagon/actions"&gt;
    &lt;img alt="GitHub Actions" src="https://github.com/hexagontk/hexagon/workflows/Release/badge.svg"&gt;
  &lt;/a&gt;
  &lt;a href="https://hexagontk.com/jacoco" rel="nofollow"&gt;
    &lt;img src="https://camo.githubusercontent.com/3508a7ca96025cfa3245e859a16d094fc57f3e324186e9b1f6e03bc81f6b3a26/68747470733a2f2f68657861676f6e746b2e636f6d2f696d672f636f7665726167652e737667" alt="Coverage"&gt;
  &lt;/a&gt;
  &lt;a href="https://search.maven.org/search?q=g:com.hexagonkt" rel="nofollow"&gt;
    &lt;img src="https://camo.githubusercontent.com/f01512200420d27edbcfd06c95da55814fa89543c4c8b7397aa0998141058309/68747470733a2f2f68657861676f6e746b2e636f6d2f696d672f646f776e6c6f61642e737667" alt="Maven Central Repository"&gt;
  &lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
  &lt;a href="https://hexagontk.com" rel="nofollow"&gt;Home Site&lt;/a&gt; |
  &lt;a href="https://hexagontk.com/quick_start" rel="nofollow"&gt;Quick Start&lt;/a&gt;
&lt;/p&gt;




&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;What is Hexagon&lt;/h2&gt;
&lt;/div&gt;

&lt;p&gt;Hexagon is a microservices' toolkit (not a &lt;a href="https://stackoverflow.com/a/3057818/973418" rel="nofollow"&gt;framework&lt;/a&gt;) written in &lt;a href="http://kotlinlang.org" rel="nofollow"&gt;Kotlin&lt;/a&gt;. Its purpose is to ease
the building of server applications (Web applications, APIs or queue consumers) that run inside a
cloud platform.&lt;/p&gt;
&lt;p&gt;The Hexagon Toolkit provides several libraries to build server applications. These libraries provide
single standalone features and are referred to as &lt;a href="https://herbertograca.com/2017/09/14/ports-adapters-architecture" rel="nofollow"&gt;"Ports"&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;The main ports are:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;a href="http://hexagontk.com/http_server" rel="nofollow"&gt;The HTTP server&lt;/a&gt;: supports HTTPS, HTTP/2, mutual TLS, static files (serve and upload), forms
processing, cookies, CORS and more.&lt;/li&gt;
&lt;li&gt;
&lt;a href="http://hexagontk.com/http_client" rel="nofollow"&gt;The HTTP client&lt;/a&gt;: which supports mutual TLS, HTTP/2, cookies, form fields and files among other
features.&lt;/li&gt;
&lt;li&gt;
&lt;a href="http://hexagontk.com/templates" rel="nofollow"&gt;Template Processing&lt;/a&gt;: allows template processing from URLs (local files, resources or HTTP
content) binding name patterns to different engines.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Each of these features or ports may have different implementations called
&lt;a href="https://herbertograca.com/2017/09/14/ports-adapters-architecture" rel="nofollow"&gt;"Adapters"&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Hexagon is designed to…&lt;/p&gt;
&lt;/div&gt;
  &lt;/div&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/hexagontk/hexagon"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;


</description>
      <category>opensource</category>
      <category>kotlin</category>
      <category>hacktoberfest</category>
    </item>
    <item>
      <title>Hexagon Toolkit 1.3 released</title>
      <dc:creator>Juanjo Aguililla</dc:creator>
      <pubDate>Tue, 25 Aug 2020 23:02:07 +0000</pubDate>
      <link>https://dev.to/hexagontk/hexagon-toolkit-1-3-released-4ajb</link>
      <guid>https://dev.to/hexagontk/hexagon-toolkit-1-3-released-4ajb</guid>
      <description>&lt;p&gt;Hello everyone, the Hexagon Toolkit released the 1.3 version this week.&lt;/p&gt;

&lt;p&gt;To summarise, Hexagon is a Microservices Toolkit that aims to provide all you need to develop applications that run on Cloud environments.&lt;/p&gt;

&lt;p&gt;You can find more information about the project in the following links:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://hexagonkt.com"&gt;Project Website&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/hexagonkt"&gt;GitHub Organization&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This release was focused mostly on internal changes. Below you can find all the details.&lt;/p&gt;

&lt;h2&gt;
  
  
  Features
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Implement &lt;a href="https://hexagonkt.com/port_http_client"&gt;HTTP Client Feature (Port)&lt;/a&gt;. Implemented by the &lt;a href="https://hexagonkt.com/http_client_ahc"&gt;Async HTTP Client Adapter&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Add the &lt;a href="https://dev.toby%20[Bikramjeet%20Singh]"&gt;Freemarker Template Adapter&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Improve RabbitMQ (beta) module adding metrics to it (by &lt;a href="https://github.com/donky106"&gt;Donky106&lt;/a&gt;).&lt;/li&gt;
&lt;li&gt;Sign Packages and &lt;a href="https://search.maven.org/search?q=g:com.hexagonkt"&gt;publish on Maven Central&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Check dependencies' integrity for security (by &lt;a href="https://github.com/donky106"&gt;Donky106&lt;/a&gt;).&lt;/li&gt;
&lt;li&gt;Support Maven through a &lt;a href="https://search.maven.org/artifact/com.hexagonkt/kotlin_pom/1.3.0/pom"&gt;Maven parent POM&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Create a Twitter Clone example (by &lt;a href="https://github.com/BikramjeetSingh"&gt;Bikramjeet Singh&lt;/a&gt;).&lt;/li&gt;
&lt;li&gt;Depend only on SLF4J for logging. Allowing users to set up Logback, Log4j2 and JUL at their preference.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Sponsorship
&lt;/h2&gt;

&lt;p&gt;Thanks to the following companies for borrowing resources to the project, this is much appreciated!&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://www.digitalocean.com"&gt;DigitalOcean&lt;/a&gt;: provides Cloud resources to run tools and test deployments.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.jetbrains.com"&gt;JetBrains&lt;/a&gt;: donates a license of their wonderful IDEs for the toolkit development.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Thanks to Contributors
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://github.com/BikramjeetSingh"&gt;Bikramjeet Singh&lt;/a&gt; for implementing the Freemarker Adapter and creating the Twitter Clone example.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/donky106"&gt;Donky106&lt;/a&gt; for improving the RabbitMQ adapter and setting up dependencies' verification.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/mrpascal1"&gt;Shahid Raza&lt;/a&gt; for improving the log statements' information on the library.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/tylerlowrey"&gt;Tyler Lowrey&lt;/a&gt; for contributing with the HTTP Client documentation.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Future Steps
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Complete the functionality set (security, Websockets and OpenAPI).&lt;/li&gt;
&lt;li&gt;Change the API: make it more consistent and switch to middleware filters instead before/after.&lt;/li&gt;
&lt;li&gt;Develop asynchronous handlers using coroutines.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Spread the Word
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Play with the toolkit and share your feedback :)&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/hexagon_kt"&gt;Retweet on Twitter&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/hexagonkt/hexagon/stargazers"&gt;Give it a ⭐&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://hexagonkt.com/contributing"&gt;Contribute!&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>kotlin</category>
      <category>microservices</category>
      <category>news</category>
      <category>showdev</category>
    </item>
    <item>
      <title>TechEmpower released round 19 of their server benchmark (including Hexagon's result)</title>
      <dc:creator>Juanjo Aguililla</dc:creator>
      <pubDate>Fri, 29 May 2020 15:23:21 +0000</pubDate>
      <link>https://dev.to/hexagontk/techempower-released-round-19-of-their-server-benchmark-including-hexagon-s-result-7fg</link>
      <guid>https://dev.to/hexagontk/techempower-released-round-19-of-their-server-benchmark-including-hexagon-s-result-7fg</guid>
      <description>&lt;p&gt;TechEmpower just released the latest round (19) of their server middleware benchmark. You can check the results here: &lt;a href="https://www.techempower.com/benchmarks"&gt;https://www.techempower.com/benchmarks&lt;/a&gt;&lt;/p&gt;

</description>
      <category>kotlin</category>
    </item>
    <item>
      <title>Mutual TLS authentication in REST services with Kotlin</title>
      <dc:creator>Juanjo Aguililla</dc:creator>
      <pubDate>Fri, 17 Jan 2020 17:04:23 +0000</pubDate>
      <link>https://dev.to/hexagontk/mutual-tls-authentication-in-rest-services-with-kotlin-389p</link>
      <guid>https://dev.to/hexagontk/mutual-tls-authentication-in-rest-services-with-kotlin-389p</guid>
      <description>&lt;p&gt;Do you want to develop mutual TLS Web services in Kotlin? Hexagon 1.2 got released today with that feature, check the following section to learn how: &lt;a href="https://hexagonkt.com/port_http_server/#https"&gt;https://hexagonkt.com/port_http_server/#https&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;You can check all project's examples and source code at GitHub : &lt;a href="https://github.com/hexagonkt"&gt;https://github.com/hexagonkt&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If you give it a go, please share your feedback!&lt;/p&gt;

&lt;p&gt;Disclaimer: I'm the project's maintainer&lt;/p&gt;

</description>
      <category>kotlin</category>
      <category>microservices</category>
      <category>security</category>
    </item>
    <item>
      <title>Real World REST API with Kotlin (Hexagon)</title>
      <dc:creator>Juanjo Aguililla</dc:creator>
      <pubDate>Mon, 16 Sep 2019 17:51:28 +0000</pubDate>
      <link>https://dev.to/hexagontk/real-world-rest-api-with-kotlin-hexagon-1fgj</link>
      <guid>https://dev.to/hexagontk/real-world-rest-api-with-kotlin-hexagon-1fgj</guid>
      <description>&lt;p&gt;To showcase the toolkit usage, I developed a Real World example (&lt;a href="https://github.com/gothinkster/realworld"&gt;https://github.com/gothinkster/realworld&lt;/a&gt;) implemented with Hexagon (&lt;a href="https://hexagonkt.com"&gt;https://hexagonkt.com&lt;/a&gt;). You can check it in the following repository: &lt;a href="https://github.com/hexagonkt/real_world"&gt;https://github.com/hexagonkt/real_world&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This example covers JWT auth, CORS implementation, Simple DB store and integration testing.&lt;/p&gt;

&lt;p&gt;I will be using this example to test new Hexagon features.&lt;/p&gt;

&lt;p&gt;Please, share your feedback :)&lt;/p&gt;

</description>
      <category>kotlin</category>
    </item>
    <item>
      <title>Frameworks are good... Everyone should have their own</title>
      <dc:creator>Juanjo Aguililla</dc:creator>
      <pubDate>Thu, 22 Aug 2019 23:09:16 +0000</pubDate>
      <link>https://dev.to/jaguililla/frameworks-are-good-everyone-should-have-their-own-309e</link>
      <guid>https://dev.to/jaguililla/frameworks-are-good-everyone-should-have-their-own-309e</guid>
      <description>&lt;p&gt;WARNING: the only Kotlin related thing here is the link at the bottom... However, I hope the story that leads to it would be funny to you.&lt;/p&gt;

&lt;p&gt;There are plenty of frameworks out there, specially in the JVM world. Well, not as much as in the JavaScript community (but it is pretty close).&lt;/p&gt;

&lt;p&gt;Why people love to write frameworks? they are only tools, it is like wanting to design the perfect screwdriver, right?&lt;/p&gt;

&lt;p&gt;Yes I know what you are thinking: "I don't give a damn about the screwdriver, I just want to build things".&lt;/p&gt;

&lt;p&gt;And you are right, you can go to the store and pick a screwdriver designed by professionals. You just check what you need and buy one. It is totally cool.&lt;/p&gt;

&lt;p&gt;However, what happen when you use screwdrivers for a long time? You have a few of them. Maybe none of them is good enough to use it for everything... Or they are designed for a broad range of needs and you have very particular needs (like those with many attachable heads and none of them work properly).&lt;/p&gt;

&lt;p&gt;At this point, you may have realized that screwdriver makers don't care that much about you. They seem more worried in selling you courses about how to use their screwdrivers, or sending you people to use them for you at a convenient rate. Yes... they stopped building screwdrivers, and started building a profitable business. And now, you have to be certified to use their screwdrivers.&lt;/p&gt;

&lt;p&gt;So you start to think... Hey, I could make my own screwdriver, maybe it is only good for me, but I'm the one building things here! right? what could go wrong?&lt;/p&gt;

&lt;p&gt;So you build "your screwdriver"(tm), it is tailor made for you... It has an odd design, because well, everyone is used to the commercial ones (so they don't understand your genius)... Anyway, you are happy with it and you learnt a lot in the way.&lt;/p&gt;

&lt;p&gt;However, that path leads you to stop building things and start designing screwdrivers. And so, the circle is closed. Not really in my case (I don't sell screwdrivers), but you get the idea.&lt;/p&gt;

&lt;p&gt;That was my story, with the difference that I developed a programming toolkit instead a screwdriver (I guess you noticed that before, right?).&lt;/p&gt;

&lt;p&gt;And that is my journey in the programming tools field: I develop a toolkit for a product which I didn't finish... Well, it is finished, but it is not deployed (but this, my dearest reader, is another story).&lt;/p&gt;

&lt;p&gt;And, even I wouldn't pretend that anyone would have to be certified to use my toolkit, I really would like to ear your thoughts about it. Because if there is something good about making this effort (and believe me, it is a big effort) it is all that you learn in the way. And I would love to continue learning helped by my peers thoughts.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://hexagonkt.com"&gt;https://hexagonkt.com&lt;/a&gt;&lt;br&gt;
&lt;a href="https://github.com/hexagonkt/hexagon"&gt;https://github.com/hexagonkt/hexagon&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Thanks for reading my story!&lt;/p&gt;

</description>
      <category>kotlin</category>
      <category>screwdrivers</category>
    </item>
  </channel>
</rss>
