Static snapshots of Wagtail’s bakerydemo across past versions of the CMS.
- v7.4: 2026-02-02
- v7.3: 2026-02-02
- v7.2: 2025-11-05
- v7.1: 2025-08-04
- v7.0: 2025-05-07
- v6.4: 2025-02-04
- v6.3: 2024-11-01
- v6.2: 2024-08-01
- v6.1: 2024-05-01
- v6.0: 2024-02-07
- v5.2: 2023-11-01
- v5.1: 2023-08-01
- v5.0: 2023-05-02
- v4.2: 2023-02-01
- v4.1: 2022-11-01
- v4.0: 2022-08-31
- v3.0: 2022-05-16
- v2.16: 2022-02-07
- v2.0: 2018-02-28
Due to the snapshots being static, there are a few clear limitations:
- Content / data is not editable. Form fields can be updated, but saving the changes won’t work.
- Parts of the CMS relying on API calls only show their most basic functionality, such as:
- Choosers
- Live previews
First get a new bakerydemo copy set up:
mkdir v7.4
cd v7.4
git clone git@github.com:wagtail/bakerydemo.git
cd bakerydemo
# Remove the bakerydemodb from the list.
vim .gitignore
# Edit the wagtail requirement to target the desired version.
# Depending on the selected version, you may also need to switch to a specific commit of the bakerydemo, or make arbitrary changes to the code.
vim requirements/base.txt
uv venv
source venv/bin/activate
uv pip install -r requirements.txt
uv run ./manage.py migrate
uv run ./manage.py load_initial_data
uv run ./manage.py collectstatic
uv run ./manage.py shell < ../../evergreen/demo_data.py
uv run ./manage.py import_redirects --src ../../evergreen/redirects.csvThen manually create additional data:
- Redirects
Make sure to configure the demo correctly for static exports:
cp -R ../evergreen/static_demo bakerydemoAnd edit the dev.py settings to add:
MIDDLEWARE.append("static_demo.middleware.AutoLoginMiddleware")
WAGTAILADMIN_BASE_URL = "https://static-wagtail-v7-4.netlify.app"Then:
uv run ./manage.py runserver 0:8000Then prepare the backup,
cd v7.4
cp ../evergreen/backup.sh .
./backup.sh --user admin --path /admin --site static-wagtail-v7-4
# Make sure to update the urlpatterns before running each script.
./backup.sh --user german --path /admin-german --site static-wagtail-v7-4
./backup.sh --user arabic --path /admin-arabic --site static-wagtail-v7-4
./backup.sh --user editor --path /admin-editor --site static-wagtail-v7-4
./backup.sh --user dark --path /admin-dark --site static-wagtail-v7-4
# See which files are taking up a lot of place.
cd static-wagtail-v7-4
du -h admin-*/*/* | sort -h
rm -rf admin-*/pages/add
mogrify -quality 35 media/images/*.avif
for f in media/images/*.jpg; do ~/.bin/jpegli/build/tools/cjpegli -q 45 "${f}" "${f}"; done
# Final touches
netlify deploy --dir .
zip -r static-wagtail-v7-4.zip static-wagtail-v7-4The last step of the backup script is to copy API response payloads, and set up redirects in Netlify so the right payload is served based on query parameter. This is only needed for the page explorer – other parts of the CMS will work with any static files server.
See also: Wagtail UI experiments.