Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature request: Plugins API #132

Open
axet opened this issue Feb 16, 2024 · 0 comments
Open

Feature request: Plugins API #132

axet opened this issue Feb 16, 2024 · 0 comments

Comments

@axet
Copy link

axet commented Feb 16, 2024

Hello!

Project missing good extendable plugins API.

  1. C++ API dynamically loading libraries
  2. Python dynamically loading libraries
  3. shell/exec scripts (wget, curl, aria2)

API could support different plugins coverage (from simple request, up to detailed download information):

  1. Simple download API (ftp/http)
    1.1) Basic retrieval API
    1.2) Progress API
    1.3) Multi-threading/per thread information API
  2. Torrent engines
  3. Video hosting

Simple download API can support only two arguments / interfaces: url/hash info, download completed.

Extended download API can support download progress information, even more complex API can support information per thread / download including downloading information like ranges, peer info.

Adding API can increase durability of the project by extending it via external plugins. For example I would like to have option to replace build-in youtube download functionality with youtube-dl python script or yt-dl. If for some reason build-in engine fails.

Linux is missing good reliable download manager with good UI. I hope to see more details on download items, download thread information, download block map, error/info loging per download thread, protocol details (ftp, http version, torrent details, video quality, http range) etc. Like most modern windows download manger do.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant