Metadata-Version: 2.4
Name: twrate
Version: 0.1.4
Author-email: narumi <toucans-cutouts0f@icloud.com>
License-File: LICENSE
Requires-Python: >=3.12
Requires-Dist: beautifulsoup4>=4.13.4
Requires-Dist: httpx>=0.28.1
Requires-Dist: loguru>=0.7.3
Requires-Dist: pydantic>=2.11.4
Requires-Dist: rich>=14.0.0
Requires-Dist: tabulate>=0.9.0
Requires-Dist: typer>=0.15.4
Description-Content-Type: text/markdown

# twrate

A Python package for querying real-time exchange rates from major Taiwanese banks.

## Overview

`twrate` provides a simple and efficient way to retrieve up-to-date currency exchange rates from Taiwanese banks. Currently, it supports the following banks:

- Bank of Taiwan (台灣銀行)
- DBS Bank Taiwan (星展銀行)
- Sinopac Bank (永豐銀行)
- E.SUN Bank (玉山銀行)

## Installation

```bash
pip install twrate
```

## Usage

### Basic Usage

```python
from twrate import query_bot_rates  # Bank of Taiwan
from twrate import query_dbs_rates  # DBS Bank

# Get exchange rates from Bank of Taiwan
bot_rates = query_bot_rates()
print(bot_rates)

# Get exchange rates from DBS Bank
dbs_rates = query_dbs_rates()
print(dbs_rates)
```

### Command-Line Interface

You can also use `twrate` directly from the command line:

```bash
# Query exchange rates for USD from all supported banks
twrate USD
```

Example output:
```
Exchange          Spot Buy    Spot Sell    Cash Buy    Cash Sell
--------------  ----------  -----------  ----------  -----------
BANK_OF_TAIWAN      30.095       30.245      29.77        30.44
DBS                 30.076       30.279      29.863       30.47
SINOPAC             30.092       30.203      29.892       30.403
ESUN                30.1         30.2        29.85        30.4
```

### Rate Information

The `Rate` object provides the following information:

- `exchange`: The bank code (e.g., "BOT" for Bank of Taiwan, "DBS" for DBS Bank)
- `source`: The source currency code
- `target`: The target currency code (always "TWD")
- `spot_buy`: The bank's buying rate for spot transactions
- `spot_sell`: The bank's selling rate for spot transactions
- `cash_buy`: The bank's buying rate for cash transactions
- `cash_sell`: The bank's selling rate for cash transactions
- `spot_mid`: A calculated property that returns the mid-rate between spot buy and sell

## License

See the [LICENSE](LICENSE) file for details.

## Contributing

Contributions are welcome! Currently, the package supports Bank of Taiwan and DBS Bank, but you can help extend the functionality to cover more Taiwanese banks.
