Help with getting jsPsych experiment onto Pavlovia


I have tried to follow the guidance on how to put my jsPsych experiment onto Pavlovia, but so far I have been really struggling with this.

Does anybody have a simpler (or more detailed) guide that will take me through the process than this one…?

I am a confident coder, but I am completely new to doing online research and I am finding it difficult to get things up and running. My code works perfectly when I run it on my local PC, but I am really feeling out of my depth when it comes to the online aspects.

Any extra help would be very much appreciated.

Thanks in advance,


Hi Cai,

I have to admit that this is an area that I am less experienced with - let me tag some more knowledgeable JS people here who might be more helpful than I! @thomas_pronk @sotiri


Hi Cai,

Could you give me a pointer as to where you’re getting stuck?

Best, Thomas

Hi Thomas,

I have managed to add the extra code to my jsPsych script, set up a new project in Pavlovia, downloaded and installed GitLab version control… I then got stuck when the notes asked me to…

" You then need to clone the newly created, empty project onto your local machine by following the command line instructions given on the project page under the header “Create a new repository” ."

I could not find the header Create New Repository.

Also, when installing GitLab version control software, I had to guess which would be the most useful/appropriate options.

As I said, all of this is a bit alien to me and althoug hthe guidance seems fairly simple to follow, the reality is quite different. I guess this is probably because my knowledge of how all of this works is very limited indeed. Thiis is why I was asking if any other users had produced an easier to follow (or more detailed) guide on getting from jsPsych script to online experiment hosted on Pavlovia. I suspect that once I have resolved one issue, the next will be not far behind it.

Any extra help on this woudl be very much appreciated.

many thanks,


Thanks for the pointers! As far as I know there are no other guides for this, but we could improve this one; that’s why I’m very happy with your FB. For efficiency I’m bundling up some jsPsych topics to address in one go (then I don’t have to task switch that often; less overhead). Update soon!

Thank you Thomas - I really appreciate it.

Love PsychoPy and jsPsych (as well as Pavlovia), and I really want to make it work.

Have a good weekend,


On it. Some more questions so I don’t start making weird assumptions:

Header "Create new repository"
This refers to Figure 3. I’ll do the following:

  • Be more explicit that it’s a figure, not a header
  • Put the actual text that’s in that figure in the web-page, so you can copy-paste it

Gitlab version control software
Could you give me a link to that software?

This is the link off the Pavlovia-jsPsych page to the GitLab version control software…

I’m not sure I follow your other comment.

I have a feeling either we are looking at different instructions (I have no Figure 3 on the one I’m looking at), or I have just completely missed something. This whole section is difficult to follow to be honest.

The instructions say…

" You then need to clone the newly created, empty project onto your local machine by following the command line instructions given on the project page under the header “Create a new repository” ."

But I can’t find ‘Create a new repository’ anywhere and I’m not sure what I am being asked to do here. That it is telling me to follow the command line instructions suggests that I am supposed to enter some command line instructions somewhere, but I don’t know where (or even which piece of software I am supposed to be doing this in).


This is the page I’m looking at. Same for you?

OK, that is actually already a little more helpful than the one I was looking at.

However, my screen does not look like Figure 3 when I get to that point. Leave it with me and I’ll try it again and come back to you if I get stuck again…

Good luck! If it doesn’t work out; I just managed to get a jsPsych experiment cloned via a different approach (using the GitHub GUI client), but that’s a bit less elegant and requires different steps. Could you tell me what page you were looking at for instructions?

The link is in my original post…

Sorry; I hadn’t clicked it, because I assumed that it was the same page I was looking at. Assumptions assumptions :). I’ll make sure this page gets replaced by a redirect to the correct documentation. Thanks for the info!

I just tried to enter the relevan text into the command line and this is as far as I got…

As you can see, I first got given an ECDSA key (I don’t know what this is, or what it does).
I then said that I woudl like to continue.
Then I tried endtering the key.
Then I just tried to respond ‘yes’.

The upshot was that I got kicked out and told that it coudl not read from the repository.

It feels like I missed out a stage here.

I don’t know if this is relevant, but on the project page, I am being told that I need to ‘add an SSH key to my profile’. Unfortunately, I don’t know what this means or how to do it.

I am struggling a bit to understand the terminology as well as the underlying theory of what is actually happening here. I think that if I understood what I was supposed to be doing and what a successful attempt would look like then I would be in a better position to follow the guidance.

OK, I have been making quite a bit of progress with this now (thanks for the new guide - it is much better). However, I am still getting an 403 Error message when I try to pilot the study.

Here is a link to the pilot…

Here is a link to the study page…

And here is a link to the gitlab page…

As you will see, I have managed to upload my experiment to GitLab, also upload all of the relevant folders to the same. I am guessing that the error is due to my coding. Although I have followed the guidance, I am wondering if maybe I need to make some changes to the header to link to the correct files/folders.

Any advice would be much appreciated.



I have now tried a few things out (changed the project to inactive and back to piloting, changed the name of the main html file to ‘index.html’, started from scratch and uploaded the whole thing as a new project, changed the details in the header to match the formatting in the example), but I still get the 403 Forbidden nginx error message.

Any help would be much appreciated here. I am stuck and drawing a blank.

Link to new project page on gitlab:

Link to new project on Pavlovia:

I can’t access you experiment I’m afraid, could you make me a member in gitlab? (tpronk). Meanwhile a guess: is you experiment set to piloting/running?

Hi Thomas,

I can’t see how make you a member in GitLab (sorry).

Also, the project is currently piloting on Pavlovia.

Hi Thomas,

I am still struggling with this. I have now added the updated plugins (pavlovia and jquery) to the plugins folder, and updated the links in the code to these folders, but I still getting a 403 error message when I try to run the experiment off Pavlovia.

I am happy to add you to the relevant project, but I don’t know how to do that. If you can tell me how, then I can do so right away so that you can take a look at what I have done so far.

I have tried everything I can think of, but am still coming up short. Any help would be much appreciated.