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.0.tar.gz (14.8 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.0-py3-none-any.whl (20.6 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: greek_parcel_cli-0.2.0.tar.gz
  • Upload date:
  • Size: 14.8 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.0.tar.gz
Algorithm Hash digest
SHA256 ad7c51d7584e1fa90aa89c99b79e11ab546b8acd4a0800a8dfb81596990f4481
MD5 e3747a1b11ba42377da192d9c9da9261
BLAKE2b-256 166115bfbbcad41052e94327f360e705e4c49fd573082aa3035cdedadb989c20

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for greek_parcel_cli-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 fd1d83ae3ce661d06734f735d426fbd0030d4b3a46ad13f80d30015f6ce7d72f
MD5 916317ea291899cd8aae503447ec807f
BLAKE2b-256 d4d05c2ae516f990dcfa520f6779453c36801e7e88e45faa3cc158fef379eeec

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