Skip to content
View yuroyami's full-sized avatar
🎮
Lazing around
🎮
Lazing around
  • More and more Kotlin
  • Algiers, Algeria 🇩🇿

Block or report yuroyami

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
yuroyami/README.md
yuroyami. Kotlin for everything. Kotlin Multiplatform libraries and apps.

Why I love KMP

I write everything in Kotlin. With Kotlin Multiplatform (KMP), one codebase runs on Android, iOS, desktop, and web: you share the logic, and every platform still gets native performance. I expect it to become the default way to build cross-platform apps.

Why I write the Kite libraries

The Kite libraries are written in pure Kotlin, and nearly all of them depend on nothing at all: no native code, no bundled binaries, no other library underneath. That keeps things predictable. The same code runs on every platform, so it behaves the same on every platform. And when something breaks, the bug is in the library itself, where I can fix it, not buried in a native dependency I have no control over.

You do not even need a KMP project to use them. The libraries are small, and a plain Swift or Objective-C iOS app can add one like any other framework.

🪁 Kite libraries in 100% pure Kotlin

Library Purpose Release Stars
KitePDF TL;DR: Read, write, and display PDFs and EPUB books.

What it does: Open a PDF, grab its text, edit it, or build a new one from scratch. Reads EPUB 2 and 3 too. Want to show pages on screen? A ready-made Compose viewer comes with it.
kitepdf stars
KiteCodec TL;DR: Convert and edit video and audio files.

What it does: Change format, resize, trim, crop, swap the codec, or drop the audio track. It is FFmpeg, except you call it from Kotlin instead of writing command lines.
source only stars
KitePlayer TL;DR: Play video and audio in your app.

What it does: One player for every platform, behaving the same on all of them. Handles subtitles, live streams, and seeking.
source only stars
KiteCore TL;DR: The little helpers you rewrite in every project.

What it does: Around 450 shortcuts for text, lists, dates, math, and coroutines. Plus the few things KMP is missing, like running work off the main thread the same way everywhere.
kitecore stars
KiteQR TL;DR: Scan and create QR codes and barcodes.

What it does: Reads QR, Aztec, Data Matrix, PDF417, and the usual 1D barcodes out of an image. Creates them as PNG or SVG. Optional Compose UI included.
kiteqr stars
KiteImage TL;DR: Load and save images without platform code.

What it does: Opens PNG, JPEG, GIF, BMP, TIFF, JPEG 2000, and WebP into pixels you can use in shared code. Animated GIF and WebP work too. Plugs into Compose and Coil.
kiteimage stars
KiteArchive TL;DR: Zip and unzip, on any platform.

What it does: Read and write ZIP files, read TAR and older archive formats, and compress with gzip, LZ4, or Snappy. All from shared code.
kitearchive stars
Kite3D TL;DR: 3D math, with three.js's API.

What it does: Vectors, matrices, rotations, colors, and collision shapes. It draws nothing. It only does the math.
kite3d stars

Upcoming

Still being built. The source is public, but there is nothing to depend on yet.

Library Purpose
KiteAudio TL;DR: Read, write, and tag audio files.

What it does: Opens FLAC, WAV, AIFF, MP3, and Vorbis. Edit titles, artists, and artwork without touching the audio itself.
KiteTorrent TL;DR: Download and seed torrents from shared code.

What it does: Magnet links, peer discovery, encryption, and proxies. Nothing native to ship with your app.

🔌 Gradle plugin

Plugin Purpose Release Stars
KiteSSOT TL;DR: One place for your app name, version, and IDs.

What it does: Set them once in your root Gradle file. Android and iOS both read from there, so they never fall out of sync.
kitessot stars

📱 KMP apps

One codebase for Android and iOS, UI included, built with Compose Multiplatform.

App Purpose Stars
Synkplay Watch videos in sync with friends. Talks to the same rooms as the Syncplay desktop client. stars
Pingy Measure network latency with ping. stars
DuelistLP Track life points for two-player Yu-Gi-Oh games. stars

Email

Pinned Loading

  1. syncplay-mobile syncplay-mobile Public

    📱 Syncplay Mobile (now Synkplay) is a Syncplay client app for Android and iOS. Watch stuff in sync with your friends. Compatible with Syncplay PC. Fully written in Kotlin and Compose multiplatform.

    Kotlin 348 18

  2. KitePDF KitePDF Public

    100% Pure Kotlin PDF/EPUB Library (read, write, edit, create, render). Full KMP (Android, iOS, Web Wasm/JS, JVM Desktop). No expect/actuals. Supports rendering directly into Compose Multiplatform w…

    Kotlin 34 2

  3. KiteSSOT KiteSSOT Public

    Gradle plugin that gives you a Kotlin DSL block to configure both your Android and iOS apps at the same time (app name, app logo, app identifier, version, version code, build config, and much more)

    Kotlin

  4. PINGY PINGY Public

    📱 PINGY is a Network Ping Testing app for Android and iOS. Quickly test your network latency/ping. Fully written in Kotlin and Compose multiplatform.

    Kotlin 1