How to bulk-download all your pojects
With the project hosting shutdown in July, many of you have asked for a way to bulk-download your projects: this thread is for you.
We’ve created a python script that you can run that will download all your projects, and also download all your assets from the asset manager into a glitch-assets
folder for each project.
How long do I have?!
Project hosting will shut down in July, but you will continue to be able to download your projects for the entirety of 2025. So you have some time yet.
Where to get it
Download the script here: https://raw.githubusercontent.com/Pomax/glitch-bulk-downloader/refs/heads/main/download.py
(the script itself lives in the https://github.com/Pomax/glitch-bulk-downloader GitHub repository)
What do I need to run this?
1. You need Python 3.x
You will need Python 3 installed. If you’re on linux or macos, this will almost certainly already be the case, and you should be able to use python3
without installing anything. On Windows, you may need to go to the Windows Store, find Python, and install it first. This will add the python
command (note that on Windows there is no “3” at the end). Alternatively, you can visit Python Releases for Windows | Python.org and download the installer for the current version of Python 3 that’s appropriate to your Windows version.
2. You will also want tar
In order to unpack your projects and put them in properly named subfolders, you will need the tar
command to be available. If you’re on Linux or MacOS, you’re (again) already good to go, but if you’re on Windows you will need to “install” tar
.
installing tar
on Windows
If you use git
, the easiest way to install tar
is to just run the windows git installer, and tell it to install the GNU tools. After that finishes you should be able to confirm tar
is available by opening a command prompt or powershell and just running tar --help
.
If you don’t, you can also exclusively install tar
by heading over to Tar for Windows and clicking on the binary setup link. This will take you to a Sourceforge (the place to be for open source before GitHub showed up) download page, which should automatically download the setup program.
Run the setup, and then you’ll need to update your windows PATH to include the C:\Program Files (x86)\GnuWin32\bin
folder: you can either do this persistently (instructions are easily found on the web for that), or you can run set PATH=%PATH%;"C:\Program Files (x86)\GnuWin32\bin"
in your command prompt or powershell before you run the download script.
How to use the script
The script will download your regular projects into an ./active
folder, and will download all your archived projects into an ./archived
folder. It can do this in two “modes”:
Interactive mode
You can invoke the script by calling:
python3 download.py
(or python download.py
on Windows)
Run in this way, the script will ask you to provide your Glitch user id and token. Both of these can be found by going to glitch.com, opening your dev tools, and typing:
const { id, persistentToken: token} = JSON.parse(localStorage.cachedUser);
console.log(id, token);
This will log something along the lines of 123456 '3a6f55bd-8206-43d3-a149-176f13f32c45'
, where the first number is your id, and the second string is your token.
Automatic mode
You can also run the script with those values directly, e.g.
python3 download.py 123456 '3a6f55bd-8206-43d3-a149-176f13f32c45'
In which case the script won’t ask for anything and will just get to downloading.
Optional runtime flags
The script supports two runtime flags, with flags needing to come after your user id and token:
--no_assets
, which will make the script download your project, but not download the associated assets, and--no-skip
, which will make the script re-download any projects you already downloaded if you run it more than once.
Replacing CDN URLs in your source code
Asset URLs are not automatically replaced in any source code, mostly because that’s much harder than you’d think it’d be, so you will still need to replace CDN URLs in your code with relative links to the ./glitch-assets
folder that all your project’s assets were downloaded into.
Known issues
While this script will download your projects and their associated assets, some assets may be on a very old CDN that currently has an expired certificate, so Python will refuse to download those assets out of security concerns (note that if your project’s 8 years old, that might affect you. If not, it probably won’t).
We’re looking into updating that certificate, but if enough folks run into this we can also add a flag to the download script to bypass security for those assets for folks who think that’s an acceptable risk.
Questions or comments
If you have any questions about this script, or suggestions on how to improve it, feel free to leave a reply here in the thread, or file an issue over on GitHub · Where software is built