Installation ============ **Psychos** is a Python package extending `Pyglet `_ designed specifically for creating psychophysics and timing-sensitive behavioral experiments. Its unique required dependency is `Pyglet>=2.0`. **Psychos** is compatible with Python versions >=3.8 and supports Linux, macOS, and Windows platforms. Stable releases can be easily installed via PyPI using any Python package manager: .. code-block:: bash pip install psychos Optional Dependencies --------------------- Some modules in **Psychos** have optional dependencies: - `NumPy `_: Required for certain stimuli types, such as Gabor patches. - `Pyserial `_ and `Pyparallel `_: Necessary for communication modules or sending triggers to external devices. These optional dependencies can be installed separately as needed, or collectively by running: .. code-block:: bash pip install psychos[extra] Troubleshooting --------------- If you encounter interface-related errors, ensure that `Pyglet` is correctly installed and compatible with your system. Refer to the official `Pyglet documentation `_ for guidance. If you identify issues specifically related to **Psychos**, please open an issue on the `Psychos GitHub repository `_. .. note:: **Psychos** has been tested with `Pyglet>=2.0`. If you encounter compatibility issues with newer versions of `Pyglet`, please verify whether the package functions correctly with `Pyglet>=2.0,<2.1`. We encourage you to open an issue if you detect that recent changes in `Pyglet` introduce incompatibilities or break existing functionality. Development Installation ------------------------ For development purposes, extra dependencies to run tests and build documentation can be installed via: .. code-block:: bash pip install psychos[docs,test] To install the latest development version directly from GitHub (e.g., from the master branch), use: .. code-block:: bash pip install git+https://github.com/memory-formation/psychos/