Website and documentation publishing¶
Ballet’s public site is published on GitHub Pages at
https://denyszorinets.github.io/ballet/:
/The landing page, a static page in site (plain HTML and CSS, no build step).
/docs/This documentation, built by Sphinx from docs.
Build and preview¶
make site # docs + site/ into _site/ (the published tree)
make site-serve # build, then serve _site on http://127.0.0.1:8001
make site copies site to _site/ and the built docs to
_site/docs/; links from the landing page to the documentation are
relative (docs/...), so the preview behaves like the published site.
Publishing¶
The .github/workflows/pages.yml workflow runs make site and
on every push to
develop(and when started by hand), deploys_siteto GitHub Pages: the site always shows the latestdevelop;on pull requests that change
site/,docs/or the workflow, only builds it. The strict documentation check (make docs-check) runs in CI on every pull request.
The repository’s Pages source is GitHub Actions (Settings → Pages);
the github-pages environment deploys only from develop.
Screenshots and animations¶
The README’s GIFs and screenshots (docs/_static/readme) and the
documentation’s screenshots (docs/_static/screenshots, also used by
the landing page) are recorded from a real Ballet, not drawn:
make media
scripts/media/record.sh starts a throwaway Ballet with the
fake model, scripts/media/record.mjs sets up a demo project
over the REST API and drives the web UI with Playwright (Chrome), and
scripts/media/gif.py turns the frames into GIFs with Pillow
(through uv). Re-record after UI changes so the pictures stay true.