/flowder

Primary LanguageC++BSD 3-Clause "New" or "Revised" LicenseBSD-3-Clause

Flowder

Handle your file downloads status in a more simple and easy way 💓

pubspec.yaml

dependencies:

flowder: ^0.2.0

Examples

Basic

To start using flowder, is required to do the following setup.

fina downloaderUtils = DownloaderUtils(

progressCallback: (current, total) {

final progress = (current / total) * 100;

print('Downloading: $progress');

},

file: File('$path_to_store_file/200MB.zip'),

progress: ProgressImplementation(),

onDone: () => print('Download done'),

deleteOnCancel: true,

);

final core = await Flowder.download(

'http://ipv4.download.thinkbroadband.com/200MB.zip',

downloaderUtils);

To start a new download.

core.download(url, downloaderUtils);

To resume a download.

core.resume();

To cancel a download.

core.cancel();

To pause a download.

core.pause();

Advanced

If you require an example using internet connection checker, please go to the folder advanced example. The stack used is:

  • get_it
  • injectable
  • riverpod
  • path_provider
  • connectivity_plus (this is the best plugin to check internet connection, the others were buggy 😢
  • dio.
  • Permission_handler

Currently done:

  • Download states.

  • Handle multiple downloader.

  • Advanced example using internet connection checker.

Contributing

All contributions are welcome!

If you like this project then please click on the 🌟 it'll be appreciated or if you wanna add more epic stuff you can submite your pull request and it'll be gladly accepted 🙆‍♂️

or if you have an idea please let me know with a new issue.