Replies: 3 comments 3 replies
-
A Chrome extension is an interesting idea to get a solution without having to wait for us, but risks breaking if we make internal changes to Pybricks Code. I've also seen a few attempts at integrating something directly into Pybricks Code.
Also, the web filesystem API's have come a long way since we started Pybricks Code, so maybe we could try saving files to the local file system instead of in the indexeddb and let <insert your favorite file syncing software here> handle the syncing between systems. Proper file system access would even handle more use cases than syncing files. Unfortunately, from time to time we have users lose all of their programs that weren't backed up because the browser decides to clear out the indexeddb without warning. |
Beta Was this translation helpful? Give feedback.
-
Thanks for referencing. You can try my forked pybircks-code, individual file can be uploaded or downloaded from a google drive folder. Based on our team's experience with 5th and 6th graders, this version has worked well, but some kids may need time to get familiar with this new steps. |
Beta Was this translation helpful? Give feedback.
-
Thanks for the response @dlech ! So I'm guessing it's not too difficult to run an instance of the IDE code (just without the blocks)? I haven't tried setting pybricks-ide up locally yet but also I'd like to have the blocks for now until my team gets older. I had some npm install issues but I haven't spend any time debugging it. So it sounds like the IndexedDB contents database is the source of truth for the files for now? I'll give the extension a shot and see how it goes. Thanks for the code @scatwang - will take a look as well and see if it works for us. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
Hi Pybricks team - love the software and I'm 100% convinced it helped us win our regional championships last year!
However, one thing that continues to drive me a bit crazy is the file sync between computers. I let each student have their own file but then we also try to make libraries of useful things to share between the files. Syncing these on the web IDE can get frustrating and lead to errors.
I know it's not on the priority list - but I'm interested in building a Chrome extension that would handle the sync. The basic idea would be to read the files out of IndexedDB and use Google AppData (or just a custom built endpoint) to sync between computers on a last-write basis (perhaps with file histories that could be restored at certain snapshots).
Of course, as my team gets older I'll move them off to VSCode and Github but I have an eight year old who is still not that comfortable with typing but OK with the blocks.
Would love to hear your thoughts (and advice) on this idea and if it would be enough or if the IndexedDB storage isn't quite what I need and there's another place where the files are truly kept?
Beta Was this translation helpful? Give feedback.
All reactions