Metadata-Version: 2.4
Name: ephys-link
Version: 2.1.3
Summary: A Python Socket.IO server that allows any Socket.IO-compliant application to communicate with manipulators used in electrophysiology experiments.
Project-URL: Documentation, https://virtualbrainlab.org/ephys_link/installation_and_use.html
Project-URL: Issues, https://github.com/VirtualBrainLab/ephys-link/issues
Project-URL: Source, https://github.com/VirtualBrainLab/ephys-link
Author-email: Kenneth Yang <kjy5@uw.edu>
Maintainer-email: Kenneth Yang <kjy5@uw.edu>
License-Expression: GPL-3.0-only
License-File: LICENSE
Keywords: electrophysiology,ephys,manipulator,neuroscience,neurotech,new-scale,sensapex,socket-io,virtualbrainlab
Classifier: Intended Audience :: End Users/Desktop
Classifier: Intended Audience :: Healthcare Industry
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: GNU General Public License v3 (GPLv3)
Classifier: Operating System :: Microsoft :: Windows
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Programming Language :: Python :: Implementation :: PyPy
Classifier: Topic :: Scientific/Engineering :: Medical Science Apps.
Requires-Python: >=3.13
Requires-Dist: aiohttp==3.12.15
Requires-Dist: colorama==0.4.6
Requires-Dist: keyboard==0.13.5
Requires-Dist: packaging==25.0
Requires-Dist: platformdirs==4.4.0
Requires-Dist: pyserial==3.5
Requires-Dist: python-socketio[asyncio-client]==5.13.0
Requires-Dist: requests==2.32.5
Requires-Dist: rich==14.1.0
Requires-Dist: sensapex==1.400.4
Requires-Dist: vbl-aquarium==1.0.0
Description-Content-Type: text/markdown

# Electrophysiology Manipulator Link

[![PyPI version](https://badge.fury.io/py/ephys-link.svg)](https://badge.fury.io/py/ephys-link)
[![Hatch project](https://img.shields.io/badge/%F0%9F%A5%9A-Hatch-4051b5.svg)](https://github.com/pypa/hatch)
[![uv](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/uv/main/assets/badge/v0.json)](https://github.com/astral-sh/uv)
[![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)
[![Pydantic v2](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/pydantic/pydantic/main/docs/badge/v2.json)](https://pydantic.dev)
[![Checked with pyright](https://microsoft.github.io/pyright/img/pyright_badge.svg)](https://microsoft.github.io/pyright/)
[![Test](https://github.com/VirtualBrainLab/ephys-link/actions/workflows/test.yml/badge.svg)](https://github.com/VirtualBrainLab/ephys-link/actions/workflows/test.yml)

<!-- [![Build](https://github.com/VirtualBrainLab/ephys-link/actions/workflows/build.yml/badge.svg)](https://github.com/VirtualBrainLab/ephys-link/actions/workflows/build.yml) -->

The [Electrophysiology Manipulator Link](https://github.com/VirtualBrainLab/ephys-link)
(or Ephys Link for short) is a Python [Socket.IO](https://socket.io/docs/v4/#what-socketio-is) server that allows any
Socket.IO-compliant application (such
as [Pinpoint][Pinpoint])
to communicate with manipulators used in electrophysiology experiments.

<img width="100%" src="https://github.com/VirtualBrainLab/ephys-link/assets/82800265/0c7c60b1-0926-4697-a461-221554f82de1" alt="Manipulator and probe in pinpoint moving in sync">

# Installation

## Pinpoint (Recommended)

Pinpoint comes bundled with the correct version of Ephys Link. If you are using Pinpoint on the same computer your
manipulators are connected to, you can launch the server from within Pinpoint. See the documentation
on [connecting from Pinpoint](../usage/using_ephys_link.md#connecting-to-pinpoint).

## Install as a Standalone Executable

Download the latest standalone executable or zip from
the [releases page](https://github.com/VirtualBrainLab/ephys-link/releases/latest).

Then see the [usage documentation](../usage/starting_ephys_link.md) for how to run the server.

# Documentation and More Information

Complete documentation including how to add manipulators and API usage can be
found on [Ephys Link's Documentation Website][docs].

# Citing

If this project is used as part of a research project you should cite
the [Pinpoint repository](https://github.com/VirtualBrainLab/Pinpoint). Please email
Dan ([dbirman@uw.edu](mailto:dbirman@uw.edu)) if you have questions.

Please reach out to Kenneth ([kjy5@uw.edu](mailto:kjy5@uw.edu)) for questions
about the Electrophysiology Manipulator Link server. Bugs may be reported
through the issues tab.

[Pinpoint]: https://github.com/VirtualBrainLab/Pinpoint

[docs]: https://ephys-link.virtualbrainlab.org
