/dart_dloader

A simple and versatile library for downloading files with support for adapters including dio, curl, wget, powershell, aria2 and axel. Feel free to create new adapters.

Primary LanguageDartBSD 3-Clause "New" or "Revised" LicenseBSD-3-Clause

A simple and versatile library for downloading files with support for adapters including dio, curl, wget, powershell, aria2 and axel. Feel free to create new adapters.

Getting started

dart pub add dloader

Usage

import 'dart:io';
import 'package:dloader/dloader.dart';

void main() {
  final dloader = Dloader(CurlAdapter());

  final url = 'https://example.com/file.zip';
  final destination = File('/path/to/file.zip');

  dloader
      .download(
          url: url,
          destination: destination,
          onProgress: (progress) {
            print('Percent complete: ${progress['percentComplete']}%');
            print('Bytes downloaded: ${progress['downloaded']}');
            print('Bytes total size: ${progress['totalSize']}');
            print('Speed: ${progress['speed']}');
            print('Time remaining: ${progress['timeRemaining']}');
          })
      .then((File file) {
    print('File downloaded to: ${file.path}');
  }).catchError((e) {
    print('Error downloading file: $e');
  });
}

LICENSE

BSD 3-Clause License

CONTRIBUTE

If you have an idea for a new feature or have found a bug, just do a pull request (PR).