whatisgithub

What is rxkotlin?

reactivex/rxkotlin — explained in plain English

Analysis updated 2026-06-22

7,041KotlinAudience · developerComplexity · 2/5Setup · easy

In one sentence

A small Kotlin library that adds convenience shortcuts to RxJava, making reactive programming code more concise and natural-looking when written in Kotlin by using extension functions like toObservable() and subscribeBy().

Mindmap

mindmap
  root((rxkotlin))
    What It Does
      Kotlin RxJava extensions
      Reduces boilerplate
      Named callbacks
    Tech Stack
      Kotlin
      RxJava 3.x
      Maven Central
      Gradle
    Use Cases
      List to stream
      Event handling
      Cleaner subscriptions
    Audience
      Kotlin developers
      Android developers
      Reactive code users
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Turn a Kotlin list into a reactive stream with a single .toObservable() call.

USE CASE 2

Subscribe to an RxJava observable using Kotlin named arguments for clearer, less error-prone callback code.

USE CASE 3

Reduce RxJava boilerplate in an existing Kotlin Android or JVM project with a small drop-in library.

What is it built with?

KotlinRxJavaGradleMavenMaven Central

How does it compare?

reactivex/rxkotlinjetbrains/kotlin-nativeceuilisa/pixiv-shaft
Stars7,0416,9887,099
LanguageKotlinKotlinKotlin
Setup difficultyeasyhardeasy
Complexity2/51/52/5
Audiencedeveloperdevelopergeneral

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · easy Time to first run · 5min

Must match RxKotlin version to your existing RxJava version (1.x, 2.x, or 3.x), project is not accepting new contributions.

So what is it?

RxKotlin is a small Kotlin library that adds convenience functions on top of RxJava, a popular Java library for reactive programming. Reactive programming is a style of writing code where the program responds to streams of data or events as they arrive, rather than fetching data at a specific moment and waiting for it. RxJava already works in Kotlin projects, but Kotlin has a feature called extension functions that allows adding new methods to existing classes, and RxKotlin uses this to make RxJava code more concise and natural-looking when written in Kotlin. As a practical example, RxKotlin lets you call .toObservable() directly on a Kotlin list or array to turn it into a reactive stream. It also provides subscribeBy(), which uses Kotlin named arguments to make it clearer what each callback is doing (onNext, onError, onComplete) rather than relying on positional parameters. These are small quality-of-life improvements rather than entirely new features. The library follows three major versions that correspond to the three major versions of RxJava: RxKotlin 3.x targets RxJava 3.x and is the active version, RxKotlin 2.x is in maintenance mode with bug fixes only, RxKotlin 1.x has reached end of life with no further support. Developers should pick the version that matches the RxJava version already in their project. Installation is through standard Java build tools: Maven, Gradle, or Ivy, with packages hosted on Maven Central. Snapshot builds from the development branch can also be pulled through JitPack. The project is part of the ReactiveX organization. As of October 2023, the README states the project is not accepting new contributions because of limited maintainer availability. The focus is on conservative additions that clearly reduce boilerplate rather than stylistic preferences.

Copy-paste prompts

Prompt 1
Show me how to convert a Kotlin list to an RxJava Observable using RxKotlin's toObservable() extension function.
Prompt 2
Give me an example of using RxKotlin's subscribeBy() with named arguments to handle onNext, onError, and onComplete in Kotlin.
Prompt 3
How do I add RxKotlin 3.x to my Gradle project and what version of RxJava does it require?
Prompt 4
What are the most useful extension functions RxKotlin adds on top of plain RxJava 3?
Prompt 5
I have an RxJava 2 project in Kotlin, should I upgrade to RxKotlin 3 or switch to Kotlin coroutines instead?

Frequently asked questions

What is rxkotlin?

A small Kotlin library that adds convenience shortcuts to RxJava, making reactive programming code more concise and natural-looking when written in Kotlin by using extension functions like toObservable() and subscribeBy().

What language is rxkotlin written in?

Mainly Kotlin. The stack also includes Kotlin, RxJava, Gradle.

How hard is rxkotlin to set up?

Setup difficulty is rated easy, with roughly 5min to a first successful run.

Who is rxkotlin for?

Mainly developer.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.