Developer Guide#

This section is meant to help anyone interested in modifying the source code for the Open Ephys GUI, or extending its functionality via plugins. It can also be helpful to read if you simply want to gain a better understanding of the inner workings of the software.

No matter your level of experience, there are a number of ways that you can help improve the GUI:

Reporting bugs#

If you observe any unexpected behavior with the GUI, please submit an issue on GitHub. This is the easiest way for us to keep track of things that need to be fixed.

When you submit an issue, make sure to include what version of the GUI you’re using (visible in the lower right of the “Graph” tab), and what operating system you’re running it on.

Building a new plugin#

The recommended way to add features to the GUI is by building a new plugin. Plugins allow the GUI to interface with new data sources, trigger events on specific neural states, display data within rich visualizations, or write data to a new format, among many other possibilities. Officially supported plugins are listed in the User Manual.

Before you create a new plugin, you’ll need to have some familiarity with C++, as well as makefiles (Linux), Xcode (macOS), or Visual Studio (Windows).

Updating the host application#

If you’d like to submit changes to the Open Ephys GUI main code repository, first read through this section of the developer documentation. Before you contribute a new feature or bug fix to the main application, please open an issue on GitHub so other developers can provide feedback and guidance.

Other projects#

If you are interested in helping out with longer-term projects, or if you’re able to donate developer time, please get in touch via gui@open-ephys.org.