Metadata-Version: 2.4
Name: pl4pm
Version: 0.2.1
Summary: Polars for Process Mining — high-performance process mining library
Author: pl4pm contributors
License: MIT
Requires-Python: >=3.10
Description-Content-Type: text/markdown
Requires-Dist: polars>=1.0.0
Requires-Dist: pandas>=2.0.0
Requires-Dist: pm4py>=2.7.0
Requires-Dist: scipy>=1.10.0
Requires-Dist: lxml>=5.0.0
Requires-Dist: numpy>=2.0.0
Requires-Dist: tqdm>=4.60.0
Provides-Extra: viz
Requires-Dist: graphviz>=0.20; extra == "viz"
Requires-Dist: matplotlib>=3.8; extra == "viz"
Requires-Dist: pyvis>=0.3; extra == "viz"
Requires-Dist: plotly>=5.0; extra == "viz"
Provides-Extra: nx
Requires-Dist: networkx>=3.0; extra == "nx"
Provides-Extra: all
Requires-Dist: graphviz>=0.20; extra == "all"
Requires-Dist: matplotlib>=3.8; extra == "all"
Requires-Dist: pyvis>=0.3; extra == "all"
Requires-Dist: plotly>=5.0; extra == "all"
Requires-Dist: networkx>=3.0; extra == "all"
Provides-Extra: dev
Requires-Dist: pytest>=8.0; extra == "dev"
Requires-Dist: ruff>=0.4; extra == "dev"

# pl4pm

`pl4pm` is a Python process mining library built around Polars.

## Install

```bash
pip install .
```

For editable development:

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

Optional visualization and graph extras:

```bash
pip install ".[viz,nx]"
```

## Publish to PyPI

Create a local `.env` from `.env.example` and place your token there.

Publish to real PyPI:

```bash
/root/project/pm4py_polars/PL4PM_project/.venv/bin/python scripts/publish_pypi.py --repository pypi
```

Publish to TestPyPI:

```bash
/root/project/pm4py_polars/PL4PM_project/.venv/bin/python scripts/publish_pypi.py --repository testpypi
```

## Quick start

```python
import pl4pm

log = pl4pm.read_csv(
    "event_log.csv",
    case_id_col="case:concept:name",
    activity_col="concept:name",
    timestamp_col="time:timestamp",
)

dfg = pl4pm.discover_dfg(log)
pl4pm.save_vis_dfg(*dfg, "dfg.png")
```
