Many Scratch projects are shared as .sb3 files (the official Scratch 3 project format), but sometimes you’ll receive a Scratch project packaged as a ZIP archive containing a project.json and associated assets (images, sounds, etc.). Converting that ZIP into a valid .sb3 file is straightforward because an .sb3 is simply a ZIP archive with a specific internal structure and a .sb3 file extension. Below is a concise, practical guide you can use as a draft article or how‑to.
If you have a folder that contains a Scratch project structure (e.g., you modified an extracted SB3): convert zip to sb3
project.json.zip -r project.zip . from inside the folder..zip file to .sb3.for file in os.listdir('.'): if file.endswith('.zip'): zip_to_sb3(file) Converting a ZIP of a Scratch Project into an
Save as convert.py and run in the folder with your ZIPs. Keep backups of original ZIPs until you’ve tested the SB3
Assuming files are in folder scratch_project/ with project.json and assets/:
cd scratch_project
zip -r ../project.sb3 .
Then open or rename as needed (the .zip produced is already correct; give it .sb3 extension if desired).