skydoves/sandwich
🥪 Sandwich is an adaptable and lightweight sealed API library designed for handling API responses and exceptions in Kotlin for Retrofit, Ktor, and Kotlin Multiplatform. observed · 2026-08-28
Health v2 · maintenance only
94/100
- Activity 99
- Release rhythm 83
- Longevity 100
How is this computed?
round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10) — computed 2026-09-03. Adoption (stars, forks) is never an input.
- gap_med: 67
- age_days: 2311
- days_rel: 38
- days_push: 8
- n_releases_24m: 12
Adoption not part of the score
1770 stars · 113 forks observed · 2026-08-28
What it is AI-extracted, prompt v1, taxonomy v1, 2026-08-30, confidence not recorded
Sandwich is a lightweight Kotlin library that provides sealed ApiResponse types for modeling and handling API responses and exceptions from Retrofit, Ktor, and Ktorfit. It offers functional operators, mappers, and global response handling so developers can avoid writing custom Resource/Result wrapper classes.
Use cases
- handle retrofit api responses and errors in kotlin
- avoid writing resource wrapper classes for network calls
- handle network exceptions elegantly in android apps
- standardize api response handling across kotlin multiplatform projects
- apply global operators to all network responses
- map api error responses to custom models
- test network response handling with fake factories
When to choose
- you use Retrofit, Ktor, or Ktorfit in Kotlin and want consistent response/error handling
- you're tired of writing boilerplate Resource or Result wrapper classes
- you want functional operators and mappers for network responses
- you need shared network response handling in Kotlin Multiplatform
- you want global response handling across your app
When to avoid
- you don't use Retrofit, Ktor, or Ktorfit for networking
- your project already has an established response-handling pattern
- you need a full networking client rather than a response-handling layer
- you're not using Kotlin
Facets
library · maturity stable
http-client error-handling serialization android-tools web-development developer-tools jvm cross-platform retrofit ktor kotlin-multiplatform api-response-handling sealed-classes coroutines android
2 sources
- readme: https://github.com/skydoves/sandwich · fetched 2026-08-28 · b7224077dd2a
- homepage: https://skydoves.github.io/sandwich/ · fetched 2026-08-29 · dac3f41321b5
Member repositories
| Repository | Role | Health v2 |
|---|---|---|
| skydoves/sandwich | main | 94 |
For agents
markdown · JSON · MCP: product_card(name="skydoves/sandwich")
Data as of 2026-08-30T08:39:29.467469+00:00 · Report a problem