Ktor vs Spring Boot 2026 — Which Kotlin Backend Framework?

You want to build a backend with Kotlin. Smart choice. But now comes the next question: Ktor or Spring Boot? Both are excellent frameworks. Both support Kotlin. But they have fundamentally different philosophies. Ktor is lightweight, modular, and Kotlin-native. You start with nothing and add only what you need. Spring Boot is full-featured and batteries-included. You start with everything and configure what you want. Let’s compare them across every dimension that matters. ...

July 17, 2026 · 9 min

Ktor Tutorial #22: Full-Stack Kotlin — Ktor Backend + KMP Client

You have built a complete Ktor backend with authentication, database, WebSockets, Docker, and CI/CD. Now it is time to connect everything — a Kotlin backend and a Kotlin client sharing the same data models. In this final tutorial, you will create shared data models, build a Ktor Client that consumes your API, and see how a KMP mobile app connects to your backend. The Full-Stack Kotlin Vision Most full-stack projects look like this: ...

June 10, 2026 · 9 min

Ktor Tutorial #16: OpenAPI and Swagger — Auto-Generated API Docs

Your API has many endpoints. Other developers need to know how to use them. They need to know the request format, response format, required headers, and possible error codes. Writing documentation by hand is tedious and quickly becomes outdated. In this tutorial, you will add OpenAPI documentation and Swagger UI to your Ktor API. Developers can browse your API at /docs and try out endpoints directly from the browser. What is OpenAPI? OpenAPI (formerly Swagger) is a standard format for describing REST APIs. It is a YAML or JSON file that lists all endpoints, request bodies, response schemas, authentication, and more. ...

June 8, 2026 · 4 min

Ktor Tutorial #13: OAuth 2.0 — Sign In with Google

Your API has registration and login with email and password. But many users prefer to sign in with their Google account. It is faster and they do not need to remember another password. In this tutorial, you will add Google Sign-In using OAuth 2.0. You will learn how the OAuth flow works, how to handle the callback, and how to link OAuth accounts with existing email accounts. How OAuth 2.0 Works OAuth 2.0 is a protocol that lets users sign in with a third-party provider (Google, GitHub, etc.) without sharing their password with your application. ...

June 7, 2026 · 6 min

Ktor Tutorial #2: Ktor vs Spring Boot — Which Kotlin Backend?

You decided to build a backend with Kotlin. Good choice. But now you face another decision: Ktor or Spring Boot? Both are great frameworks. Both support Kotlin. But they are very different in philosophy, design, and use cases. Let’s compare them honestly. The Big Picture Ktor is a lightweight, modular framework built by JetBrains. It is Kotlin-native, coroutine-based, and you add features as plugins. Spring Boot is a full-featured, batteries-included framework from VMware (now Broadcom). It started as a Java framework and added Kotlin support later. ...

June 4, 2026 · 7 min

KMP Tutorial #16: Building the Shared Data Layer — Offline-First with Ktor and SQLDelight

In the previous tutorial, we set up the Notes app architecture with a local database and shared ViewModels. Everything works offline. But real apps need to sync with a server. In this tutorial, we build the shared data layer — adding a Ktor API client, Data Transfer Objects (DTOs), an offline-first sync pattern, and a database migration. All of this code lives in commonMain and runs on both Android and iOS. ...

April 6, 2026 · 8 min

KMP Tutorial #6: Ktor Client — Networking in Kotlin Multiplatform

Every app needs to talk to the internet. On Android, you use Retrofit. On iOS, you use URLSession. Two different libraries, two different APIs, two different codebases. In KMP, you use Ktor Client — one networking library that works on every platform. Write your API calls once in commonMain, and they work on Android, iOS, Desktop, and Web. What is Ktor? Ktor is a networking framework by JetBrains (the same team behind Kotlin). The client side lets you make HTTP requests from shared code. ...

April 2, 2026 · 9 min