Skip to main content

Ephyr

Documentation License: GPL v3

Ephyr is a lightweight yet powerful environment for labelling electrophysiological data. It combines an adaptive interface with intelligent performance scaling to match your machine’s resources, ensuring stable real-time operation even under heavy loads.

Fully open-source and built in Python, the platform provides a flexible API for post-annotation data access. Its add-on architecture lets you extend functionality seamlessly without modifying the core codebase.

ECoG + Probe + Stimulus HD MEA + GCAMP Patch clamp with multiple sweeps
Ephyr application overview Ephyr application overview Ephyr application overview

Documentation: https://ephyr.readthedocs.io/

Citation

Software

If you use this application in your research, please cite the software itself using the Zenodo DOI:

Kireev, A., & Suchkov, D. (2026). Ephyr: an open-source platform for visualizing and labeling multimodal electrophysiological data (Version 1.0.5). Zenodo. https://doi.org/10.5281/zenodo.21719977

Article (Coming Soon)

A peer-reviewed article describing this application is currently in preparation. We kindly ask that you consider citing it once it is published. The official reference and DOI will be updated here and in the CITATION.cff file upon publication.


License

Copyright (C) 2026 Life Improvement by Future Technologies (LIFT).

This project is licensed under the GNU General Public License v3.0 — see the LICENSE and COPYRIGHT files for details.

Development

Contributions are welcome via pull requests. To contribute:

  1. Fork the repository.
  2. Create a branch for your change.
  3. Make your changes and commit them using the commit message convention below.
  4. Open a pull request against the main branch.

Please keep pull requests focused and describe the motivation, changes, and testing performed.

Commit message convention

This project follows Conventional Commits. Use one of the following prefixes in your commit messages.

Core Conventional Commits types:

Type Meaning When to use Example
feat New feature Adds new functionality feat: add dark mode
fix Bug fix Fixes incorrect behavior fix: handle null user ID
docs Documentation README, comments, guides only docs: update install steps
style Code style/formatting Whitespace, formatting, semicolons — no logic change style: format with Prettier
refactor Refactoring Code change that neither fixes a bug nor adds a feature refactor: simplify validation logic
perf Performance Improves speed or memory usage perf: cache user lookup
test Tests Add or fix tests test: add parser edge cases
build Build system/dependencies Build tooling, bundler, package manager, external deps build: upgrade webpack to v5
ci Continuous integration CI config/scripts, GitHub Actions, GitLab CI, Travis ci: add test workflow
chore Maintenance Routine tasks not touching src or tests chore: update .gitignore
revert Revert Reverts a previous commit revert: feat: add dark mode

Example commit messages:

feat: add support for EDF+ files
fix(ui): prevent crash when no channel is selected
docs: update installation instructions

Breaking changes can be marked with ! after the type or scope, or with a BREAKING CHANGE: footer:

feat!: drop Python 3.9 support
fix(api)!: change response format

Changelog

To generate CHANGELOG.md use:

changelog-maestro --template devtools/changelog.md.j2

Metadata

Release files for ephyr 1.0.20

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

Source distribution (sdist)

Source distribution for ephyr 1.0.20
File Size Uploaded Provenance Actions
ephyr-1.0.20.tar.gz 326.4 kB Without provenance Details for ephyr-1.0.20.tar.gz

Built distribution (wheel)

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

Total release size: 696.3 kB

Release files / ephyr-1.0.20.tar.gz

Download URL ephyr-1.0.20.tar.gz
Size 326.4 kB
Tags Source
SHA-256 checksum
How to use checksums
71aed3026b192142f64f96529183d608acf7667b2df8ad501f288cc19c14f376
BLAKE2b-256 checksum
How to use checksums
f215ba094fa8f613f8c27d91adec1c584b6c4f86a159b0c1ebee31050390c4d1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.0 CPython/3.11.10

Release files / ephyr-1.0.20-py3-none-any.whl

Download URL ephyr-1.0.20-py3-none-any.whl
Size 369.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
839b51391210ea987c1422300c3a9301b7b8dc33de257a2a9f18d1a646107679
BLAKE2b-256 checksum
How to use checksums
e907f19133c866ba6d752dc7364e2c5bb2d0ed50bc5873da3877c3445f313dd2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.0 CPython/3.11.10

Security for ephyr 1.0.20

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.

No provenance found

None of the files in this release were uploaded with provenance metadata.

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