The Open Ephys GUI has been collaboratively developed by scientists since 2011. The original work was done in the GUI repository, but we migrated to the plugin-GUI after upgrading the software to use a plugin architecture.
We welcome any and all contributions, no matter how small! If you'd like to get involved but aren't sure where to start, feel free to email [email protected].
The following are common ways you can help:
- Reporting bugs
- Suggesting enhancements
- Updating the documentation
- Building a new plugin
- Updating the host application
If you observe some 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.
If there's a missing feature that would help your science, feel free to create an issue describing what you'd like to see. There's no guarantee that we'll be able to make the changes you request, but it's always helpful to know what people feel are the most important limitations of the current application.
We are keeping track of our current development plans using GitHub projects. Be sure to read through the list of projects before suggesting something new.
The GUI's documentation is hosted on the Open Ephys Wiki. In order to edit the wiki, first you'll need to request an account by emailing [email protected]. After that, you can make changes to any of the pages by clicking the "edit" button (pencil icon) in the upper right.
The recommended way to add new features to the GUI is by building a new plugin. Instructions on creating plugins can be found here. Plugin developers can publish links to their work in this list to make them available to the general public. Soon, we'll make it possible to share plugins via an installer embedded inside the GUI itself.
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) for building applications.
If you'd like to make changes to the code found in this repository, please open an issue that describes what you're working on. Then, edit the code in your fork of the plugin-GUI repository. Once your changes are ready, please submit a pull request to the development
branch.
We adhere to the following development cycle:
- New code is merged into the
development
branch - 2-3 weeks prior to a new release, the
development
branch is merged intotesting
, to allow users to test out any features that have been added - Once testing is complete, the
testing
branch is merged intomaster
, and the pre-compiled binaries are updated
We do not have a predefined release schedule. You can expect releases that include new features to be made every 2-3 months; if there are any critical bug fixes, those will be included in a patch release.