Metadata-Version: 2.4
Name: cartograph-python
Version: 0.2.0
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Science/Research
Classifier: Programming Language :: Rust
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: Scientific/Engineering :: Information Analysis
Requires-Dist: networkx>=3.0 ; extra == 'all'
Requires-Dist: python-igraph>=0.10 ; extra == 'all'
Requires-Dist: polars>=0.20 ; extra == 'all'
Requires-Dist: pandas>=2.0 ; extra == 'all'
Requires-Dist: pyarrow>=14.0 ; extra == 'all'
Requires-Dist: pytest>=8.0 ; extra == 'dev'
Requires-Dist: mypy>=1.9 ; extra == 'dev'
Requires-Dist: pyright>=1.1 ; extra == 'dev'
Requires-Dist: ruff>=0.4 ; extra == 'dev'
Requires-Dist: python-igraph>=0.10 ; extra == 'igraph'
Requires-Dist: networkx>=3.0 ; extra == 'networkx'
Requires-Dist: pandas>=2.0 ; extra == 'pandas'
Requires-Dist: pyarrow>=14.0 ; extra == 'pandas'
Requires-Dist: polars>=0.20 ; extra == 'polars'
Provides-Extra: all
Provides-Extra: dev
Provides-Extra: igraph
Provides-Extra: networkx
Provides-Extra: pandas
Provides-Extra: polars
Summary: Ultra-Fast Native AST Code Graph & Graph Data Science SDK
Keywords: code-graph,ast,pyo3,networkx,polars,ai-agents,static-analysis
Author: Pankaj Redekar
License: MIT OR Apache-2.0
Requires-Python: >=3.8
Description-Content-Type: text/markdown; charset=UTF-8; variant=GFM
Project-URL: Bug Tracker, https://github.com/PankajRedekar/cartograph/issues
Project-URL: Documentation, https://github.com/PankajRedekar/cartograph#readme
Project-URL: Homepage, https://github.com/PankajRedekar/cartograph
Project-URL: Repository, https://github.com/PankajRedekar/cartograph

# cartograph-python

> **Ultra-Fast Native AST Code Graph & Graph Data Science SDK**

`cartograph-python` is the official Python SDK and high-performance PyO3 native extension for Cartograph. It provides sub-millisecond AST code graph queries, blast-radius impact analysis, zero-copy Apache Arrow exports to Polars & Pandas, and seamless conversion to NetworkX & igraph.

## Installation

```bash
# Core SDK
pip install cartograph-python

# With all data science dependencies
pip install "cartograph-python[all]"

# Or specific extras:
pip install "cartograph-python[polars]"
pip install "cartograph-python[networkx]"
pip install "cartograph-python[igraph]"
pip install "cartograph-python[pandas]"
```

## Quickstart

```python
import cartograph

# Open indexed repository code graph
with cartograph.open() as cg:
    # 1. Locate symbol definition & callers
    res = cg.locate("OrderService")
    print(res)

    # 2. Blast-radius impact analysis
    impact = cg.impact("OrderService")
    print(f"Risk score: {impact.risk_score}, dependents: {len(impact.affected_dependents)}")

    # 3. Export to NetworkX DiGraph
    G = cg.to_networkx()

    # 4. Zero-copy export to Polars DataFrame
    df = cg.nodes_dataframe(engine="polars")
    print(df.head())
```

## License

MIT OR Apache-2.0

