Hand-off Plan

Demo video

We have a full demo video available here.

Description of application

Our project is a Python GUI desktop application (with a CLI component for advanced users) that runs cross-platform on Windows, macOS, and Linux. The source code is on GitHub.

Management/development

Our project is open sourced and licensed under the MIT License. We have transferred ownership of the repository to the client’s (Martin Styner’s) organization, NIRAL (Neuro Image Research Analysis Laboratories). Our client and his associates have a strong developer background and can be well-trusted to manage the code base. We will also transfer ownership of the PyPI and TestPyPI packages.

For future developers, we provide the link to our documentation website in the GitHub README. This site contains pages about project structure, libraries, and automatically generated source code documentation.

Use (for any user)

Users must have Python 3.8+ and pip (Python’s package manager) installed in order to use NeuroRuler. This is a reasonable assumption, as the researchers using this tool most likely have Python installed for other scientific computing applications. NeuroRuler can be installed via pip using the following command:

pip install NeuroRuler

NeuroRuler can also be installed from source, as described in the README. After opening a Python terminal, the user uses the following commands:

from NeuroRuler.GUI import gui

gui()

Then NeuroRuler’s GUI will run.

Use (for developers)

Developers should clone the repository locally to have access to the gui.py and cli.py scripts to test changes without having to upload to PyPI.

Additionally, cloning would download gui_config.json and cli_config.json for configuration of settings.

Configuration

The JSON configuration files exist (and are used) in the package when downloaded from pip but aren’t easily modifiable since they’re in the actual package, not cwd.

However, the user could download these files from GitHub into cwd. Then, when running the application from the Python terminal, the files would be detected and used.

For more information, see https://github.com/NIRALUser/NeuroRuler/issues/76.