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.

Content in all repositories owned by your account will be closed.
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.

Why I write the Kite libraries

Every Kite library is one of two things. Either a full Kotlin port of an existing library, like KiteTorrent which ports libtorrent. Or a Kotlin/Native cockpit over a native core, like KiteFFmpeg which drives FFmpeg in a Kotlin-first, coroutine-first way. The goal is to depend on nothing if I can help it. No bundled third-party library and no outside API. So when a bug shows up it is the Kite library's own bug, and it gets fixed there.

It also means every Kite library behaves exactly the same on every platform, because there is no expect/actual split underneath, or almost none. Most of the code is Kotlin/Native, and sometimes all of it is.

I also want the Kite libraries to fit into the KMP world on the rendering side. So wherever it makes sense there are Compose bindings and renderers. KitePDF, KitePlayer and Kite3D all have them.

Featured


Synkplay logo

Synkplay

App stars

Watch videos in sync with friends, in the same rooms as Syncplay for PC. Android and iOS.


KitePDF logo

KitePDF

Library stars

Read, write, create, and display PDFs and EPUB books. Pure Kotlin, on Android, iOS, desktop, and web.



KitePlayer logo    KiteFFmpeg logo

KitePlayer + KiteFFmpeg

Library KitePlayer stars KiteFFmpeg stars

Twins. KiteFFmpeg is FFmpeg as a plain Kotlin dependency: convert, trim, and transcode video and audio. One Gradle line, no NDK, no install. KitePlayer is the media player built on it, with a 100% Kotlin core: subtitles, live streams, hardware decode.


KiteConfig logo

KiteConfig

Gradle plugin stars

Set your app name, logo, version, and IDs once, in one Gradle block. Android and iOS both read from it, so they never drift apart.


Upcoming Kite libraries

All of these exist and build. None is tested enough to trust yet, so their repos stay private. Each one goes public once it proves it works.

Library Purpose
KiteImage Load and save images (PNG, JPEG, GIF, WebP, and more) from shared code.
KiteQR Scan and create QR codes and barcodes.
KiteCore The small helpers every project rewrites: text, lists, dates, math, and coroutines.
KiteArchive Zip and unzip anywhere, plus TAR, gzip, LZ4, and Snappy.
KiteAudio Decode, encode, and tag audio files.
Kite3D 3D math: vectors, matrices, quaternions, and collision shapes.
KiteSynth A synthesizer: it reads a SoundFont, takes MIDI notes, and turns them into sound.
KiteRT Real-time audio output. Your code makes the samples, KiteRT gets them to the speakers.
KiteMIDI Read and write MIDI files, and talk to real instruments over USB and Bluetooth.
KiteTorrent Download and seed torrents from shared code: magnet links, encryption, peer discovery.

Upcoming apps

Bigger things in the works, each one a single Kotlin codebase for every platform.

App Purpose
PINGETTO Check your network latency with ping.
Luddy One download manager for every screen: torrents and direct links, streamed while they download.
ChatStrata Read the chat backups you download from Facebook, Instagram, Snapchat, and others.
Peerora Send files between your devices.

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 the official Syncplay for PC. Fully written in Kotlin and Compo…

    Kotlin 353 18

  2. KitePDF KitePDF Public

    100% Kotlin/Native 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…

    Kotlin 40 3

  3. KiteConfig KiteConfig 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 1

  4. KitePlayer KitePlayer Public

    A Kotlin/Native media player library for Kotlin Multiplatform, Android, iOS, desktop and web. Fine-tuned to perfection with FFmpeg and Kotlin sugary syntax. No expect/actual, no build scripts/NDK. …

    Kotlin 2