neuropsychology / NeuroKit

NeuroKit2: The Python Toolbox for Neurophysiological Signal Processing
https://neuropsychology.github.io/NeuroKit
MIT License
1.52k stars 406 forks source link

Neurokit2: Call for help #3

Closed DominiqueMakowski closed 4 years ago

DominiqueMakowski commented 4 years ago

The original neurokit package started as a small project as I was learning python, but ended having far more success than I originally expected, far beyond its quality of implementation.

Thus, I think it's better to restart the project from scratch, in a more open and collaborative manner, to create the top toolbox for neurophysiological data processing. If you're interested by such project, whether it is because you need it, because you want to learn python, because you need published papers or technical achievements to add to your CV, you're very welcome to hop aboard! Now is the right time, just let us know with a πŸ‘ react or a response to this thread, mentioning features would you like to see, or how could you eventually help!

@hcp4715 @sangfrois @Tam-Pham @zen-juen

sangfrois commented 4 years ago

You can count on me for all the reasons above, Dominique!

hcp4715 commented 4 years ago

I am really happy to join in. but I am still pretty new to Python ;-).

hosseinhamidi commented 4 years ago

I'll also be happy if you need any help as I just started to work on ECG signals with Python.

GanshengT commented 4 years ago

I am currently working on a corticomuscular coherence (CMC). I am interested in further development of NeuroKit. NeuroKit might serve as an analysis platform in my project. I am glad to develop.

hosseinhamidi commented 4 years ago

Hi,

I am interested to help you in developing this toolbox as kind of these methods are related to my project to process my ECG and PPG signals. Please let me know how we can shape a cooperation.

Tam-Pham commented 4 years ago

Count me in! I'm interested particularly in the HRV. Let us know how we can help!

DominiqueMakowski commented 4 years ago

Great! I am currently trying to have a working a stable and top-standards setup for the package and the github repo, i.e., that passes tests, that is on pypi, that has automated documentation etc. Once that is done, we can start thinking about the structure and organisation! I'll keep you guys updated ☺️

In the meantime, if you are already using processing your signals, 1) be on the lookout for the existing packages/programs that could help us in terms of features or implementation and 2) if you are writing some code, try to make it as modularized as possible (i.e., creating functions) so we could reuse them here.

πŸ’ͺ

DominiqueMakowski commented 4 years ago

Small update πŸŽ‰ I think the repo is now starting to be in shape. Testing, automated code reviews and documentation generation seem to be working. I will now start porting some of the useful functions from NeuroKit1 to here. We already ported (and strongly improved) some of them, such as read_acqknowledge() and events_find(). Will no go ahead with the biophysio stuff.

However, before doing that, I'd like to test the contributing-friendliness of the repo. I put together a [document]() with guidelines for contributing (the source is here). Could you guys give it a look, see if it's understandable, useful and all (and improve it if need be!).

Following this workflow, could you then all add your name to the contributors section and make a PR to test the workflow of PRing to dev, and from dev to master? Thanks a lot! Let me know if there are any issues ☺️

@sangfrois @hcp4715 @GanshengT @hosseinhamidi @PhilippeBlonde @zen-juen

DominiqueMakowski commented 4 years ago

currently the author's page is separated into 2 sections (core team and contributors). The latter refers to people helping and contributing to the package (and you, since you've motivated me to start this) while the former refers to people that are sort of responsible for the package (maintenance, addressing issues, bugfixes etc.), which requires a good understanding of the package as a whole (tests, setup, etc.). For now, I'd suggest you add yourself as contributors, and you'll see in time how you get familiar with the package ☺️

GanshengT commented 4 years ago

You might also want to indicate the workflow to synchronize the fork by merging the upstream repository into the folk.

DominiqueMakowski commented 4 years ago

You might also want to indicate the workflow to synchronize the fork by merging the upstream repository into the folk.

Do you have any suggestions on how to clarify that?

sangfrois commented 4 years ago

Hi Dom,

Thanks for reaching out again, I've read your tutorial for contributing and I think the intention is aligned with the effect it has, i.e. I felt compelled to contribute and welcomed in the process. I hope my pull request has worked alright. I forked the repo. Then, I've added my name to the contributors and commited this change on a local dev branch. Afterwards, I've merged it with the master. I then pushed it on the remote

git remote -v show
dev     https://github.com/sangfrois/NeuroKit (fetch)
dev     https://github.com/sangfrois/NeuroKit (push)
dev     https://github.com/neuropsychology/NeuroKit (push)
origin  https://github.com/sangfrois/NeuroKit.git (fetch)
origin  https://github.com/sangfrois/NeuroKit.git (push)

does that look alright ?

I've been busy trying to get my grades up lately, but still working part time on a script that could be useful for batch processing. I will add the script on my fork as soon as I can.

DominiqueMakowski commented 4 years ago

@sangfrois well to be honest my knowledge of git command line is super limited (GitHub desktop FTW 😁), so I am not sure. However, I don't see your PR on this repo, indicating that something is missing.

The steps are roughly 1) fork, 2) switch to dev branch 3) make changes 4) push 5) make PR (so that the changes of your fork are pushed to the dev branch here)

If anyone knows the corresponding git commands please feel free to clarify!

sangfrois commented 4 years ago

Oh right !! I see there's no corresponding git commands ; I think I'm only missing step 5 which has to be done on GitHub directly! Thanks for the clarification, I'll make a PR first thing when I wake up!

kassyray commented 4 years ago

Hi @DominiqueMakowski - I'm a little late on seeing this post but I still see lots of activity on this project. I'm an MSc student working on signal processing (predominantly EDA), but would love to get involved!

DominiqueMakowski commented 4 years ago

Hi @kassyray no worries it's never too late, happy to have you onboard ☺️ Even though already big in terms of feature, I consider this project still in its very early days with a long way to go. You hop on the train as it is barely leaving the station πŸš„

predominantly EDA

Fantastic, especially as this is an area that has a lot of potential improvements.

Do not hesitate to dig into the repo participate to discussions ask questions suggest ideas etc., and on our side, we'll try to ping you whenever possible