-
Notifications
You must be signed in to change notification settings - Fork 51
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
plugin-meye-config & extension-meye #73
base: main
Are you sure you want to change the base?
Conversation
|
Hi @AdamVasarhelyi2, Thanks for the contribution! It looks like there are files in |
Sure Josh! Thanks for the feedback - I'm a little new :P I'll get this done by Monday |
Hey Josh sorry for taking forever, I'm in a super hectic part of my last semester at college. I'll get around to this soon :) |
Hey @jodeleeuw, I've finally gotten around to this. Sorry for taking so long!! I hope everything's okay now - I (think I) have removed the files from the /dist directory that were causing problems with the first submission. Please let me know if everything is okay! |
@AdamVasarhelyi2, sorry for letting this slip through the cracks! I've updated a few things to match existing conventions. The next step is getting the package-lock.json to update, but I don't have permission to push directly to your fork for that. Can you pull my changes and then run |
Thanks a lot, Josh! Means a lot to me that we can get this working 😄
I also happened to check this email account by accident and am much more reliable on ***@***.***
Will get to work!
Adam
…________________________________
From: Josh de Leeuw ***@***.***>
Sent: Wednesday, July 10, 2024 12:21 AM
To: jspsych/jspsych-contrib ***@***.***>
Cc: Adam Vasarhelyi ***@***.***>; Mention ***@***.***>
Subject: Re: [jspsych/jspsych-contrib] plugin-meye-config & extension-meye (PR #73)
@AdamVasarhelyi2<https://github.com/AdamVasarhelyi2>, sorry for letting this slip through the cracks! I've updated a few things to match existing conventions. The next step is getting the package-lock.json to update, but I don't have permission to push directly to your fork for that. Can you pull my changes and then run npm i in the root of the repository to generate an updated package-lock.json file? When you push that I think the build should work.
—
Reply to this email directly, view it on GitHub<#73 (comment)>, or unsubscribe<https://github.com/notifications/unsubscribe-auth/AHOQRSZJGMBSCNSA4S5TJGDZLPWWFAVCNFSM6AAAAABKS4XTP6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDEMJXHA3TCNZZGA>.
You are receiving this because you were mentioned.
|
i am new to git and I really hope this works :C
Hey Josh! All done 🙂 It's kind of fun learning git!
Let me know if you need me to do anything else. Thanks.
Adam
…________________________________
From: Josh de Leeuw ***@***.***>
Sent: Wednesday, July 10, 2024 12:21 AM
To: jspsych/jspsych-contrib ***@***.***>
Cc: Adam Vasarhelyi ***@***.***>; Mention ***@***.***>
Subject: Re: [jspsych/jspsych-contrib] plugin-meye-config & extension-meye (PR #73)
@AdamVasarhelyi2<https://github.com/AdamVasarhelyi2>, sorry for letting this slip through the cracks! I've updated a few things to match existing conventions. The next step is getting the package-lock.json to update, but I don't have permission to push directly to your fork for that. Can you pull my changes and then run npm i in the root of the repository to generate an updated package-lock.json file? When you push that I think the build should work.
—
Reply to this email directly, view it on GitHub<#73 (comment)>, or unsubscribe<https://github.com/notifications/unsubscribe-auth/AHOQRSZJGMBSCNSA4S5TJGDZLPWWFAVCNFSM6AAAAABKS4XTP6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDEMJXHA3TCNZZGA>.
You are receiving this because you were mentioned.Message ID: ***@***.***>
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
hey, this plugin and extension looks like a fantastic idea and we'd love to include it. i've added some code review notes for you to view at your leisure, but also just one important distinction is that i haven't actually been able to run the code, no matter what I do, apparently my browser just isn't powerful enough, but i will continue to try and run it later on and let you know, these are just some helpful tips for you. thanks again for the contributions!
name: "meye-extension", | ||
}; | ||
|
||
// I'm sorry for this ;_; but hey it works |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
it's okay @ - @;;, but it would be nice to type these values just for intellisense. i think vscode + typescript can infer types if possible, it's just to help with debugging and maintainability
|
||
const info = <const>{ | ||
name: "meye-config", | ||
parameters: {}, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
it would be good to have parameters that specify stuff like the paths to images in case that people have their own images they want to upload (different languages, etc)...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't quite understand. The plugin configures the extension which measures pupils in real time. Why would one want to configure real-world video with an uploaded image over real-world video? And what did you mean with the language thingy?
introduction(); | ||
}; | ||
|
||
function introduction() { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
i'm wondering if it's just worth leaving this out and instead having a user just use an html-button-response
or instructions
plugin beforehand: it would also give them more power to customize this prompt
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I really wanted it to be part of the plugin because they're special instructions that are unique to the plugin and are unlikely to change or be different between research. The reason it's unlikely to change is because orthogonal lighting is better for it and outdoor lighting is orthogonal. I can still change this if you prefer, though.
Presenting a new plugin (plugin-meye-config) and extension (extension-meye) for review. Steps to verify functionality:
In cmd.exe:
Run
npm install
in the root directoryRun
npm run build
inside packages/plugin-meye-config and packages/extension-meyeNavigate to /packages (i.e., go up a directory)
Run a local python server with
python -m http.server
In your web browser, navigate to http://localhost:8000/
To test the plugin, navigate to /plugin-meye-config/examples. To test the extension, navigate to /extension-meye/examples. Note that the extension example calls the index.browser.min.js file from the plugin's /dist directory as the plugin and extension are to be used together.
Once the examples finish, they output data that you can examine.
The original website for the technology implemented by the plugin / extension is https://www.pupillometry.it/
In both the original mEye and the plugin, it is difficult for calibration to be perfect (it is harder in the original website because calibration must be done manually, but has been automatized in the plugin). If testing is difficult due to lighting constraints, you can print out a picture of an eye and hold it up to the camera. If you put your hand over the pupil, the extension's data for blink probability should increase to 1.
Please let me know if you have any questions :)