After trying Kotlin years ago Anton quickly realized that you can do a lot more with much less code. It hits the right balance of language features and complexity, so that a lot can be achieved without any frameworks or libraries at all. However, because of good Java-interop, people still use many server frameworks and libraries that are written in Java and for Java. These contain lots of complex code, many dependencies waiting to prove vulnerable (like log4j) and other unnecessary bloat. Moreover, Kotlin’s type system is stronger than Java’s and thus many modern patterns that Java developers use seem unnecessary when writing in Kotlin.
So, during Christmas time of 2021, Klite was born to prove that a convenient, performant and non-blocking server framework can also be very small and simple to write and debug. It’s also extensible – the framework will never get in your way – you can easily change anything that it does! Basic things are also done right by default like logging and even transaction handling for async requests using coroutines. And there are zero dependencies!
How all of this is made possible and which design details and features of Kotlin’s language and type system are involved, will be shared with you in this KKON talk.