An easy-to-use platform for EEG experimentation in the classroom
BrainWaves is an Electron app that can be installed natively on your system. However, because it makes use of the MNE Python library to perform EEG analysis, it is necessary to set up an appropriate Python environment to be able to analyze collected experimental results.
BrainWaves needs an Anaconda environment called "brainwaves" with the right dependencies to run its analysis.
Download and install Anaconda for Python 3. We recommend using the Miniconda installer for Python 3.7 available from this page. When installing, select the option to "Add Anaconda to my PATH environment variable".
Download the BrainWaves environment file or grab it by cloning this repository
Note: you may need to install Microsoft Visual C++ Build Tools to run this following command on Windows
Open Anaconda prompt (or terminal on Linux and OSX) in the directory where
the environment file is located and run conda env create -f environment.yml
If the environment is created successfully, activate the new conda environment that is created with conda activate brainwaves
Finally, run the following command to create a new jupyter kernel that uses this environment:
python -m ipykernel install --user --name brainwaves --display-name "brainwaves"
.bash_profile
to include the path for your
compiler
(nothing terribly scary).
which gcc
.bash_profile
export PATH="/usr/bin:$PATH"
git clone https://github.com/makebrainwaves/BrainWaves.git
$ cd BrainWaves
$ yarn install
keys.js
Start the app in the dev
environment. This starts the renderer process in
hot-module-replacement mode and
starts a webpack dev server that sends hot updates to the renderer process:
$ yarn dev
Alternatively, you can run the renderer and main processes separately. This way, you can restart one process without waiting for the other. Run these two commands simultaneously in different console tabs:
$ yarn start-renderer-dev
$ yarn start-main-dev
To package apps for the local platform:
$ yarn package
To package apps for all platforms:
First, refer to Multi Platform Build for dependencies.
Then,
$ yarn package-all
To package apps with options:
$ yarn package -- --[option]
To run End-to-End Test
$ yarn build
$ yarn test-e2e
:bulb: You can debug your production build with devtools by simply setting the
DEBUG_PROD
env variable:
DEBUG_PROD=true yarn package
if you are interested in fixing issues with the BrainWaves app or helping us add additional features, that's amazing! Please see our How to Contribute.
Also, read our Code of Conduct