Metadata-Version: 2.4
Name: tywrap-ir
Version: 0.1.2
Summary: Python IR extractor for tywrap: emits versioned JSON IR for Python modules
Author: tywrap contributors
Maintainer: tywrap contributors
License: MIT
Project-URL: Homepage, https://github.com/bbopen/tywrap
Project-URL: Repository, https://github.com/bbopen/tywrap
Project-URL: Documentation, https://github.com/bbopen/tywrap#readme
Project-URL: Issues, https://github.com/bbopen/tywrap/issues
Keywords: tywrap,typescript,python,bridge,code-generation,ast,ir
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Software Development :: Code Generators
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Typing :: Typed
Requires-Python: >=3.10
Description-Content-Type: text/markdown

# tywrap-ir

[![PyPI version](https://img.shields.io/pypi/v/tywrap-ir.svg)](https://pypi.org/project/tywrap-ir/)
[![Python versions](https://img.shields.io/pypi/pyversions/tywrap-ir.svg)](https://pypi.org/project/tywrap-ir/)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)

Python IR extractor for [tywrap](https://github.com/bbopen/tywrap). Emits versioned JSON IR for Python modules using inspect/typing/importlib.

## Installation

```bash
pip install tywrap-ir
```

## Usage

```bash
# Extract IR for a module
python -m tywrap_ir --module math

# Or using the CLI
tywrap-ir --module math

# Output to file
tywrap-ir --module pandas --output pandas_ir.json
```

## What is this?

This package is the Python component of tywrap, a TypeScript wrapper generator for Python libraries. It analyzes Python modules and extracts type information into a JSON intermediate representation (IR) that tywrap uses to generate TypeScript bindings.

You typically don't need to use this package directly - the `tywrap` npm package invokes it automatically during code generation.

## Requirements

- Python 3.10+

## Related

- [tywrap](https://www.npmjs.com/package/tywrap) - The main TypeScript package
- [GitHub](https://github.com/bbopen/tywrap) - Source code and issues

## License

MIT
