Fuel is an HTTP networking library for Kotlin and Android that uses Kotlinx Coroutines to simplify HTTP requests.
The library addresses the need for straightforward HTTP communication in Kotlin projects by providing suspend functions for all HTTP methods, allowing developers to make network calls with minimal boilerplate. It backs JVM requests with OkHttpClient and Apple platform requests with NSURLSessionConfiguration, abstracting away the underlying platform differences while maintaining access to platform-specific configuration options when needed.
Fuel suits developers building Kotlin or Android applications who want a lightweight networking solution without complex abstractions. It requires Java 8 or higher and Android 5 or later on mobile platforms. The tool is fully compatible with R8 out of the box; Proguard users may need to add configuration rules for Coroutines, OkHttp, and Okio, with additional rules required if using serialization modules like Moshi or Kotlinx Serialization. The library throws exceptions on network errors, so production applications must implement proper exception handling.
The project maintains active development with ongoing updates to its core branch, having transitioned from earlier versions while preserving a separate branch for legacy code. The tool provides straightforward integration with minimal configuration overhead for standard use cases, though developers should be aware that exception handling is mandatory rather than optional in production environments.