awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectAboutHow we rankPressMCP server
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
kittinunf avatar

kittinunf/fuel

0
View on GitHub↗
4,652 stars·437 forks·Kotlin·MIT·10 viewsfuel.gitbook.io/documentation↗

Fuel

Fuel is a Kotlin HTTP client library for Android and Kotlin applications that handles both synchronous and asynchronous web requests. It functions as a network wrapper that supports executing calls via suspending functions in coroutines, reactive streams, and traditional callbacks.

The library features built-in integration for Android LiveData to bind network responses directly to observable state holders for user interface updates. It also includes a JSON serialization client that utilizes customizable mappers to convert raw HTTP response bodies into structured data objects.

Capability areas cover REST API integration, including request routing, header and parameter configuration, and basic authentication. The toolset extends to binary data transfer through multipart uploads and file downloading with progress tracking. For maintenance and observability, it provides an interceptor-based pipeline for traffic logging and a mechanism to simulate network calls as blocking executions for unit testing.

Features

  • HTTP Client Libraries - A comprehensive Kotlin and Android HTTP client library for synchronous and asynchronous web requests.
  • HTTP Request Execution - Provides comprehensive capabilities for performing standard synchronous and asynchronous HTTP operations like GET and POST.
  • Asynchronous Data Fetching - Executes network calls using coroutines and reactive streams to prevent blocking the main thread.
  • Android HTTP Networking Libraries - Serves as a networking library for Android applications to execute HTTP requests and handle server responses.
  • Network Wrappers - Functions as a networking wrapper with built-in support for Android LiveData and UI thread callbacks.
  • REST API Integration Frameworks - Provides a framework for connecting to RESTful services by mapping method signatures to API endpoints.
  • Coroutine-Compatible Clients - Uses suspending functions to execute network calls without blocking the main execution thread.
  • Reactive HTTP Wrappers - Wraps network responses in reactive streams to enable functional composition for asynchronous data handling.
  • Coroutine-Based Asynchronous I/O - Uses coroutines and suspending functions to manage network I/O without blocking the main execution thread.
  • Kotlin Coroutines Integration - Provides native support for executing network requests within Kotlin suspending functions to ensure non-blocking UI operations.
  • Response Deserialization - Converts raw HTTP response bodies into structured, typed data objects using configurable serialization mappers.
  • Android LiveData State Bindings - Connects network response data to observable LiveData holders that trigger automatic user interface updates.
  • LiveData Bindings - Binds network response data directly to Android LiveData holders to trigger automatic user interface updates.
  • JSON Request Serializers - Implements automated serialization of request data into JSON format for outgoing payloads.
  • Response Body Streaming - Handles large payloads by piping response bodies directly to local files or output streams to minimize memory usage.
  • JSON Response Parsers - Provides utilities to convert JSON-formatted server responses into structured data objects.
  • Client-Side Request Routing - Implements a structured router pattern to organize web service calls, endpoints, and common configurations.
  • Global HTTP Client Configurations - Manages shared base paths, common HTTP headers, and custom client drivers across all requests via a central manager.
  • JSON Serialization - Provides utilities for converting data objects to JSON for network transmission and parsing responses.
  • Multipart Form Uploads - Supports transmitting files and binary data to servers using the standard HTTP multipart/form-data encoding.
  • Response Body Deserializers - Converts raw network response bodies into structured data objects using mapping extensions.
  • Progress-Tracking File Downloads - Streams remote response bodies directly to local storage with real-time download progress tracking.
  • Request Header Configuration - Offers tools for defining and managing custom HTTP request headers for metadata and authentication.
  • Request Interceptors - Provides an interceptor-based pipeline to process requests and responses for logging or data persistence.
  • Bidirectional Progress Tracking - Monitors byte transfer during both uploads and downloads using registered listeners to track real-time progress.
  • Worker-to-UI Thread Messaging - Posts network request responses from background threads to the UI thread for immediate interface updates.
  • Reactive Stream Bindings - Wraps network responses in reactive observables to allow asynchronous data and error handling through a streaming model.
  • API Patterns - Implements structural templates and organizational strategies for routing service communication endpoints.
  • HTTP Endpoint Mapping - Associates structured objects with specific HTTP methods and URI paths to organize API routing logic.
  • Mobile File Transfer Clients - Supports uploading local files via multipart form-data and downloading remote content to device storage.
  • Request Body Attachers - Allows attaching raw strings, byte arrays, or streams as the body of an outgoing HTTP request.
  • Request Parameter Formatting - Automatically formats key-value pairs into query strings or form-encoded bodies for outgoing requests.
  • Request-Response Interceptors - Processes outgoing requests and incoming responses through a custom interceptor chain for logging and authentication.

Star history

Star history chart for kittinunf/fuelStar history chart for kittinunf/fuel

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Frequently asked questions

What does kittinunf/fuel do?

Fuel is a Kotlin HTTP client library for Android and Kotlin applications that handles both synchronous and asynchronous web requests. It functions as a network wrapper that supports executing calls via suspending functions in coroutines, reactive streams, and traditional callbacks.

What are the main features of kittinunf/fuel?

The main features of kittinunf/fuel are: HTTP Client Libraries, HTTP Request Execution, Asynchronous Data Fetching, Android HTTP Networking Libraries, Network Wrappers, REST API Integration Frameworks, Coroutine-Compatible Clients, Reactive HTTP Wrappers.

What are some open-source alternatives to kittinunf/fuel?

Open-source alternatives to kittinunf/fuel include: liujingxing/rxhttp — rxhttp is a communication layer and network library for Android applications that wraps OkHttp to provide an… amitshekhariitbhu/androidnetworking — AndroidNetworking is an HTTP networking library for Android that handles the full lifecycle of network communication,… imroc/req — req is a chainable HTTP client library for Go designed to simplify request configuration and automatic response… amitshekhariitbhu/fast-android-networking — 🚀 A Complete Fast Android Networking Library that also supports HTTP/2 🚀. sindresorhus/ky — 🌳 Tiny & elegant JavaScript HTTP client based on the Fetch API. elbywan/wretch — Wretch is a chainable HTTP client library and Fetch API wrapper designed to simplify network request configuration,…

Open-source alternatives to Fuel

Similar open-source projects, ranked by how many features they share with Fuel.
  • liujingxing/rxhttpliujingxing avatar

    liujingxing/rxhttp

    3,817View on GitHub↗

    rxhttp is a communication layer and network library for Android applications that wraps OkHttp to provide an asynchronous HTTP client. It functions as a type-safe API client that manages network requests and automates the conversion of responses into structured objects. The library features a compile-time code generation tool to produce type-safe request boilerplate and an interceptor framework for applying global encryption, decryption, and custom headers to network traffic. It supports non-blocking communication using Kotlin Coroutines and RxJava. The project covers a broad range of networ

    Kotlinandriodkotlin-coroutinesokhttp-rxhttp
    View on GitHub↗3,817
  • amitshekhariitbhu/androidnetworkingamitshekhariitbhu avatar

    amitshekhariitbhu/AndroidNetworking

    5,906View on GitHub↗

    AndroidNetworking is an HTTP networking library for Android that handles the full lifecycle of network communication, from sending requests to parsing responses and caching data. It provides a unified interface for executing GET, POST, PUT, DELETE, HEAD, and PATCH requests, with support for both synchronous and asynchronous execution, and includes built-in JSON response parsing that converts server responses directly into Java objects or lists. The library distinguishes itself through a set of integrated capabilities that go beyond basic request execution. It manages file downloads and upload

    Java
    View on GitHub↗5,906
  • imroc/reqimroc avatar

    imroc/req

    4,807View on GitHub↗

    req is a chainable HTTP client library for Go designed to simplify request configuration and automatic response decoding into structures. It provides a fluent-interface request builder that allows developers to incrementally define request properties and encapsulate HTTP logic into reusable API SDKs. The project distinguishes itself with a TLS fingerprint emulator that mimics browser network signatures to bypass bot detection and crawler filters. It also includes a concurrent file downloader that increases transfer speeds by fetching large remote files in parallel segments. The library cover

    Gogogolanghttp
    View on GitHub↗4,807
  • amitshekhariitbhu/fast-android-networkingamitshekhariitbhu avatar

    amitshekhariitbhu/Fast-Android-Networking

    5,906View on GitHub↗

    🚀 A Complete Fast Android Networking Library that also supports HTTP/2 🚀

    Java
    View on GitHub↗5,906
See all 30 alternatives to Fuel→