Do you know of any good backend web frameworks for Kotlin? I would wish for something like FastAPI for python. Kotlin may actually be a great fit for a service I want to build and I hadn't really thought of it as an option until now.
If you want something old and battle-tested, Spring Boot works just fine in Kotlin. I found the extreme OO design kinda off-putting, but once I got over it I had a great time with it.
KTor [0] is the 'native' web framework for Kotlin, and there's also a full-stack framework built around it that just hit version 1.0, KWeb [1].
Well I care more about simplicity and easy to develop in rather than battle-tested. Something like the Javalin or http4k would probably suit me the best.
Of course, I have checked Ktor before, but I don't know if I particularly fancy the way they are structuring stuff.
My main issue with the java ecosystem is that it's way to enterprisy for my taste. Everything is so unnecessary complex and hard to reason about, but I will take a good hard look at Kotlin before making my decision. The thing is that I am really interested in the native compilation that Kotlin offers that would be very beneficial for me and the only reason behind picking Python otherwise would be that it is a nice language and already installed on the linux environments it will run in.
Basically I will have a big api and drop (preferrably) a single binary to some machines that will talk to the api. These machines will generally be outside of my control. I have looked a bit on Rust but it seems a bit too low level and hard to work with. I have looked at Deno because it can compile down to a binary but using javascript for this project seems like a bad choice. So I chose Python at first because it seemed easy to get going with, had great tooling and is already installed in the environments I will be dropping a script in.
Hard to imagine anything less "enterprisy" than http4k. Zero dependencies, totally modular, and can easily produce a single binary that contains your web app and the web server itself. No Spring, no Tomcat, no app servers necessary. Install a reverse proxy in front to handle HTTPS. Same goes for ktor.
A few years ago, I used dropwizard for both a service that ran locally and for the cloud backend at a startup. Kotlin meshed very well and we never encountered any issues with either. Also just worked on a project that used micronaut which was less mature and not very intuitive, but did support Scala and Kotlin (a goal in that project).
That this has 5 different answers in 30 minutes is the problem I have with the Java/Kotlin ecosystem. There's just so much to figure out before you write a line of code.