gpbiometricspy
Scientific Python workflows and a guided application for Gazepoint eye-tracking and multimodal psychophysiology.
EDA / SCR · PPG / HRV · pupil · gaze · fixation · AOI · events · synchronization · multimodal QC · modelling · reproducible reporting
Website · Start here · Studio · Workflows · Methods · Plots · API
Start with the interface you need
Studio is the guided application over the same scientific package functions used by the Python API:
python -m pip install "gpbiometricspy[studio]==0.1.7"
gpbiometricspy-studio
Use the full local/private Studio for participant files. The anonymous public demonstration is synthetic-only and blocks external uploads.
Python API:
python -m pip install gpbiometricspy
import gpbiometricspy as gp
data = gp.load_kiosk_demo()
validity = gp.summarise_gazepoint_biometric_validity(data)
events = gp.extract_gazepoint_ttl_events(data)
Optional extras cover interoperability, HeartPy, BioSPPy, pyHRV, NeuroKit2, MNE, LSL/XDF, Bayesian/statistical tooling, Studio, docs, and development.
Research path
Project intake
→ measurement + provenance checks
→ signal-specific QC and processing
→ events / AOIs / multimodal alignment
→ summaries and guarded modelling
→ reporting / certificates / reproducible replay
The package supports Gazepoint import/schema/validity, EDA/SCR, PPG and interval variability, pupil/gaze/fixation/saccade/AOI workflows, TTL/events, clock alignment and timebase provenance, multimodal summaries, design audits, cluster permutation, reporting/certificates, simulation, and MNE/LSL/XDF/external-toolbox interoperability.
For a task-first entry point use the Start here or Workflow map rather than beginning with the raw function index.
Python-native methods
Additive Python-native methods sit outside the frozen gpbiometrics 2.0.0 parity surface. Current families include Gaussian and robust Student-t hierarchical location–scale models; one-factor location, log-scale, and joint random slopes; crossed participant–item intercept, location-slope, scale-slope, and joint location + log-scale random-slope models; grouped mixed and ordinal boosting; timebase/alignment certification; and cardiac-source provenance.
Use the model-selection guide to add complexity only when the design and scientific question require it.
Certified release-preparation baseline
The exact current-main source qualified immediately before the stable freeze is:
- commit
4c52b7c5fa20ab4e9981c9770baa79481f46c39f; - frozen semantic reference
gpbiometrics 2.0.0; - 406 / 406 frozen exports implemented, 0 pending;
- Tests #724: 12 / 12 OS/Python matrix lanes green;
- canonical Ubuntu / CPython 3.12.14: 855 / 855 tests, 15,171 / 15,171 statements = 100.00%;
- Branch Coverage #414: 7,159 / 7,178 = 99.7353% raw branch coverage;
- exactly 19 reviewed residual arcs with 0 unexpected / 0 stale / 0 unaudited branch debt;
- audited branch accounting 7,178 / 7,178 = 100.0000%;
- Docs #485, CodeQL #703, Deep Parity #713, Interoperability #712 and Private Real Data Validation #175 all green.
The Windows structural-debt auditor now normalizes Windows and POSIX path separators before exact arc comparison. The audited 19-arc ledger and scientific implementation remain unchanged.
Stable release record
Stable 0.1.7 is frozen from this release source on 20 September 2026. Public GitHub/PyPI publication remains fail-closed: the stable source must first pass the protected pull-request and exact-main release gates before immutable v0.1.7 creation and Trusted Publishing.
Interpretation boundary
gpbiometricspy measures, processes, audits, aligns, summarizes, predicts and models recorded signals. Those operations do not by themselves establish emotion, stress, trust, preference, cognition, diagnosis, sensor validity or causal effects.
In particular, robust heavy-tailed modelling is not an artifact score; random effects/slopes are modelled heterogeneity rather than stable traits; log-scale effects are not measurement-quality scores by definition; permutation importance is predictive rather than causal; and timing/cardiac certificates bind declared provenance evidence rather than proving sensor validity.
See Interpretation guardrails and Measurement accountability.
Documentation
- Start here — route by research task.
- Studio — guided visual workflow and local/public boundaries.
- Workflows — EDA, cardiac, eye tracking, multimodal alignment, QC and interoperability.
- Methods — Python-native modelling and provenance methods.
- Plot gallery — 17 deterministic figures generated in docs CI.
- API — domain-organized 406-function frozen-parity reference.
- Validation & trust — parity, coverage, real-data and application validation.
Citation and archival record
Stable gpbiometricspy 0.1.7 is frozen on 20 September 2026.
- 0.1.7 version DOI: pending genuine Zenodo ingestion of
v0.1.7; no DOI is fabricated before minting - 0.1.6 version DOI: still pending independent Zenodo verification
- Software concept DOI: 10.5281/zenodo.22150872
- 0.1.5 version DOI: 10.5281/zenodo.22672823
- 0.1.4 version DOI: 10.5281/zenodo.22515782
- 0.1.3 version DOI: 10.5281/zenodo.22313884
- 0.1.2 version DOI: 10.5281/zenodo.22150873
- Frozen R semantic-reference DOI: 10.5281/zenodo.21434608
- gpbiometrics article: 10.3390/signals7050086
Until Zenodo mints the genuine 0.1.7 version DOI, cite the immutable GitHub release:
Balaskas, S. (2026). gpbiometricspy: Python tools for Gazepoint biometric workflows (Version 0.1.7) [Computer software]. GitHub. https://github.com/stefanosbalaskas/gpbiometricspy/releases/tag/v0.1.7
The frozen R source/tests/docs/articles remain under reference/ as the semantic reference used for parity work. See VALIDATION.md and the documentation site for the complete evidence trail.
Metadata
Release files for gpbiometricspy 0.1.7
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| gpbiometricspy-0.1.7.tar.gz | 10.8 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| gpbiometricspy-0.1.7-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 19.5 MB
Release files / gpbiometricspy-0.1.7.tar.gz
| Download URL | gpbiometricspy-0.1.7.tar.gz |
|---|---|
| Size | 10.8 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
1fad5f2bbc879b8313dbf8951ac1637b793f653528fc9c3488b1d7bb384850a9
|
|
BLAKE2b-256 checksum How to use checksums |
7f4b8936652fa2cf13148774f81aa8bf4fb383c20422a4690facffd84a5272be
|
| 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 logRelease files / gpbiometricspy-0.1.7-py3-none-any.whl
| Download URL | gpbiometricspy-0.1.7-py3-none-any.whl |
|---|---|
| Size | 8.7 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
89e7a0b1d9dde07d6e40c30814f5e21abb91f442b7e03f5f77b7edb0afd79fb1
|
|
BLAKE2b-256 checksum How to use checksums |
26a30e027b98d4775ad5f4e5cdad58a6f2ef90e36546bcaa857b4d80572673ed
|
| 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