Skip to content

Latest commit

Β 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸš€ AriaTiz (ATZ) - The Advanced Sharp & Fast CLI Downloader

AriaTiz Logo
**A Modern, Highly Optimized, and Interactive Terminal-based Downloader powered by Aria2c**

Python Version Aria2c Rich UI License

AriaTiz blends the immense downloading power of Aria2c with a beautiful, intuitive, and interactive Glassmorphism-inspired command-line interface. Built for power users, loved by everyone.

πŸ“– Overview

AriaTiz (derived from the Persian word 'Tiz' meaning Sharp and Fast) is an advanced CLI downloader that eliminates the complexity of native Aria2c while maximizing its power. Whether you are downloading a single file, fetching hundreds of links from a text file, or simply dropping a .torrent into the terminal, AriaTiz handles it elegantly. Featuring an interactive TUI (Terminal User Interface), intelligent queue management, and ultra-smooth animated progress bars, it turns downloading into a visually pleasing experience without compromising hardware resources.


✨ Advanced Features

  • πŸ“‹ Clipboard Auto-Detect: Automatically senses downloadable URLs from your clipboard upon launch.
  • πŸ–±οΈ Drag & Drop Support: Drop any .txt or .torrent file directly into the terminal to start processing.
  • πŸŽ›οΈ Interactive TUI Configuration: A fully keyboard-navigable settings menu to control connections, speed limits, and output paths.
  • πŸ“Š Stunning Animated Dashboard: Real-time, multi-threaded progress bars colored dynamically using the Rich library.
  • 🚦 Smart Queue Management: Drop 200+ links, and AriaTiz will process them sequentially based on your configured limits, preventing system freezes.
  • ⚑ Hardware Optimized: Extremely lightweight execution with low CPU and memory footprint, utilizing Aria2c Daemon/RPC.
  • 🌍 Cross-Platform Protection: Works flawlessly across Windows (CMD/PowerShell), Linux, and macOS terminals.

πŸ—οΈ System Architecture & Workflow

The following flowchart demonstrates how AriaTiz seamlessly routes user inputs through the Python core and communicates with the background Aria2c daemon.

graph TD
    A[Terminal / User Input] -->|Drag & Drop / CLI Args / TUI| B(PyFlow Core Engine)
    B -->|Configuration Parsing| C{Queue & Thread Manager}
    C -->|JSON-RPC Connection| D((Aria2c Daemon))
    D -->|Multi-connection Download| E[(Local Disk)]
    D -->|Real-time Metrics| F(Rich UI Renderer)
    F -->|Animated Progress Bars| A
    
    style A fill:#2b2b2b,stroke:#00E5FF,stroke-width:2px,color:#fff
    style B fill:#3D5AFE,stroke:#fff,stroke-width:2px,color:#fff
    style D fill:#00C853,stroke:#fff,stroke-width:2px,color:#fff
    style F fill:#D500F9,stroke:#fff,stroke-width:2px,color:#fff

Loading

βš™οΈ Backend Power (Technologies Used)

This project is built standing on the shoulders of giants:

  • Python 3: The core development language.
  • Aria2c: The ultra-fast multi-protocol, multi-source download utility acting as the backend daemon.
  • Rich & Questionary: For rendering beautiful terminal styling and interactive menus.
  • Inno Setup & PyInstaller: Used for packing the tool into a standalone, lightning-fast .exe Windows installer.

πŸ“Έ Screenshots / Preview

(Place your application terminal recordings or screenshots inside an assets/ folder in your repository to display them here)

πŸ“± Main Menu & Layout πŸ“Š Live Progress Bar
AriaTiz_Home AriaTiz_Pogrash
βš™οΈ Control Panel (--settings) πŸ“ Help Summary (--help)
AriaTin_Setting AriaTiz_HELP

πŸš€ Installation Guide

AriaTiz offers two ways to install: for standard Windows users (Installer) and for Developers (Python source).

Method 1: Easy Windows Installer (Recommended)

  1. Navigate to the Releases tab on this repository.
  2. Download the AriaTiz_Setup.exe file.
  3. Run the installer. It automatically adds both ariatiz and the shorthand atz to your system environment PATH.
  4. Open a new terminal and type:
    atz -h

Method 2: Python / Developer Installation

If you want to run it via Python or modify the code:

# 1. Clone the repository
$ git clone https://github.com/YourUsername/AriaTiz.git

# 2. Navigate to the directory
$ cd AriaTiz

# 3. Create a virtual environment & activate it
$ python -m venv venv 
$ source venv/bin/activate    # For Linux/macOS
$ .\venv\Scripts\activate     # For Windows

# 4. Install requirements
$ pip install -r requirements.txt

# 5. Run the tool
$ pip install -e .  

$ python3 ./ariatiz/__main__.py -h # For Linux/macOS
$ python .\ariatiz\__main__.py -h # For Windows

πŸ’» Usage & Syntax Examples

AriaTiz is designed to be highly intuitive. Here are common ways to use it:

1. Launch Interactive Mode:

atz

(Automatically detects clipboard links or opens the main configuration menu).

2. Download a Single File:

atz -u https://example.com/largefile.zip

3. Batch Download from a Text or Torrent File:

atz -f my_links.txt
atz -f ubuntu.torrent

4. Open TUI File Browser for Selection:

atz -b

πŸ› οΈ Advanced Override Parameters

You can easily override your default configurations on-the-fly using these parameters:

Flag Parameter Description Example Usage
-u --url Provide a direct URL to download. atz -u "link"
-f --file Path to a .txt, .json, or .torrent file. atz -f "data.txt"
-o --output Override the default download save directory. atz -u "link" -o "D:\Movies"
-c --connections Set maximum connections per server (1-16). atz -u "link" -c 16
-s --speed Lock the maximum download speed limit. atz -f "data.txt" -s 2M
-i --interactive Scan current directory and select files via TUI. atz -i

πŸ“Œ Quick Tips for Best Performance

  • Queueing: If your .txt file has 200 links, do not worry. AriaTiz reads your global configuration (e.g., Max Concurrent Downloads: 5) and schedules them seamlessly without freezing your PC.
  • Drag & Drop: No need to type paths! Just type atz -f , drag your file into the terminal, and hit Enter.

🀝 Contributing

This project thrives on community collaboration! If you have ideas to make AriaTiz even faster, more beautiful, or feature-rich:

  1. Fork the Project.
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature).
  3. Commit your Changes (git commit -m 'Add some AmazingFeature').
  4. Push to the Branch (git push origin feature/AmazingFeature).
  5. Open a Pull Request.

πŸ‘¨β€πŸ’» Developer & Credits

  • Lead Developer: Developed and maintained by Mohammad Mizan (Mohammad Mijanur Rahman) from Tongi, Gazipur, Bangladesh. Passionate about Python automation, GUI design, and creating tools that empower developers.
  • Credits:
  • Massive thanks to the developers of Aria2 for the incredible backend engine.
  • UI magic powered by Rich (Will McGugan).
  • Cross-platform compilation made possible by PyInstaller and Inno Setup.

πŸ“„ License

This project is open-source and distributed under the MIT License. See the LICENSE file in the root directory for more information.

Releases

Packages

Contributors

Languages