Metadata-Version: 2.4
Name: flowmine-studio
Version: 0.1.0
Summary: Process mining with a web UI: upload an event log or connect a database, get process maps, metrics and automatic insights — pip install, one command
Author: FlowMine Contributors
License: AGPL-3.0-or-later
Keywords: process mining,event log,bpm,dfg,process discovery,audit
Classifier: Development Status :: 4 - Beta
Classifier: License :: OSI Approved :: GNU Affero General Public License v3 or later (AGPLv3+)
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Operating System :: OS Independent
Classifier: Intended Audience :: Financial and Insurance Industry
Classifier: Topic :: Office/Business
Classifier: Framework :: FastAPI
Requires-Python: >=3.11
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: fastapi<1,>=0.115
Requires-Dist: uvicorn<1,>=0.30
Requires-Dist: sqlalchemy<3,>=2.0.30
Requires-Dist: pydantic<3,>=2.7
Requires-Dist: pydantic-settings<3,>=2.2
Requires-Dist: platformdirs<5,>=4
Requires-Dist: structlog<26,>=24.1
Requires-Dist: cryptography<47,>=42
Requires-Dist: bcrypt<5,>=4.1
Requires-Dist: PyJWT<3,>=2.8
Requires-Dist: pandas<3,>=2.2
Requires-Dist: pyarrow<22,>=16
Requires-Dist: openpyxl<4,>=3.1
Requires-Dist: python-multipart<1,>=0.0.9
Requires-Dist: defusedxml<1,>=0.7
Requires-Dist: plotly<7,>=5.23
Requires-Dist: flowmine<2,>=1.1.0
Requires-Dist: psycopg[binary]<4,>=3.1
Requires-Dist: oracledb<4,>=2
Provides-Extra: dev
Requires-Dist: pytest<9,>=8; extra == "dev"
Requires-Dist: pytest-cov<8,>=5; extra == "dev"
Requires-Dist: pytest-timeout<3,>=2; extra == "dev"
Requires-Dist: httpx<1,>=0.27; extra == "dev"
Requires-Dist: ruff<1,>=0.5; extra == "dev"
Requires-Dist: mypy<2,>=1.10; extra == "dev"
Requires-Dist: PyYAML<7,>=6; extra == "dev"
Dynamic: license-file

# FlowMine Studio

Process mining with a real UI — installed with pip, running in one command.

```bash
pip install flowmine-studio
flowmine-studio
```

That's it. Your browser opens http://localhost:8080 — sign in with **admin / admin**.
A demo event log (a loan-application process, 5,000 cases) is already analyzed:
open the demo project and you'll see the process map, metrics, charts, and
automatic insights with estimated financial effects.

## What it does

- **Upload an event log** — CSV, Excel, Parquet, or XES — map the case / activity /
  timestamp columns in a guided wizard, and get a full analysis in minutes.
- **Connect to a database** — PostgreSQL / Greenplum, Oracle, or any SQLAlchemy URL —
  point at a table or write a query, and mine directly from the source.
- **Process map** — DFG, Heuristic, Alpha and Alpha+ miners, with Disco-style
  activity/path sliders, frequency and duration heat, and PNG export.
- **Metrics** — activity, transition, trace, case and resource tables, sortable and
  exportable to CSV.
- **AutoInsights** — bottlenecks, loops, ping-pongs, growing durations and
  irregularities found automatically, ranked by anomaly level, with financial
  effect estimates.
- **Charts** — case duration distribution, activity frequency, Pareto, Sankey,
  Gantt, and time-intensity heatmap.
- **Users and roles** — administrator / analyst / viewer, for a shared instance.

The interface is bilingual (Russian / English). The engine is the
[flowmine](https://pypi.org/project/flowmine/) library.

## Where your data lives

Everything is local: an SQLite database and analysis artifacts in your user data
directory (shown at startup). Nothing leaves your machine — no telemetry, no
external services.

## Options

```
flowmine-studio --port 8888        # another port
flowmine-studio --host 0.0.0.0     # listen on the network (change the admin password!)
flowmine-studio --no-browser       # don't open the browser
flowmine-studio --no-seed          # skip the demo data
```

Environment variables (`STUDIO_*`) override any setting — see
`flowmine_studio/api/config.py`.

## Development

```bash
pip install -e .[dev]
make test          # pytest (SQLite; Postgres connector tests auto-skip without a server)
make lint
make dev-api       # backend on :8080
make dev-ui        # UI dev server on :5173 (proxies /api)
make ui-mock       # UI with built-in demo mocks, no backend needed
```

The UI is a React app in `ui/`; `npm run build` outputs into the Python package
(`flowmine_studio/api/static/`) so the wheel ships it.

## License

AGPL-3.0-or-later. © FlowMine Contributors.
