Skip to main content

Python Suite research packages logo

eyeprocesspy

Reproducible Python infrastructure for eye-tracking, pupillometry, AOIs, process data, psychometrics, and multimodal behavioral measurement.

Documentation · PyPI · Release v0.1.0 · Zenodo DOI · 88 workflows

CI Documentation Deep parity PyPI DOI Python 3.11–3.14 Frozen API 1182/1182 Coverage 100%

eyeprocesspy is the Python companion and deep-parity port of the R package eyeprocess, with frozen eyeprocess 0.11.1 as the scientific reference. It provides one governed analytical surface for vendor import, canonical data contracts, preprocessing, gaze and AOI analysis, pupillometry, process measurement, psychometrics/IRT, multimodal workflows, validation, provenance, plotting, and reproducible reporting.

Release candidate — 0.2.0. The 0.2.0 candidate is anchored to an exact-main qualification with 1,845 tests, 34,161 / 34,161 statements, and 11,796 / 11,796 branches covered, plus a green Ubuntu/macOS/Windows × Python 3.11–3.14 matrix. It is not yet published to PyPI or Zenodo. The latest published release remains 0.1.0, archived at DOI 10.5281/zenodo.22285167.

Install

pip install eyeprocesspy

Pin the initial scientific release when exact reproducibility matters:

pip install eyeprocesspy==0.1.0

For source installation from the immutable release tag:

pip install "git+https://github.com/stefanosbalaskas/eyeprocesspy.git@v0.1.0"

Windows users can also use the hardened installer described in the manual-install guide. It has been exercised on a real Windows/Python 3.11.9 installation with the recommended extras and a clean pip check.

Release evidence

Dimension Verified state
Frozen R public APIs resolved 1,182 / 1,182
Frozen R reference 0.11.1
Workflow articles linked 88 / 88
Deep-parity tests 1,458 passed
Statement coverage 23,085 / 23,085 (100%)
Branch coverage 9,680 / 9,680 (100%)
Numerical not_started debt 0
Plot not_started debt 0
CI matrix Ubuntu / macOS / Windows × Python 3.11–3.14
PyPI eyeprocesspy 0.1.0
Zenodo 10.5281/zenodo.22285167

See RELEASE_VALIDATION.md, TEST_SUMMARY.md, and the parity & validation guide for the underlying evidence.

What it covers

Research layer Representative capabilities
Import & canonicalization Vendor/generic readers, Gazepoint workflows, schema validation, coordinates, events, timebase, file pairing
Gaze & AOIs Fixations, saccades, dwell, scanpaths, transitions, entropy, recurrence, hard/probabilistic/compositional AOIs
Censored latency survival-ready event/censor tables, Kaplan–Meier, repeated-trial Cox, Weibull/log-normal AFT, PH diagnostics, sensitivity
Pupil & multimodal Baselines, pupil features, missingness, functional pupil, synchronized streams, staged multimodal models
Psychometrics & IRT Information, fit, DIF/DTF, process-informed and dynamic IRT, reliability, linking, norms, diagnostics
Measurement intelligence Calibration uncertainty, reliability, process guardrails, fairness, item-bank optimization
Validation Recovery, SBC-style evidence, stress tests, negative controls, grouped/leakage-aware validation, evidence atlases
Reproducibility Benchmarks, manifests, provenance, frozen-R oracle, release audits, software-paper evidence
Plots & reporting Publication-oriented gaze, AOI, pupil, quality, IRT, process and validation graphics

30-second reproducible check

import eyeprocesspy as ep

study = ep.eyeprocess_benchmark_study()
audit = ep.validate_benchmark_study(study)
data = ep.import_benchmark_study(study)

print(audit["valid"])
print(data)

For a real export:

import eyeprocesspy as ep

eye = ep.read_eye_export("participant_001.csv", vendor="auto")
issues = ep.validate_eye_dataset(eye)

See the package in action

Gaze trace Probabilistic AOI
Gaze trace Probabilistic AOI
Pupil time series Process reliability
Pupil time series Process reliability

Open the complete visual gallery →

Choose your path

Scientific boundary

eyeprocesspy provides measurement and analysis infrastructure. A metric is not automatically a validated psychological construct, diagnosis, or causal explanation. Reliability does not establish construct validity; prediction does not establish causation; probabilistic AOI membership represents modeled coordinate uncertainty rather than probability of attention; and gaze, pupil, biometric, and process measures require an appropriate design, measurement model, and ethical interpretation.

Citation

If you use eyeprocesspy 0.1.0, cite the archived software release:

Balaskas, S. (2026). eyeprocesspy: Vendor-neutral Python infrastructure for eye-tracking and multimodal process data (Version 0.1.0) [Computer software]. Zenodo. https://doi.org/10.5281/zenodo.22285167

For reproducibility, also report eyeprocesspy.__version__ and the frozen R reference exposed as eyeprocesspy.__r_reference_version__.

Relationship to R eyeprocess

The Python package is developed against the frozen eyeprocess 0.11.1 reference. API, articles, data, plots, numerical evidence, backends, and unavoidable language-specific divergences are tracked explicitly. Python-native extensions are kept distinct from reference parity so they do not masquerade as R-equivalent behavior.

License

MIT. See LICENSE.

Metadata

Release files for eyeprocesspy 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for eyeprocesspy 0.2.0
File Size Uploaded Provenance
eyeprocesspy-0.2.0.tar.gz 1.3 MB With provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for eyeprocesspy 0.2.0
File Interpreter ABI Platform
eyeprocesspy-0.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 2.2 MB

Release files / eyeprocesspy-0.2.0.tar.gz

Download URL eyeprocesspy-0.2.0.tar.gz
Size 1.3 MB
Tags Source
SHA-256 checksum
How to use checksums
009efb53a104adeda7b69b5f8bee0e47b0f36e235a5ccd247132bf4d0985f2fa
BLAKE2b-256 checksum
How to use checksums
aa63a162fda68f2a561e63bea5d62b2eed6278ee046ec0e9f929337ad4608de4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 21, 2026.

Transparency log

Release files / eyeprocesspy-0.2.0-py3-none-any.whl

Download URL eyeprocesspy-0.2.0-py3-none-any.whl
Size 964.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e4fdb3db6f1cab831c625c965245ca82d18cd3b1540e7b4c49be573c7aed81ce
BLAKE2b-256 checksum
How to use checksums
de17c405af09d5146519e27990e3aea8b886c676ca70b6f2870de00f43e7407c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 21, 2026.

Transparency log

Security for eyeprocesspy 0.2.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for eyeprocesspy-0.2.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 21, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page