Here are two suggestions, which probably won’t fix everything but maybe will make your life a bit easier:
- Do you know about the local debug mode? You don’t have to sync your experiment to pavlovia every time you change something just to find the next error. You can also just click the “Run in local browser” in the top panel, next to the runner buttons. This will send your experiment (js) directly to your browser without having to upload it. This way, you can finalize everything locally and you have to go through sync-hell only once in the very end.
- When, you are in sync-hell: This index.html folder is messing up your experiment. The actual index.html file inside that weird folder needs to be in your experiments directory, not in a subfolder. I guess this is the reason for the 403. So to work around that, go to the experiment settings → online and set “Export HTML” to “manually”. This way, index.html and the js file are only exported when you manually go to File → Export HTML. The advantage of this is, that you now can take the following steps to actually get everything in the right place: 1. Export HTML, 2. go to the experiment folder, get the files out of the index.html folder, and put them into the main folder and delete the index.html folder, 3. sync. Now (in case the sync works, to begin with) your project should be properly organized on pavlovia so you don’t get 403.