Metadata-Version: 2.4
Name: progressivis
Version: 0.2.0
Summary: A Progressive Steerable Analytics Toolkit
Project-URL: Homepage, https://github.com/progressivis/progressivis
Project-URL: Documentation, https://progressivis.readthedocs.io/en/latest/
Project-URL: Repository, https://github.com/progressivis/progressivis
Author-email: "INRIA, Jean-Daniel Fekete, Christian Poli" <jean-daniel.fekete@inria.fr>
License-Expression: BSD-2-Clause
License-File: LICENSE
Keywords: Progressive analytics visualization
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Science/Research
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
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 :: Scientific/Engineering :: Information Analysis
Classifier: Topic :: Scientific/Engineering :: Visualization
Requires-Python: >=3.10
Requires-Dist: boto
Requires-Dist: datasketches
Requires-Dist: fast-histogram
Requires-Dist: multipledispatch>=0.4.7
Requires-Dist: numexpr>=2.6.1
Requires-Dist: numpy
Requires-Dist: pandas>=1.2.5
Requires-Dist: pillow>=4.2.0
Requires-Dist: pyarrow>=8.0.0
Requires-Dist: pyroaring
Requires-Dist: python-dateutil>=2.6.1
Requires-Dist: pyyaml>=5.4.1
Requires-Dist: requests
Requires-Dist: s3fs
Requires-Dist: scikit-learn>=1.0.0
Requires-Dist: scipy>=0.18.1
Requires-Dist: tdigest>=0.4.1.0
Requires-Dist: typeguard
Provides-Extra: docs
Requires-Dist: graphviz; extra == 'docs'
Requires-Dist: jinja2; extra == 'docs'
Requires-Dist: myst-parser>=0.18.1; extra == 'docs'
Requires-Dist: pydata-sphinx-theme>=0.12.0; extra == 'docs'
Requires-Dist: sphinx-autodoc-typehints>=1.20.0; extra == 'docs'
Requires-Dist: sphinx-gallery>=0.11.1; extra == 'docs'
Requires-Dist: sphinx<8; extra == 'docs'
Requires-Dist: sphinxcontrib-mermaid; extra == 'docs'
Requires-Dist: sphinxcontrib-napoleon>=0.7; extra == 'docs'
Requires-Dist: sphinxemoji; extra == 'docs'
Provides-Extra: jupyter
Requires-Dist: ipyprogressivis; extra == 'jupyter'
Provides-Extra: scripts
Requires-Dist: click; extra == 'scripts'
Provides-Extra: test
Requires-Dist: duckdb; extra == 'test'
Requires-Dist: pytest; extra == 'test'
Requires-Dist: pytest-cov; extra == 'test'
Requires-Dist: rangehttpserver; extra == 'test'
Provides-Extra: typing
Requires-Dist: duckdb; extra == 'typing'
Requires-Dist: ipython; extra == 'typing'
Requires-Dist: jinja2; extra == 'typing'
Requires-Dist: mypy>=1.0.1; extra == 'typing'
Requires-Dist: numpy; extra == 'typing'
Requires-Dist: pandas-stubs; extra == 'typing'
Requires-Dist: sqlalchemy-stubs; extra == 'typing'
Requires-Dist: traits-stubs; extra == 'typing'
Requires-Dist: traittypes; extra == 'typing'
Requires-Dist: typeguard; extra == 'typing'
Requires-Dist: types-pillow; extra == 'typing'
Requires-Dist: types-pytz; extra == 'typing'
Requires-Dist: types-pyyaml; extra == 'typing'
Requires-Dist: types-requests; extra == 'typing'
Requires-Dist: types-setuptools; extra == 'typing'
Requires-Dist: types-urllib3; extra == 'typing'
Requires-Dist: typing-extensions; extra == 'typing'
Description-Content-Type: text/markdown

# ProgressiVis

[![Python Tests](https://github.com/progressivis/progressivis/actions/workflows/python.yml/badge.svg?branch=master&event=push)](https://github.com/progressivis/progressivis/actions/workflows/python.yml)
[![Documentation Status](https://readthedocs.org/projects/progressivis/badge/?version=latest)](https://progressivis.readthedocs.io/en/latest/?badge=latest)
[![linting - Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json)](https://github.com/astral-sh/ruff)
[![types - Mypy](https://img.shields.io/badge/types-Mypy-blue.svg)](https://github.com/python/mypy)
[![License](https://img.shields.io/badge/License-BSD_2--Clause-orange.svg)](https://opensource.org/licenses/BSD-2-Clause)

ProgressiVis is a Python toolkit and scientific workflow system that
implements a new [programming
paradigm](https://en.wikipedia.org/wiki/Programming_paradigm) that we
call _Progressive Analytics_ aimed at performing analytics in a
progressive way.  It allows analysts to see the progress of their
analysis and to steer it while the computation is being done. See the
[workshop paper](https://hal.inria.fr/hal-01202901).

Instead of running algorithms to completion one after the other, as
done in all existing scientific analysis systems, ProgressiVis modules
run in short batches, each batch being only allowed to run for a
specific quantum of time - typically 1 second - producing a usable
result in the end, and yielding control to the next module.  To
perform the whole computation, ProgressiVis loops over the modules as many
times as necessary to converge to a result that the analyst considers
satisfactory.

ProgressiVis relies on well-known Python libraries, such as
[numpy](http://www.numpy.org/),[scipy](http://www.scipy.org/),
[Pandas](http://pandas.pydata.org/),
and
[Scikit-Learn](http://scikit-learn.org/).

For now, ProgressiVis is mostly a proof of concept. You can find [its documentation here](https://progressivis.readthedocs.io/en/latest/).

## Live demos

Many interactive demos are available online. They will run remotely on [mybinder.org](https://mybinder.org/), so you can experiment with ProgressiVis with no need to install it locally.

[![Binder](https://mybinder.org/badge_logo.svg)](https://mybinder.org/v2/gh/progressivis/progressivis.git/stable?filepath=demos)

Click the "launch binder" image above to run the live demos on [mybinder.org](https://mybinder.org/).

**NB:** Interactive demos may take up to several minutes to build, depending on the server load.

## Installation

See the installation instructions [provided here](https://progressivis.readthedocs.io/en/latest/install.html).

## Examples

To see examples, either look at the tests in the `tests` directory, or
try the examples in the `examples` directory.

## Running demos (on your computer)

ProgressiVis demos needs visualisations which are availables in the `progressivis` extension called `ipyprogressivis`. Please follow the instructions provided [here](https://github.com/progressivis/ipyprogressivis)


## Contribute

## Support

If you are having issues, please let us know at [issue](https://github.com/progressivis/progressivis/issues).


## License

The project is licensed under the BSD license.

