Flutter Gems is a curated list of 6700+ useful Dart & Flutter packages that are categorized based on functionality.
Top Flutter HTTP Client and Utilities packages
Last updated: January 26, 2025
A HTTP client in Dart is used for making HTTP requests. Your device (client) running the Flutter app makes a request to a server, and the server responds. The client then interprets the response and takes action accordingly.
The complete list of Dart and Flutter packages that can help you create HTTP client, make HTTP API requests, cache server response and provide various other HTTP utilities in your Flutter app is provided below.
http
👍 8.05K ⬇️ 5.9M
Dart 3 compatibleMaintenance Status: Good
A composable, multi-platform, Future-based API for HTTP requests.
dio
👍 7.74K ⬇️ 1.7M
Dart 3 compatibleMaintenance Status: Good
A powerful HTTP package for Dart/Flutter, which supports Global settings, Interceptors, FormData, Aborting and canceling a request, Files uploading and downloading, Requests timeout, Custom adapters, etc.
mime
👍 509 ⬇️ 5.3M
Dart 3 compatibleMaintenance Status: Good
Utilities for handling media (MIME) types, including determining a type from a file extension and file contents.
http_parser
👍 239 ⬇️ 4.9M
Dart 3 compatibleMaintenance Status: Good
A platform-independent package for parsing and serializing HTTP formats.
sync_http
👍 16 ⬇️ 2.3M
Dart 3 compatibleMaintenance Status: Poor
Synchronous HTTP client for Dart.
retrofit
👍 1.88K ⬇️ 331.1K
Dart 3 compatibleMaintenance Status: Good
retrofit.dart is an dio client generator using source_gen and inspired by Chopper and Retrofit.
retry
👍 978 ⬇️ 851.7K
Dart 3 compatibleMaintenance Status: Average
Utility for wrapping an asynchronous function in automatic retry logic with exponential back-off, useful when making requests over network.
universal_io
👍 246 ⬇️ 1.4M
Dart 3 compatibleMaintenance Status: Average
Cross-platform 'dart:io' that adds browser support for HttpClient and some other "dart:io" APIs.
dio_web_adapter
👍 2 ⬇️ 1.4M
Dart 3 compatibleMaintenance Status: Good
An adapter that supports Dio on Web.
chopper
👍 838 ⬇️ 103.4K
Dart 3 compatibleMaintenance Status: Good
Chopper is an http client generator using source_gen, inspired by Retrofit
uri
👍 24 ⬇️ 522.6K
Dart 3 compatibleMaintenance Status: Poor
Utilities for building and parsing URIs, including support for parsing URI templates as defined in RFC 6570.
http2
👍 86 ⬇️ 441.2K
Dart 3 compatibleMaintenance Status: Good
A HTTP/2 implementation in Dart.
dio_cache_interceptor
👍 355 ⬇️ 137.5K
Dart 3 compatibleMaintenance Status: Good
Dio HTTP cache interceptor with multiple stores respecting HTTP directives (or not).
mailer
👍 413 ⬇️ 45.6K
Dart 3 compatibleMaintenance Status: Good
Compose and send emails from Dart. Supports file attachments and HTML emails
dio_smart_retry
👍 250 ⬇️ 104.5K
Dart 3 compatibleMaintenance Status: Good
Retry library for Dio package. By default, the request will be retried only for appropriate retryable http statuses.
fluri
👍 4 ⬇️ 254.6K
Dart 3 compatibleMaintenance Status: Good
Fluri is a fluent URI library built to make URI mutation easy.
web_scraper
👍 291 ⬇️ 1K
Dart 3 compatibleMaintenance Status: Poor
A simple web scraper to scrape HTML tags and their attributes to cast them into Lists and Maps for dart and flutter.
vexana
👍 285 ⬇️ 1.1K
Dart 3 compatibleMaintenance Status: Good
Manage your network layer with dio. You will be able to use it very easily network operations.
mime_type
👍 70 ⬇️ 169.1K
Dart 3 compatibleMaintenance Status: Good
MIME type library for Dart HTTP server applications.
dart_ipify
👍 165 ⬇️ 85.2K
Dart 3 compatibleMaintenance Status: Poor
This package uses the remote ipify web services in order to get your public IP address or geographical details from any given IP.
http_client_helper
👍 31 ⬇️ 195K
Dart 3 compatibleMaintenance Status: Average
A Flutter plugin for http request with cancel and retry fuctions.
http_interceptor
👍 194 ⬇️ 45.7K
Dart 3 compatibleMaintenance Status: Good
A lightweight, simple plugin that allows you to intercept request and response objects and modify them if desired.
dio_http2_adapter
👍 42 ⬇️ 155.6K
Dart 3 compatibleMaintenance Status: Good
An adapter that combines HTTP/2 and dio. Supports reusing connections, header compression, etc.
fk_user_agent
👍 42 ⬇️ 139.4K
Dart 3 compatibleMaintenance Status: Poor
Retrieve Android/iOS device user agents in Flutter.
rate_limiter
👍 81 ⬇️ 106K
Dart 3 compatibleMaintenance Status: Poor
A pure dart package to apply useful rate limiting strategies on regular functions.
dio_cookie_manager
👍 147 ⬇️ 46.1K
Dart 3 compatibleMaintenance Status: Average
A cookie manager combines cookie_jar and dio, based on the interceptor algorithm.
flutter_cors
👍 187 ⬇️ 1.8K
Dart 3 compatibleMaintenance Status: Average
A script to disable and re-enable CORS checks for Flutter's Chrome instance
talker_dio_logger
👍 111 ⬇️ 55.8K
Dart 3 compatibleMaintenance Status: Good
Lightweight and customizable dio http client logger on talker base
cookie_jar
👍 88 ⬇️ 73.1K
Dart 3 compatibleMaintenance Status: Average
A cookie manager for http requests in Dart, help you to deal with the cookie policies and persistence.
cooky
👍 10 ⬇️ 135.8K
Dart 3 compatibleMaintenance Status: Poor
An HTTP Cookies implementation for the client to get, set and remove cookies. It is very simple and well tested.
http_certificate_pinning
👍 128 ⬇️ 29.4K
Dart 3 compatibleMaintenance Status: Average
Https Certificate pinning for Flutter. Checks the equality between the known SHA-1 or SHA-256 fingerprint and the SHA-1 or SHA-256 of the target server.
![chucker_flutter Card Image](/media-cards/chucker_flutter.png)
chucker_flutter
👍 142 ⬇️ 13.9K
Dart 3 compatibleMaintenance Status: Good
Chucker Flutter helps you inspect the HTTP(S) requests/responses. It stores data locally and provides a UI for inspecting network calls and sharing their content.
fresh_dio
👍 140 ⬇️ 9.8K
Dart 3 compatibleMaintenance Status: Good
An http interceptor for token refresh. Fresh is built on top of package:dio and manages authentication tokens transparently.
http_methods
👍 10 ⬇️ 116.1K
Dart 3 compatibleMaintenance Status: Average
List of all HTTP methods registered with IANA as list of strings, and metadata such as whether a method idempotent.
api_cache_manager
👍 148 ⬇️ 1.1K
Dart 3 compatibleMaintenance Status: Poor
API Cache Manager is a Utility package built with Flutter SDK and SQLite Package. This package will help to make your Rest API store in the local db for offline access.
uno
👍 140 ⬇️ 315
Dart 3 compatibleMaintenance Status: Good
Uno is a multiplatform HTTP client, based on Axios and built following the Clean Dart approach by the Flutterando Community.
![requests_inspector Card Image](/media-cards/requests_inspector.png)
requests_inspector
👍 135 ⬇️ 3.5K
Dart 3 compatibleMaintenance Status: Good
A Flutter package for logging REST-APIs and GraphQL requests and accessing it by Shaking your phone to get the RequestsInspector widget on your screen.
chaleno
👍 133 ⬇️ 287
Dart 3 compatibleMaintenance Status: Good
A package to web scraping data from websites easily and faster using less code lines.
fetch_client
👍 39 ⬇️ 71.8K
Dart 3 compatibleMaintenance Status: Good
Client for http package based on Fetch API, enables streamed and cancelable requests on web and more.
cupertino_http
👍 61 ⬇️ 50.1K
Dart 3 compatibleMaintenance Status: Good
A macOS/iOS Flutter plugin that provides access to the Foundation URL Loading System.
multicast_dns
👍 94 ⬇️ 17K
Dart 3 compatibleMaintenance Status: Good
Dart package for performing mDNS queries (e.g. Bonjour, Avahi).
webview_cookie_manager
👍 79 ⬇️ 25.2K
Dart 3 compatibleMaintenance Status: Poor
Have you been turned into a cookie management problem? This package can help. It has all of the cookie management functionality you have been looking for.
metadata_fetch
👍 102 ⬇️ 3.6K
Dart 3 compatibleMaintenance Status: Good
A dart library for extracting metadata on web pages such as OpenGraph, Meta, Twitter Cards, and Structured Data (Json-LD)
requests
👍 102 ⬇️ 1.6K
Dart 3 compatibleMaintenance Status: Poor
a flutter library that helps with http requests and stored cookies
qs_dart
👍 8 ⬇️ 79.6K
Dart 3 compatibleMaintenance Status: Good
A query string encoding and decoding library for Dart. Ported from qs for JavaScript.
fetch_api
👍 10 ⬇️ 73.3K
Dart 3 compatibleMaintenance Status: Good
JavaScript bindings for Fetch API, flexible HTTP requests, redirects, streaming and more.
nock
👍 23 ⬇️ 59.7K
Dart 3 compatibleMaintenance Status: Average
HTTP requests mocking library for dart and flutter. Test your application in isolation.
cronet_http
👍 58 ⬇️ 29.6K
Dart 3 compatibleMaintenance Status: Good
An Android Flutter plugin that provides access to the Cronet HTTP client.
get_ip_address
👍 50 ⬇️ 21.7K
Dart 3 compatibleMaintenance Status: Good
A package to get the ip address of the current device. Uses https://api64.ipify.org to get the system IP.
chuck_interceptor
👍 69 ⬇️ 4.9K
Dart 3 compatibleMaintenance Status: Good
Chuck is an HTTP Inspector tool which helps debugging http requests. It catches and stores http requests and responses, which can be viewed via simple UI.
ua_client_hints
👍 47 ⬇️ 22.2K
Dart 3 compatibleMaintenance Status: Good
Provide User-Agent Client Hints to Flutter.
shelf_hotreload
👍 53 ⬇️ 14.1K
Dart 3 compatibleMaintenance Status: Good
Wrapper to easily enable hot-reload for shelf applications.
native_dio_adapter
👍 43 ⬇️ 22.5K
Dart 3 compatibleMaintenance Status: Good
A client for dio which makes use of cupertino_http and cronet_http to delegate HTTP requests to the native platform.
shelf_multipart
👍 30 ⬇️ 31.6K
Dart 3 compatibleMaintenance Status: Good
shelf_multipart parses multipart and form-data requests for shelf handlers.
uri_parser
👍 0 ⬇️ 52.7K
Dart 3 compatibleMaintenance Status: Good
A minimal & safe utility to parse URIs.
rhttp
👍 58 ⬇️ 2.6K
Dart 3 compatibleMaintenance Status: Good
Make HTTP requests using Rust for Flutter developers. It uses FFI to call Rust functions from Dart. On the Rust side, it uses reqwest to make HTTP requests.
webdav_client
👍 58 ⬇️ 1.4K
Dart 3 compatibleMaintenance Status: Good
A simple WebDAV client that supports some common methods.
curl_logger_dio_interceptor
👍 31 ⬇️ 19.4K
Dart 3 compatibleMaintenance Status: Average
Get your http requests printed as curl command in your terminal. Share them easily with your colleagues and import them in Postman!
shelf_cors_headers
👍 38 ⬇️ 13.1K
Dart 3 compatibleMaintenance Status: Average
CORS headers middleware for Shelf.
v2ray
👍 51 ⬇️ 24
Dart 3 compatibleMaintenance Status: Average
V2ray flutter client package.
![network_logger Card Image](/media-cards/network_logger.png)
network_logger
👍 43 ⬇️ 3.4K
Dart 3 compatibleMaintenance Status: Average
Network logger with well designed user interface to inspect network traffic logs. Included with Dio interceptor.
dio_http_formatter
👍 44 ⬇️ 2.5K
Dart 3 compatibleMaintenance Status: Good
A Dio interceptor for pretty printing the HTTP request/response to be printed in the console for easier debugging
http_proxy
👍 33 ⬇️ 11K
Dart 3 compatibleMaintenance Status: Good
http proxy plugin,get and set http proxy automatically.This package help you to use proxy tools.
network_tools
👍 43 ⬇️ 1.9K
Dart 3 compatibleMaintenance Status: Good
Networking Tools library which can help you discover open ports, devices on subnet and many other things.
http_profile
👍 4 ⬇️ 34.3K
Dart 3 compatibleMaintenance Status: Good
A library used by HTTP client authors to integrate with the DevTools Network View.
auth_header
👍 2 ⬇️ 32.2K
Dart 3 compatibleMaintenance Status: Poor
Utility library to parse and manipulate HTTP Authorisation header
![flutter_alice Card Image](/media-cards/flutter_alice.png)
flutter_alice
👍 32 ⬇️ 7K
Dart 3 compatibleMaintenance Status: Average
Alice is an HTTP Inspector tool which helps debugging http requests. It catches and stores http requests and responses, which can be viewed via simple UI.
native_flutter_proxy
👍 29 ⬇️ 8.4K
Dart 3 compatibleMaintenance Status: Poor
A flutter plugin to read and set network proxy info from native.
system_proxy
👍 21 ⬇️ 14.3K
Dart 3 compatibleMaintenance Status: Poor
A Flutter Plugin to get system plugin. Use to set dart HttpClient proxy for grabing requests.
modbus
👍 36 ⬇️ 240
Dart 3 compatibleMaintenance Status: Poor
Simple Modbus client library for dart. Currently only the TCP connection is supported.
json_api
👍 35 ⬇️ 1K
Dart 3 compatibleMaintenance Status: Good
A framework-agnostic implementations of JSON:API Client and Server. Supports JSON:API v1.0 (jsonapi.org)
chunked_uploader
👍 35 ⬇️ 422
Dart 3 compatibleMaintenance Status: Average
An easy-to-use package to upload files in chunks using Dio for mobile, desktop and web.
local_assets_server
👍 35 ⬇️ 2
Dart 3 compatibleMaintenance Status: Poor
HTTP Server which serves local assets
webdev_proxy
👍 5 ⬇️ 25K
Dart 3 compatibleMaintenance Status: Good
A simple HTTP proxy for webdev's serve command. Supports apps that use HTML5 routing by rewriting 404s to the root index.
flutter_icmp_ping
👍 14 ⬇️ 15.4K
Dart 3 compatibleMaintenance Status: Average
Flutter plugin that sends ICMP ECHO_REQUEST to network hosts.
dio_http_cache_lts
👍 31 ⬇️ 1.1K
Dart 3 compatibleMaintenance Status: Good
It's just a maintainance version of the dio_http_cache package to be compatible with the latest dio package
rest_api_client
👍 32 ⬇️ 289
Dart 3 compatibleMaintenance Status: Good
Abstraction for communicating with REST API in flutter projects. Incorporates exception handling and jwt with refresh token authorization.
![network_inspector Card Image](/media-cards/network_inspector.png)
network_inspector
👍 29 ⬇️ 2.5K
Dart 3 compatibleMaintenance Status: Good
Http inspector / logger for Dio and Http package. This package would allow you to log every Http request, response, and error from Dio & Http.
dio_refresh_bot
👍 30 ⬇️ 186
Dart 3 compatibleMaintenance Status: Good
Dio interceptor which makes refresh token mechanism simple, flexible and reactive.
http_client
👍 15 ⬇️ 11.8K
Dart 3 compatibleMaintenance Status: Average
A platform-independent HTTP client API supporting browser, console, and curl (for SOCKS proxy).
dio_retry_plus
👍 28 ⬇️ 249
Dart 3 compatibleMaintenance Status: Good
A plugin for dio that retries failed requests.
lehttp_overrides
👍 24 ⬇️ 3.1K
Dart 3 compatibleMaintenance Status: Average
A Flutter package to resolve Let's Encrypt SSL certificate problems with Android 7.1.1 and below
tus_client
👍 25 ⬇️ 452
Dart 3 compatibleMaintenance Status: Poor
A tus client for dart allowing resumable uploads using the tus protocol.
flutter_query
👍 24 ⬇️ 83
Dart 3 compatibleMaintenance Status: Average
Widgets that help state management of asynchronous operations such as sending HTTP requests, getting the response, and caching the result.
api_manager
👍 24 ⬇️ 59
Dart 3 compatibleMaintenance Status: Good
A simple package for manage api request easily with the help of flutter dio api.
flutter_user_agentx
👍 23 ⬇️ 105
Dart 3 compatibleMaintenance Status: Poor
Retrieve device and webview user agent strings for Android and iOS devices. It also provides you with simple building blocks for generating your own user agent string.
retry_bot
👍 23 ⬇️ 41
Dart 3 compatibleMaintenance Status: Poor
Dio interceptor Retry which makes retrying API Call When getting a timeout.
pretty_http_logger
👍 18 ⬇️ 2.8K
Dart 3 compatibleMaintenance Status: Good
Pretty Http Logger is a middleware logger library for Dart HTTP library that logs network calls in a pretty, easy-to-read format and supports intercepting network calls.
http_services
👍 12 ⬇️ 116
Dart 3 compatibleMaintenance Status: Good
A Dart package based on Dio that provides base models to handle HTTP services requests.
flutter_mdns_plugin
👍 10 ⬇️ 218
Dart 3 compatibleMaintenance Status: Poor
Flutter mDNS plugin
brick_offline_first_with_rest
👍 7 ⬇️ 1.9K
Dart 3 compatibleMaintenance Status: Good
A Brick domain that routes data fetching through local providers before a REST providers.
http_file_uploader
👍 8 ⬇️ 49
Dart 3 compatibleMaintenance Status: Good
A en_file_uploader plugin to handle the file upload using http package. Provides the capability to upload a file in chunks with built-in retry handling.
fetchx
👍 6 ⬇️ 26
Dart 3 compatibleMaintenance Status: Poor
Fetchx is a simple, fast, and secure HTTP client for Dart. It leverages extensions to allow using url-like strings to make http requests.
dio_file_uploader
👍 4 ⬇️ 29
Dart 3 compatibleMaintenance Status: Good
A en_file_uploader plugin to handle the file upload using dio package. Provides the capability to upload a file in chunks with built-in retry handling.
edge_http_client
👍 3 ⬇️ 2
Dart 3 compatibleMaintenance Status: Average
A http package implementation for Dart Edge.
faye_dart
👍 3 ⬇️ 2
Dart 3 compatibleMaintenance Status: Poor
Faye is a publish/subscribe messaging protocol that is built on the Bayeux protocol, a messaging system utilized for transporting asynchronous messages over HTTP.
jh_services
👍 2 ⬇️ 88
Dart 3 compatibleMaintenance Status: Good
A lightweight service package for Flutter to handle network requests, local storage, and connectivity seamlessly with best practices.
shelf_session
👍 2 ⬇️ 38
Dart 3 compatibleMaintenance Status: Poor
The shelf_session is the implementation of cookiesMiddleware and sessionMiddleware for shelf.
instabug_http_client
👍 1 ⬇️ 505
Dart 3 compatibleMaintenance Status: Good
This package is an add on to instabug_flutter. It intercepts any requests performed with http Package and sends them to the report that will be sent to the dashboard.
curl_parser
👍 1 ⬇️ 141
Dart 3 compatibleMaintenance Status: Good
Parse cURL command to Dart object and convert Dart object to cURL command.
jaguar_resty
👍 0 ⬇️ 160
Dart 3 compatibleMaintenance Status: Poor
Build fluent functional REST clients. Supports interceptors, cookies, multipart forms and authenticators.
flowder
👍 127 ⬇️ 194
Maintenance Status: Poor
Persistent file downloader manager, start, pause, resume, cancel your download.
dio_interceptors
👍 14 ⬇️ 10
Maintenance Status: Poor
Implements interceptors for you use on Dio package.