Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/rogervinas/top-5-server-side-kotlin-frameworks-2022
⭐ Top 5 Server-Side Frameworks for Kotlin in 2022
https://github.com/rogervinas/top-5-server-side-kotlin-frameworks-2022
http4k kotlin ktor micronaut quarkus spring-boot
Last synced: about 1 month ago
JSON representation
⭐ Top 5 Server-Side Frameworks for Kotlin in 2022
- Host: GitHub
- URL: https://github.com/rogervinas/top-5-server-side-kotlin-frameworks-2022
- Owner: rogervinas
- Created: 2022-10-26T17:47:38.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2024-09-30T15:21:49.000Z (about 2 months ago)
- Last Synced: 2024-10-06T03:51:28.999Z (about 1 month ago)
- Topics: http4k, kotlin, ktor, micronaut, quarkus, spring-boot
- Language: Kotlin
- Homepage: https://dev.to/rogervinas/series/21428
- Size: 4.14 MB
- Stars: 5
- Watchers: 2
- Forks: 3
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
[![SpringBoot](https://github.com/rogervinas/top-5-server-side-kotlin-frameworks-2022/actions/workflows/springboot.yml/badge.svg)](https://github.com/rogervinas/top-5-server-side-kotlin-frameworks-2022/actions/workflows/springboot.yml)
![Java](https://img.shields.io/badge/Java-21-blue?labelColor=black)
![Kotlin](https://img.shields.io/badge/Kotlin-2.0.21-blue?labelColor=black)
![SpringBoot](https://img.shields.io/badge/SpringBoot-3.3.4-blue?labelColor=black)[![Quarkus](https://github.com/rogervinas/top-5-server-side-kotlin-frameworks-2022/actions/workflows/quarkus.yml/badge.svg)](https://github.com/rogervinas/top-5-server-side-kotlin-frameworks-2022/actions/workflows/quarkus.yml)
![Java](https://img.shields.io/badge/Java-17-blue?labelColor=black)
![Kotlin](https://img.shields.io/badge/Kotlin-2.0.21-blue?labelColor=black)
![Quarkus](https://img.shields.io/badge/Quarkus-2.15.3.Final-blue?labelColor=black)[![Micronaut](https://github.com/rogervinas/top-5-server-side-kotlin-frameworks-2022/actions/workflows/micronaut.yml/badge.svg)](https://github.com/rogervinas/top-5-server-side-kotlin-frameworks-2022/actions/workflows/micronaut.yml)
![Java](https://img.shields.io/badge/Java-17-blue?labelColor=black)
![Kotlin](https://img.shields.io/badge/Kotlin-1.6.21-blue?labelColor=black)
![Micronaut](https://img.shields.io/badge/Micronaut-3.8.1-blue?labelColor=black)[![Ktor](https://github.com/rogervinas/top-5-server-side-kotlin-frameworks-2022/actions/workflows/ktor.yml/badge.svg)](https://github.com/rogervinas/top-5-server-side-kotlin-frameworks-2022/actions/workflows/ktor.yml)
![Java](https://img.shields.io/badge/Java-21-blue?labelColor=black)
![Kotlin](https://img.shields.io/badge/Kotlin-2.0.20-blue?labelColor=black)
![Ktor](https://img.shields.io/badge/Ktor-2.3.12-blue?labelColor=black)[![Http4k](https://github.com/rogervinas/top-5-server-side-kotlin-frameworks-2022/actions/workflows/http4k.yml/badge.svg)](https://github.com/rogervinas/top-5-server-side-kotlin-frameworks-2022/actions/workflows/http4k.yml)
![Java](https://img.shields.io/badge/Java-21-blue?labelColor=black)
![Kotlin](https://img.shields.io/badge/Kotlin-2.0.20-blue?labelColor=black)
![Http4k](https://img.shields.io/badge/Http4k-5.9.0.0-blue?labelColor=black)# Top 5 Server-Side Frameworks for Kotlin in 2022
This is a demo inspired by [Anton Arhipov](https://github.com/antonarhipov)'s [Top 5 Server-Side Frameworks for Kotlin in 2022 @ Kotlin by JetBrains](https://www.youtube.com/watch?v=pYK5KkuZ3aU) where, **spoiler alert**, the author shares this top 5 list:
* 🥇 [Spring Boot](https://spring.io/projects/spring-boot)
* 🥈 [Quarkus](https://quarkus.io/)
* 🥉 [Micronaut](https://micronaut.io/)
* 🏅 [Ktor](https://ktor.io/docs/welcome.html)
* 🏅 [Http4k](https://www.http4k.org/)I have a lot of experience in **Spring Boot**, so I wanted to take a look at the other ones 😜
To do so we will create a simple application with each one of these frameworks, implementing the following scenario:
We will use this [docker-compose.yaml](docker-compose.yaml) to start locally [Vault](https://www.vaultproject.io/) and [Postgresql](https://www.postgresql.org/), as well as the application containers.
In order to put a `greeting.secret` in vault we will start another **Vault** container overriding its entrypoint to just put the secret using `vault kv put` and die afterwards (maybe there is another more elegant way to do it but this one works).
Please find below a step-by-step guide for each one of the top 5 frameworks. Here we go!
* 🥇 [Spring Boot App](springboot-app)
* 🥈 [Quarkus App](quarkus-app)
* 🥉 [Micronaut App](micronaut-app)
* 🏅 [Ktor App](ktor-app)
* 🏅 [Http4k App](http4k-app)Happy coding! 💙