Skip to content

coci/shivan

Repository files navigation

Shivan Version 1.0 Python 3.8 GNU 3

Shivan is a lightweight download manager that have been written in python 🐍. Shivan supports multi-part downloading method.

Getting Started

1. Configuring

you can configure Shivan in two terms :

  1. where to save file after Shivan downloads the file
  2. how much Shivan must split file ( in range 1-8 parts)

To configure enter:

$ python3 main.py --config

Tip: Configuration steps will ask 2 questions and if you hit enter and leave it empty in any of step , it acts in:

  1. if step 1 leaved blank : save file in root of project
  2. if step 2 leaved blank : split file in 8 parts

2. Usage

2.1. Install Requirements
$ pip install -r requirements.txt
2.2. Run-up
$ python3 main.py <url>

Contribution

I appreciate any PR or feedbacks to improve Shivan. You may ask "why i made this"?

Answer: I'm very curious about how donwload managers work because of that i wrote Shivan :)

ToDo

  • fix final file name
  • multi-thread download
  • dynamic file extension
  • parts name be same as a file name
  • first show information about file
  • add config file for defualt setting
  • dynamic path
  • url format validation
  • check url is downloadable

Short-term

  • Dynamic number of part
  • Check if all parts downloaded then concate to final_file
  • Read from clipboard
  • Turn it to pypi package
  • Create setup.py installation

Long-term

  • MacOS app
  • Linux app