Skip to main content

A CLI tool for tracking parcels from Greek courier services.

Project description

Greek Parcel CLI

A command-line interface (CLI) tool for tracking parcels from various Greek courier services. Built with Python, Typer, and Rich.

Features

  • Multi-Courier Support: Track packages from major Greek courier companies.
  • Rich Output: Beautiful terminal output with tables and status indicators.
  • JSON Output: Optional JSON output for programmatic integration (e.g., widgets, scripts).
  • Easy to Use: Simple CLI commands for quick tracking.

Supported Couriers

The following courier services are currently supported:

  • ACS (acs)
  • Courier Center (couriercenter)
  • EasyMail (easymail)
  • ELTA (elta)
  • Geniki Taxydromiki (geniki)
  • Skroutz Last Mile (skroutz)
  • Speedex (speedex)
  • BoxNow (boxnow)

Installation

Prerequisites

  • Python 3.9 or higher

Install from PyPI (Recommended)

The easiest way to install Greek Parcel CLI is using pip:

pip install greek-parcel-cli

After installation, the greek-parcel command will be available globally:

# List all supported couriers
greek-parcel list

# Track a parcel (auto-detects courier)
greek-parcel track <number>

# Track with a specific courier
greek-parcel track <number> -c <courier>

# Output as JSON (for integration with scripts/widgets)
greek-parcel track <number> --json

Install from Source

Using uv (Recommended)

  1. Clone the repository:

    git clone https://github.com/yourusername/Greek-Parcel-CLI.git
    cd Greek-Parcel-CLI
    
  2. Sync dependencies and create environment:

    uv sync
    

Using pip

  1. Clone the repository and enter the directory.
  2. Create and activate a virtual environment:
    python -m venv .venv
    # Windows
    .venv\Scripts\activate
    # Linux/macOS
    source .venv/bin/activate
    
  3. Install the package:
    pip install -e .
    

Usage

Using uv (No installation required)

You can run the tool directly without manual installation:

uv run greek-parcel list
uv run greek-parcel track <number>

After Installation

If you installed via pip or uv sync, the greek-parcel command will be available:

greek-parcel list
greek-parcel track <number>

Development

This project uses modern Python tooling.

  1. Install dependencies:

    pip install -r requirements.txt
    
  2. Run the CLI directly during development:

    python -m greek_parcel list
    python -m greek_parcel track <number>
    

Contributing

Contributions are welcome! This project supports multiple courier services, but I cannot verify that all of them work correctly without real tracking numbers.

How You Can Help

  • Share Tracking Numbers: If you have a tracking number from any supported courier that you can share (anonymized if needed), please open an issue. This helps verify that the tracking functionality works correctly.

  • Report Issues: Found a bug or a courier that's not working? Please open an issue with details about the problem.

  • Fork and Contribute: Feel free to fork the repository, make improvements, and submit a pull request. Whether it's fixing bugs, adding new features, or improving documentation, all contributions are appreciated!

Getting Started

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Make your changes
  4. Commit your changes (git commit -m 'Add some amazing feature')
  5. Push to the branch (git push origin feature/amazing-feature)
  6. Open a Pull Request

Acknowledgements

Special thanks to Daniel Pikilidis and his project Greek-Courier-API for providing the endpoints and selectors used in this project.

License

MIT License

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

greek_parcel_cli-0.2.1.tar.gz (15.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

greek_parcel_cli-0.2.1-py3-none-any.whl (21.1 kB view details)

Uploaded Python 3

File details

Details for the file greek_parcel_cli-0.2.1.tar.gz.

File metadata

  • Download URL: greek_parcel_cli-0.2.1.tar.gz
  • Upload date:
  • Size: 15.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for greek_parcel_cli-0.2.1.tar.gz
Algorithm Hash digest
SHA256 c1f8d89863023468c1eec722538e807ed547173a4d776f83603d7d792bc86ab1
MD5 faee82d614eedd65e0e1f0c9d6e031eb
BLAKE2b-256 da7f0d6a39f31f7d2690b284e4a92b3c0fc088673611c08a3421463022367ab5

See more details on using hashes here.

File details

Details for the file greek_parcel_cli-0.2.1-py3-none-any.whl.

File metadata

File hashes

Hashes for greek_parcel_cli-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 8b9b2f57a4bb8ff55d5e0c356f5a65acd208592b7a8ef6ea1f60da34a309627c
MD5 63cff4ba7c06d1a78293082e39a70a48
BLAKE2b-256 9104f8d5e1c167e53882174382030c01790446889cdce4705f1ebac85842f3e8

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page