Uploading my Psychopy task to Pavlovia?

OS (Win11)
PsychoPy version 2026.1.3

Hi everyone,

I’m trying to upload my Psychopy task to Pavlovia so we can run it online. I followed this nice and easy to follow video by PsychoPy but when I try to pilot the task after following the instructions, I get an error webpage saying:

403 Forbidden | nginx

I started by using PsychoPy version 2023.2.3, which my task was built on; when that gave the 403 error message, I followed all the instructions again with the newest version of PsychoPy as of 5/12/26 (version 2026.1.3). That resulted in the same error message.

Does anyone know where I might be going wrong / if there are new steps that I need to do in addition to those in the video? It was posted 5 years ago after all. Any help is appreciated!

Thank you.

Jason.t.katz@stonybrook.edu

If you click on View Code from the project page, has anything uploaded? Is there an index.html file and two JS files? Does the project page give your version?

Try switching to Inactive and then Active again.

Make sure you don’t have html in your link.

When I clicked view code, nothing was uploaded. I switched from Pilot to Inactive and back to Pilot; I also tried to switch from Inactive to Running. I was still getting [403 Forbidden | nginx] when I tried to pilot the task. And there was still nothing there when I click View Code.

I opened my task locally in PsychoPy and hit Sync project with Pavlovia. It said “This file doesn’t belong to any existing project.” and it presented me with the option to “Create a project.”
After I clicked on that, it created a project and THIS TIME, all my files ARE there when I click View Code. Great!
Unfortunately, I’m not out of the woods yet; when I click Pilot on Pavlovia, a window appears saying “[Init] Please wait a moment.” This message does not go away. I tried waiting a while and trying again…still no luck.

Some more information:
When I open my project locally in Psychopy (2026.1.3) and click Sync project with Pavlovia (even though I hit Create a Project the first time) I’m still given the message: “This file doesn’t belong to any existing project” and I get the option, “Create a project.” I guess Pavlovia is not syncing properly with Psychopy after all.

Thanks for your initial response! I’d really appreciate any more help you can offer.

Is your local folder a cloud storage folder instead of on your hard drive?

Here are a couple of tips that might help.

Hi Jason,

For the initializing screen here are some existing threads on this issue and how you can approach it Experiment won't play, stuck on "initializing" in Pavlovia - #2 by Becca

What I would recommend if when on that page right click and select “inspect” - select the “console” tab an any error messages will be displayed in there - you can then show those error messages in this thread for further support.

Best wishes,

Becca

Yes! I was using a cloud storage folder. I followed your steps to sync the GitLab repository to a new (truly) local folder on my hard drive. I’m getting successful sync messages for pulling from remote as well as for pushing to remote. Thank you.

Let me try Becca’s advice and check the console for errors.

Hi Becca!

Here’s what I can see in the console when I click inspect:

Uncaught SyntaxError: Identifier ‘convert_to_psychopy_rgb’ has already been declared.

I’ll also note here that when I start up the task locally in Psychopy, I am presented with this error message:

Traceback (most recent call last):
File “C:\Program Files\PsychoPy\lib\site-packages\wx\lib\agw\aui\framemanager.py”, line 8513, in OnRender
self.DrawPaneButton(dc, part, point)
File “C:\Program Files\PsychoPy\lib\site-packages\wx\lib\agw\aui\framemanager.py”, line 8030, in DrawPaneButton
self._art.DrawPaneButton(dc, self._frame, part.button.button_id,
File “C:\Program Files\PsychoPy\lib\site-packages\wx\lib\agw\aui\dockart.py”, line 765, in DrawPaneButton
dc.SetBrush(wx.Brush(StepColour(self._inactive_caption_colour, 120)))
File “C:\Program Files\PsychoPy\lib\site-packages\wx\lib\agw\aui\aui_utilities.py”, line 60, in StepColour
r, g, b, a = c.Red(), c.Green(), c.Blue(), c.Alpha()
AttributeError: ‘str’ object has no attribute ‘Red’

Despite this error message, the task runs perfectly locally on Psychopy. Thanks!

So the issue is that you have a variable c which you are treating as a colour dictionary (I think) but it is actually a string (or possibly undefined). Presumably the function mentioned earlier is how it gets created, and that is the root cause.