Metadata-Version: 2.4
Name: indic-itn
Version: 0.1.0
Summary: Inverse Text Normalization (ITN) for Indic languages
License: MIT
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.11
Description-Content-Type: text/markdown
License-File: LICENSE
Provides-Extra: dev
Requires-Dist: black>=24.0.0; extra == "dev"
Requires-Dist: mypy>=1.9.0; extra == "dev"
Requires-Dist: pre-commit>=3.6.0; extra == "dev"
Requires-Dist: pytest>=8.0.0; extra == "dev"
Requires-Dist: pytest-cov>=4.1.0; extra == "dev"
Requires-Dist: ruff>=0.3.0; extra == "dev"
Dynamic: license-file

# indic-itn

Inverse Text Normalization (ITN) for Indic languages.

## Installation

To install the package in editable mode for development:

```bash
pip install -e .
```

To install dev dependencies as well:

```bash
pip install -e ".[dev]"
```

## Usage

```python
from indic_itn import HindiITN

# Instantiate the ITN processor
itn = HindiITN()

# Normalize text (placeholder)
# text = "कक्षा दो" -> "कक्षा 2"
```

## Development and Tooling

This project uses modern tooling for maintaining code quality:

### Code Formatting and Linting

We use [Ruff](https://github.com/astral-sh/ruff) and [Black](https://github.com/psf/black) for formatting, linting, and imports sorting.

```bash
# Run Ruff lint check
ruff check .

# Run Ruff formatter check
ruff format --check .

# Run Black formatting check
black --check .
```

### Type Checking

We use [MyPy](https://github.com/python/mypy) for static type checking.

```bash
mypy src tests
```

### Running Tests

We use [Pytest](https://github.com/pytest-dev/pytest) for unit testing along with `pytest-cov` for coverage.

```bash
pytest
```

### Pre-commit Hooks

To set up pre-commit hooks:

```bash
pre-commit install
```

To run hooks on all files manually:

```bash
pre-commit run --all-files
```
