Metadata-Version: 2.4
Name: tamil-toolkit
Version: 0.1.0a1
Classifier: Development Status :: 3 - Alpha
Classifier: Programming Language :: Rust
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: Implementation :: CPython
License-File: LICENSE
License-File: THIRD_PARTY_NOTICES.md
License-File: THIRD_PARTY_LICENSES.txt
Summary: Thin Python bindings for the Rust Tamil toolkit
Keywords: tamil,unicode,collation,numerals,bamini
License-Expression: MIT
Requires-Python: >=3.11
Description-Content-Type: text/markdown; charset=UTF-8; variant=GFM
Project-URL: Documentation, https://github.com/abishtakan/tamil-toolkit#readme
Project-URL: Issues, https://github.com/abishtakan/tamil-toolkit/issues
Project-URL: Repository, https://github.com/abishtakan/tamil-toolkit

# tamil-toolkit for Python

The experimental MIT-licensed `0.1.0a1` alpha is being prepared; no registry
upload has occurred. Once published, install with
`python -m pip install tamil-toolkit==0.1.0a1`, then import as
`import tamil_toolkit as tamil`. Development builds use `just sync-bindings`.
The package delegates all linguistic behavior to Rust through PyO3.

The SDK includes Unicode normalization and tailored Ezhuthu segmentation,
Mei/Uyir composition, Agara collation, bounded TN/SL integer/currency words,
exact fractions, Gregorian dates, and explicit Bamini conversion. Other
linguistic modules remain planned. Read the bounded contracts at
https://github.com/abishtakan/tamil-toolkit/tree/HEAD/docs/specs.

```python
import tamil_toolkit as tamil

assert tamil.format_fraction(2, 4) == "1/2"
assert tamil.format_currency(102550, "LKR", "SL") == "LKR 1,025.50"
date = tamil.format_date(2024, 2, 29, "SL", "full", "tamil")
```

The alpha targets GIL-enabled CPython 3.11+ through abi3 wheels. Linux x64, Windows x64,
and macOS arm64 wheels require their artifact CI jobs to pass before release.
Source builds require Rust 1.85+. APIs may change before stability.
See LICENSE, THIRD_PARTY_NOTICES.md, and bundled dependency license notices.

Collation APIs: `compare(left, right)`, `sort_words(words)`, `sort_key(text)`,
and `search_key(text)`. Keys are numeric arrays for the versioned `agara-v1`
profile; compare arrays lexicographically and retain the version with indexes.
Sorting preserves original text and canonical ties. See the linked specifications.

