Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 22 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,8 @@ software timestamps alone.
- `GLSystemText` (backward-compatible explicit name for `Text`).
- Psychophysics helpers (`make_gabor`, gratings, normalization, dithering).
- Audio playback utility (`Audio`) backed by `tachyaudio`.
- Optional Wooting analog-keyboard integration (`tachypy[wooting]`): on-screen
pressure feedback and `WOOTING_ACQUISITION` straight from `tachypy`.
- Test suite for core logic and regressions.

## Installation
Expand Down Expand Up @@ -79,10 +81,26 @@ Optional extras:

```bash
pip install -e ".[test]" # pytest
pip install -e ".[text]" # Pillow text fallback
# Audio support (tachyaudio) is included in the base install
pip install -e ".[wooting]" # Wooting analog-keyboard integration
# Pillow, FreeType, HarfBuzz, GLFW, and audio are included in the base install
```

### Wooting analog-keyboard integration

`pip install "tachypy[wooting]"` adds support for Wooting analog keyboards
(pressure acquisition, logging, and on-screen visual feedback):

```python
from tachypy import Screen, WOOTING_ACQUISITION

acq = WOOTING_ACQUISITION(threshold=0.8)
acq.initialize_keyboard()
acq.wait_light_press_visual(target_keys=["c", "z"], screen=Screen(fullscreen=False))
```

See the [Wooting docs page](https://tachypy.readthedocs.io/en/latest/wooting.html)
for details.

### Audio dependency

TachyPy audio now uses `tachyaudio>=0.2.0b1`. TachyPy no longer depends on
Expand Down Expand Up @@ -164,7 +182,7 @@ TACHYPY_FONT="Avenir Next, Helvetica, Arial" python example_tachypy.py
backend-independent.
- `GLSystemText` supports system font selection by family name, fallback list
(e.g. `"Avenir Next, Helvetica, Arial"`), or direct font file path.
- For production instruction text, prefer `Text` with `.[system_text]`.
- For production instruction text, prefer `Text`.
- The old texture-backed constructor is backbenched as `tachypy.text.LegacyText`.

## API Naming
Expand Down Expand Up @@ -198,6 +216,7 @@ Expanded docs live in `/docs` and include:
- backend behavior and input routing
- text rendering options
- audio backend guidance
- Wooting analog-keyboard integration
- examples and contribution workflow

Hosted docs (Read the Docs): https://tachypy.readthedocs.io/
Expand Down
10 changes: 10 additions & 0 deletions docs/api.rst
Original file line number Diff line number Diff line change
Expand Up @@ -34,3 +34,13 @@ Core modules

.. automodule:: tachypy.psychophysics
:members:

Wooting pressure feedback
-------------------------

Keyboard-agnostic visual feedback toolkit (see :doc:`wooting`). These modules
never import a keyboard package; they render feedback for any object satisfying
:class:`tachypy.feedback.PressureSource`.

.. automodule:: tachypy.feedback
:members:
6 changes: 4 additions & 2 deletions docs/getting_started.rst
Original file line number Diff line number Diff line change
Expand Up @@ -27,8 +27,10 @@ Optional extras
.. code-block:: bash

pip install -e ".[test]" # pytest, coverage, lint tooling
pip install -e ".[text]" # Pillow text fallback
# Audio support (tachyaudio) is included in the base install
pip install -e ".[wooting]" # Wooting analog-keyboard integration
# Pillow, FreeType, HarfBuzz, GLFW, and audio are included in the base install

See :doc:`wooting` for the Wooting analog-keyboard integration.

Minimal loop
------------
Expand Down
Binary file added docs/gifs/wooting-mini-bw-experiment.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/gifs/wooting-visual-fixation-demo.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 1 addition & 0 deletions docs/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ abstractions for display/input, and helper utilities for experiment workflows.
timing_validation
text_rendering
audio
wooting
examples
contributing

Expand Down
Loading
Loading