A React Native library for efficient HTTP file transfers, supporting downloads, uploads, and multipart uploads with progress tracking.
react-native-blob-courier is a React Native library for efficiently downloading and uploading files (blobs) over HTTP. It provides a streamlined API for handling file transfers with features like progress tracking, multipart uploads, and Android Download Manager integration. The library solves the need for a reliable, focused file transfer solution in React Native apps, replacing broader but more complex alternatives.
React Native developers who need to handle file downloads or uploads in their mobile applications, especially those requiring progress tracking, cancellation, or platform-specific optimizations.
Developers choose react-native-blob-courier for its focused scope on HTTP file transfers, clean TypeScript API, and thoughtful features like fluent configuration and Android Download Manager support. It avoids unnecessary complexity while providing essential transfer capabilities.
Use this library to efficiently download and upload blobs in React Native.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Provides configurable HTTP methods, headers, and MIME types for downloading and uploading files, with built-in support for progress tracking via onProgress callbacks.
Leverages Android's built-in download manager for managed background downloads, as shown in the example with useDownloadManager: true, enabling notifications and system-level handling.
Supports multipart uploads with mixed data types (strings and files) and preserves part order, though it requires using Symbol.for for key ordering to avoid JavaScript quirks.
Offers a fluent interface that improves readability and safety, along with a TypeScript-based API for robust development, as emphasized in the library's philosophy.
Android Download Manager integration is not available on iOS, creating an asymmetry in capabilities and limiting background download options for cross-platform apps.
Preserving order in multipart uploads requires wrapping keys in Symbol.for, a non-standard workaround that adds complexity and potential for developer error.
Requires React Native >= 0.76.x, Android >= 24, iOS >= 13.0, and JDK >= 17, which can hinder adoption in legacy or older projects.
react-native-blob-courier is an open-source alternative to the following products: