Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/starkdmi/download_manager
Isolated download manager with progress, cancellation, pause and resume
https://github.com/starkdmi/download_manager
dart http isolates
Last synced: about 8 hours ago
JSON representation
Isolated download manager with progress, cancellation, pause and resume
- Host: GitHub
- URL: https://github.com/starkdmi/download_manager
- Owner: starkdmi
- License: bsd-3-clause
- Created: 2022-07-05T19:07:37.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2023-06-15T18:27:01.000Z (over 1 year ago)
- Last Synced: 2023-08-09T13:47:16.607Z (about 1 year ago)
- Topics: dart, http, isolates
- Language: Dart
- Homepage: https://pub.dev/packages/isolated_download_manager
- Size: 81.1 KB
- Stars: 10
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
File download manager based on reusable isolates with progress, cancellation, pause and resume
## Features
- **Fully isolated** - create any amount of reusable isolates, all handled internally
- **Powerfull** - pause, resume, cancel, download queue and many more
- **Listen to updates** - realtime progress and failure handling
- **UI** - use ready-to-use Flutter widgets (optionally via [isolated_download_manager_flutter](https://pub.dev/packages/isolated_download_manager_flutter))
- **Pure Dart** - only `http` dependency## Getting started
Include latest version from [pub.dev](https://pub.dev/packages/isolated_download_manager) to `pubspec.yaml`
## Usage
```dart
// initialize
await DownloadManager.instance.init(isolates: 3);// download
final request = DownloadManager.instance.download(url);// listen to state changes
request.events.listen((event) { ... }// control the task
request.pause();
request.resume();
request.cancel();
```
Example full source code available at [example's directory](example/isolated_download_manager_example.dart)## Additional information
For resumable downloads [download_task](https://pub.dev/packages/download_task) package is used