# Tinder/Scarlet

A Retrofit inspired WebSocket client for Kotlin, Java, and Android

Repository: https://github.com/Tinder/Scarlet
Canonical: https://ross.abutalabs.com/products/scarlet
Language: Kotlin
License: NOASSERTION
License Family: other
Last push: 2025-11-21T18:58:33+00:00

## Health v2 (maintenance only)
Score: 47/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 53, release rhythm 8, longevity 100
- inputs: {"age_days": 3018, "days_push": 285, "days_rel": null, "gap_med": null, "n_releases_24m": 0}
- flags: no_license
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 3253, forks 243 (observed 2026-08-28T04:07:52.151079+00:00)

## What it is
Scarlet is a Retrofit-inspired declarative WebSocket client library for Kotlin, Java, and Android. It lets you define WebSocket services via annotated interfaces, with pluggable adapters for serialization (Moshi, Gson, Protobuf, Jackson) and reactive streams (RxJava, Kotlin Coroutines).

## Use cases
- consume realtime websocket feeds in kotlin
- declarative websocket client like retrofit
- stream live bitcoin prices over websocket on android
- websocket client with rxjava or coroutines
- serialize websocket messages with moshi or protobuf
- auto-reconnect websocket with backoff strategies

## When to choose
- you want a Retrofit-style annotated interface for WebSocket communication on the JVM or Android
- you need reactive streams (RxJava/Flowable) or coroutine-based WebSocket event handling
- you want pluggable message serialization and reconnect backoff strategies

## When to avoid
- you need protocols beyond WebSocket like MQTT, STOMP, or Socket.IO in a stable release
- you want a lightweight raw WebSocket API without declarative interface boilerplate
- you need a library with frequent updates and active feature development

## Facets
- artifact type: library
- maturity: maintenance
- function: websocket, http-client, serialization, middleware
- domain: web-development, backend, mobile-development, developer-tools
- platform: jvm
- tags: retrofit-inspired, rxjava, kotlin-coroutines, okhttp, declarative-api, android

## Member repositories
- Tinder/Scarlet (main) score 47

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:07:52.151079+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T07:24:24.263405+00:00, confidence not recorded.
  - readme: https://github.com/Tinder/Scarlet (fetched 2026-08-28T04:07:52.151079+00:00, sha 32b8d4ee9859)
- Data as of 2026-08-30T08:39:29.467469+00:00.
