Neurodevelopment Assessment and Monitoring System (NAMS) iOS application.
Note
Do you want to try out the NeuroNest application? You can download it to your iOS device using TestFlight!
NeuroNest Home view | Nearby Device Search | In Progress EEG Recording | Screening Questionnaires |
Patient List | Adding a new patient | Patient Details |
NeuroNest is a software platform for EEG data collection and other neurodevelopmental evaluation of patients. It connects to Bluetooth-enabled EEG devices to perform EEG recordings. Currently, the app supports MUSE and BIOPOT 3 devices. Further, it integrates HL7 FHIR Questionnaires to perform standardized and clinically validated screening questionnaires.
Through an integration with Firebase, EEG recordings and questionnaire results can be used for further processing and analysis, facilitating novel, algorithm-based approaches to neurodevelopmental risk assessment.
The project supports Muse EEG Headbands to collect EEG recordings.
The Muse SDK is closed-source and, therefore, not part of this repository. For more information, refer to the Muse SDK FAQ page. If you have access, you may need to fetch the git submodule by running the following command:
git submodule update --init
The Xcode project configures two targets:
NAMS
: This target uses a Mock Device Layer and does not include the Muse SDK. It is useful for demonstration and testing purposes.NAMS Muse
This target includes the Muse SDK. It does not build on the iOS Simulator.
You can build and run the application using Xcode by opening up the NAMS.xcodeproj.
The application provides a Firebase Firestore-based data upload and Firebase Authentication login & sign-up. It is required to have the Firebase Emulator Suite to be up and running to use these features to build and test the application locally. Please follow the installation instructions.
You do not have to make any modifications to the Firebase configuration, login into the firebase
CLI using your Google account, or create a project in firebase to run, build, and test the application!
Startup the Firebase Emulator Suite using
$ firebase emulators:start
After the emulators have started up, you can run the application in your simulator to build, test, and run the application.
The application includes the following feature flags that can be configured in the scheme editor in Xcode and selecting the NAMS scheme, the Run configuration, and to switch to the Arguments tab to add, enable, disable, or remove the following arguments passed on launch:
--skipOnboarding
: Skips the onboarding flow to enable easier development of features in the application and to allow UI tests to skip the onboarding flow.--showOnboarding
: Always show the onboarding when the application is launched. Makes it easy to modify and test the onboarding flow without the need to manually remove the application or reset the simulator.--useFirebaseEmulator
: Defines if the application should connect to the local firebase emulator. Always set to true when using the iOS simulator.--inject-default-patient
: Automatically create and select a default patient (useful for testing).
This project is based on ContinuousDelivery Example by Paul Schmiedmayer, and the Neurodevelopment Assessment and Monitoring System (NAMS) provided using the MIT license.
You can find a list of contributors in the CONTRIBUTORS.md
file.
The Neurodevelopment Assessment and Monitoring System (NAMS) and the Spezi framework are licensed under the MIT license.