Unciv
Game ServersOpen-source reimplementation of Civilization V
Replaces Civilization V
19 open-source, self-hostable apps written primarily in Kotlin.
Open-source reimplementation of Civilization V
Replaces Civilization V
Material design KeePass client for Android
Replaces 1Password, LastPass
Media server for comics, manga and e-books
Replaces ComiXology, Kindle
Native Android TV and Fire TV client for the Jellyfin server
Replaces Plex for Android TV, Emby for Android TV
Third-party Android client for Jellyfin with offline playback
Replaces Plex for Android
Self-hosted backend pairing for Home Assistant mobile apps
Replaces Google Home app
Scalable WebRTC-compatible video routing engine
Replaces Zoom, Twilio
Lightweight offline RSS reader for Android
Replaces Feedly
CalDAV/CardDAV sync client for Android
Replaces Google Calendar Sync, iCloud sync
Cross-platform open-source Git client
Replaces GitKraken, Sourcetree
Minimal note-taking app with notebooks and tags
Replaces Google Keep, OneNote
Video game library manager with automatic scanning, web access,
Metadata fetcher for Komga and Kavita libraries
Replaces Goodreads
File-based calendar and contacts synchronization
Replaces Google Calendar
Android RSS reader that syncs with self-hosted services
Replaces Feedly
Static site generator for documentation and blogs on the JVM
Replaces Jekyll, GitBook
Free Subsonic and Navidrome music streaming client
Replaces Spotify
Android app that turns tablets into smart home wall panels
Replaces Control4 touch panels
Scriptable, lightweight mock server for REST and SOAP APIs
Replaces WireMock
No apps match these filters.
Last reviewed Oct 11, 2026 · 586 words
The Kotlin bucket is two lists sharing a language. A handful of entries are JVM servers you run yourself, led by Komga for comics and manga. The larger half is Android apps (KeePassDX, DAVx5, Findroid, Jellyfin for Android TV) that make a self-hosted server usable from a phone or TV. Both halves are strong, and for most readers the Android clients will matter more day to day than the servers.
On the server, Kotlin is a JVM language, so it behaves like Java: you need a Java runtime or a container that bundles one, startup takes a few seconds, and idle memory is set largely by heap settings. The directory estimates 512 MB for Komga and Gameyfin. Upgrades are clean in practice because the Kotlin servers here ship as Docker images; you pull a new tag and restart.
Reading and patching Kotlin is easier than its JVM cousin Scala. The syntax is compact and familiar to anyone who has seen Java, Swift or TypeScript, and Gradle builds are routine. Android clients also install as plain APKs, and several of these apps are on F-Droid, so you are not tied to Google Play.
| App | What it does | Difficulty (directory) | RAM estimate |
|---|---|---|---|
| Komga | Comics, manga and e-book server | Easy | 512 MB |
| Komf | Metadata fetcher for Komga and Kavita | Easy | 256 MB |
| Gameyfin | Game library manager | Medium | 512 MB |
| Jitsi Videobridge | Video routing for Jitsi | Hard | 512 MB |
| Unciv | Civ V remake with multiplayer server | Easy | 512 MB |
Komga (about 6,700 stars, MIT) is the pick. It serves comics and manga with a clean web reader, good metadata handling and OPDS for reader apps, deploys with Docker, and the directory rates it Easy. The catalogue's one caveat is that it is less suited to plain prose e-books. Pair it with Komf to pull metadata from AniList, MangaUpdates and MyAnimeList automatically. If you are torn between the two big comic servers, the Kavita vs Komga comparison covers it.
Gameyfin scans a game library and gives it web access and downloads. Jitsi Videobridge is the selective forwarding unit behind Jitsi Meet: rated Hard, a component of a larger stack, and rarely deployed on its own. Unciv (about 11,400 stars) is a game first, but its multiplayer server is self-hostable and light.
Most of the bucket answers this. DAVx5 syncs calendars and contacts from any CalDAV or CardDAV server, including Nextcloud, and is the standard way to do it on Android. KeePassDX opens KeePass database files you sync yourself. Findroid and Jellyfin for Android TV play from Jellyfin, Ultrasonic streams from Subsonic servers and Navidrome, and Feeder and Readrops cover RSS. The Home Assistant Companion entry is the official Android app side of Home Assistant. Every one of these is rated Easy.
Gitnuro is a desktop Git client, and Orchid, a static-site generator, is archived. The Apple-side equivalents of these clients are on the Swift page.
On the server, run Komga with Komf if you read comics or manga; the pair is the most polished Kotlin you can host. On every Android device in the house, install DAVx5 if you self-host calendars and Findroid if you run Jellyfin. Leave Jitsi Videobridge to the full Jitsi Meet deployment that already includes it.