Glossary ======== .. glossary:: rendition A resized or reformatted version of an uploaded image, generated by Wagtail on demand. Django Cast creates multiple renditions per image at different widths (1x, 2x, 3x) and in multiple formats (AVIF, JPEG by default) so that browsers can pick the best variant via ``srcset``. Rendition filters are built by ``cast.renditions`` and managed in bulk by the ``sync_renditions`` management command. StreamField A Wagtail field type that stores structured content as a sequence of typed blocks. In Django Cast, every ``Post`` has a ``body`` StreamField with two top-level sections -- ``overview`` (shown on index pages) and ``detail`` (shown on the full post page). Each section can contain heading, paragraph, code, image, gallery, embed, video, and audio blocks. See ``src/cast/blocks.py`` for the block definitions. chooser A Wagtail admin widget that lets editors pick a related object (image, audio, video) via a modal dialog. Django Cast provides ``AdminAudioChooser`` and ``AdminVideoChooser`` in ``src/cast/widgets.py`` alongside their telepath adapters so that the choosers work inside StreamField editors. collection A Wagtail grouping mechanism used to organize media assets. Django Cast's ``Audio``, ``Video``, and ``Transcript`` models inherit from Wagtail's ``CollectionMember``, which gives each instance a ``collection`` foreign key. Collections can be used to control permissions and to group media by site or purpose. facade mode A loading strategy for the Podlove podcast player on post detail pages. When ``podlove_load_mode`` is set to ``"facade"``, the server renders a static preview (cover art, title, play button, and progress bar) inside the ```` element. The actual player is loaded lazily via ``IntersectionObserver`` and injected into the existing container, avoiding heavy upfront JavaScript on page load. repository pattern An abstraction layer between the database and templates used to batch-load all data needed to render a page in minimal queries. Repository classes such as ``PostQuerySnapshot``, ``PostDetailContext``, ``BlogIndexContext``, and ``FeedContext`` (in ``src/cast/models/repository/``) pre-fetch images, renditions, audio, video, and metadata, then expose them as dictionaries that the template layer and StreamField blocks can look up by primary key.