Submitting Author: (@dkrako)
All current maintainers: (@dkrako, @cbueth, @SiQube)
Package Name: pymovements
One-Line Description of Package: A Python package for processing eye tracking data
Repository Link: https://github.com/pymovements/pymovements
Version submitted: v0.28.0
EiC: TBD
Editor: TBD
Reviewer 1: TBD
Reviewer 2: TBD
Archive: TBD
JOSS DOI: TBD
Version accepted: TBD
Date accepted (month/day/year): TBD
Code of Conduct & Commitment to Maintain Package
Description
pymovements is an open-source Python package for downloading, preprocessing, and analyzing eye movement data. It covers the whole processing pipeline: downloading publicly available eye tracking datasets from a built-in dataset catalog, parsing raw eye tracker output files, transforming gaze coordinates (for example pixel coordinates to degrees of visual angle, positions to velocities), detecting oculomotor events such as fixations, saccades, and blinks with established algorithms, computing event properties like amplitude and dispersion, and visualizing gaze data as heatmaps, scanpaths, and time series plots. All data is held in polars DataFrames for fast, memory-efficient processing of large recordings.
Associated Publication
Publication Title: pymovements: A Python Package for Processing Eye Movement Data
Publication DOI: 10.1145/3588015.3590134
Journal/Venue: ETRA '23: Proceedings of the 2023 Symposium on Eye Tracking Research and Applications
Publication Title: The More the Merrier: Boost Your Dataset Visibility and Discover Eye-Tracking Datasets with pymovements
Publication DOI: 10.1145/3715669.3726810
Journal/Venue: ETRA '25: Proceedings of the 2025 Symposium on Eye Tracking Research and Applications
Scope
This package falls under data retrieval, extraction, processing, and visualization because it covers the full eye tracking analysis pipeline: retrieving public datasets from a curated dataset library, extracting gaze samples and metadata from raw eye tracker output files, transforming and processing gaze signals into oculomotor events and their properties, and visualizing the results. The package additionally supports data validation and testing through built-in gaze data quality measures and data quality reporting.
- Who is the target audience and what are scientific applications of this package?
The target audience is researchers working with eye tracking data in psychology, cognitive science, psycholinguistics, neuroscience, and machine learning. Scientific applications include reading research, scanpath and fixation analysis, data quality assessment, and preparing gaze datasets for machine learning.
- Are there other Python packages that accomplish the same thing? If so, how does yours differ?
Existing packages cover parts of the pipeline: eyekit specializes in reading experiments, and MNE-Python's eye tracking support is only rudimentary as it focuses on electrophysiology. pymovements differs by providing the complete pipeline from dataset download to event-level analysis in a single consistent API, together with a curated catalog of public datasets.
Domain Specific
Community Partnerships
If your package is associated with an
existing community please check below:
Technical checks
For details about the pyOpenSci packaging requirements, see our packaging guide. Confirm each of the following by checking the box. This package:
Publication Options
JOSS Checks
Note: JOSS accepts our review as theirs. You will NOT need to go through another full review. JOSS will only review your paper.md file. Be sure to link to this pyOpenSci issue when a JOSS issue is opened for your package. Also be sure to tell the JOSS editor that this is a pyOpenSci reviewed package once you reach this step. Please note that the PyOpenSci reviewers will not be reviewing the paper.md file
Are you OK with Reviewers Submitting Issues and/or pull requests to your Repo Directly?
This option will allow reviewers to open smaller issues that can then be linked to PR's rather than submitting a more dense text based review. It will also allow you to demonstrate addressing the issue via PR links.
Confirm each of the following by checking the box.
Please fill out our survey
Editor and Review Templates
The editor template can be found here.
The review template can be found here.
Submitting Author: (@dkrako)
All current maintainers: (@dkrako, @cbueth, @SiQube)
Package Name: pymovements
One-Line Description of Package: A Python package for processing eye tracking data
Repository Link: https://github.com/pymovements/pymovements
Version submitted: v0.28.0
EiC: TBD
Editor: TBD
Reviewer 1: TBD
Reviewer 2: TBD
Archive: TBD
JOSS DOI: TBD
Version accepted: TBD
Date accepted (month/day/year): TBD
Code of Conduct & Commitment to Maintain Package
Description
pymovements is an open-source Python package for downloading, preprocessing, and analyzing eye movement data. It covers the whole processing pipeline: downloading publicly available eye tracking datasets from a built-in dataset catalog, parsing raw eye tracker output files, transforming gaze coordinates (for example pixel coordinates to degrees of visual angle, positions to velocities), detecting oculomotor events such as fixations, saccades, and blinks with established algorithms, computing event properties like amplitude and dispersion, and visualizing gaze data as heatmaps, scanpaths, and time series plots. All data is held in polars DataFrames for fast, memory-efficient processing of large recordings.
Associated Publication
Publication Title: pymovements: A Python Package for Processing Eye Movement Data
Publication DOI: 10.1145/3588015.3590134
Journal/Venue: ETRA '23: Proceedings of the 2023 Symposium on Eye Tracking Research and Applications
Publication Title: The More the Merrier: Boost Your Dataset Visibility and Discover Eye-Tracking Datasets with pymovements
Publication DOI: 10.1145/3715669.3726810
Journal/Venue: ETRA '25: Proceedings of the 2025 Symposium on Eye Tracking Research and Applications
Scope
This package falls under data retrieval, extraction, processing, and visualization because it covers the full eye tracking analysis pipeline: retrieving public datasets from a curated dataset library, extracting gaze samples and metadata from raw eye tracker output files, transforming and processing gaze signals into oculomotor events and their properties, and visualizing the results. The package additionally supports data validation and testing through built-in gaze data quality measures and data quality reporting.
The target audience is researchers working with eye tracking data in psychology, cognitive science, psycholinguistics, neuroscience, and machine learning. Scientific applications include reading research, scanpath and fixation analysis, data quality assessment, and preparing gaze datasets for machine learning.
Existing packages cover parts of the pipeline: eyekit specializes in reading experiments, and MNE-Python's eye tracking support is only rudimentary as it focuses on electrophysiology. pymovements differs by providing the complete pipeline from dataset download to event-level analysis in a single consistent API, together with a curated catalog of public datasets.
Domain Specific
Community Partnerships
If your package is associated with an
existing community please check below:
Technical checks
For details about the pyOpenSci packaging requirements, see our packaging guide. Confirm each of the following by checking the box. This package:
Publication Options
JOSS Checks
paper.mdmatching JOSS's requirements with a high-level description in the package root or ininst/by the time you wish to submit to JOSS.Note: JOSS accepts our review as theirs. You will NOT need to go through another full review. JOSS will only review your paper.md file. Be sure to link to this pyOpenSci issue when a JOSS issue is opened for your package. Also be sure to tell the JOSS editor that this is a pyOpenSci reviewed package once you reach this step. Please note that the PyOpenSci reviewers will not be reviewing the paper.md file
Are you OK with Reviewers Submitting Issues and/or pull requests to your Repo Directly?
This option will allow reviewers to open smaller issues that can then be linked to PR's rather than submitting a more dense text based review. It will also allow you to demonstrate addressing the issue via PR links.
Confirm each of the following by checking the box.
Please fill out our survey
submission and improve our peer review process. We will also ask our reviewers
and editors to fill this out.
Editor and Review Templates
The editor template can be found here.
The review template can be found here.
Footnotes
Please fill out a pre-submission inquiry before submitting a data visualization package. ↩