A Wagtail module for managing video and audio files within the admin interface, similar to wagtail.documents.
Wagtailmedia is a Django and Wagtail module that adds comprehensive audio and video file management capabilities to the Wagtail CMS admin interface. It solves the problem of handling media files in Wagtail by providing a dedicated library, chooser panels, and StreamField blocks specifically for video and audio, similar to how wagtail.documents handles documents. It enables developers to easily upload, organize, and embed media content within their Wagtail-powered sites.
Wagtail developers and content managers who need to manage and embed audio or video files within their CMS-powered websites. It's particularly useful for teams building media-rich platforms like news sites, educational portals, or marketing websites with Wagtail.
Developers choose Wagtailmedia because it seamlessly integrates with Wagtail's admin UI, providing a native-feeling media management experience without requiring custom builds. Its extensibility through custom models, API support, and hooks allows for tailored implementations while maintaining consistency with Wagtail's ecosystem.
A Wagtail module for managing video and audio files within the admin
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Provides a native-feeling media library and chooser panel within the Wagtail admin, mirroring the documents module for consistent user experience, as highlighted in the README's integration examples.
Supports media as Django model fields with MediaChooserPanel or within StreamField blocks like AudioChooserBlock, enabling versatile content modeling for pages and structured data.
Allows defining custom Media models and forms via WAGTAILMEDIA settings, and offers hooks such as construct_media_chooser_queryset to tailor QuerySets, as detailed in the settings and hooks sections.
Exposes media items through Wagtail's API v2 with a configurable MediaAPIViewSet, facilitating headless CMS setups where media needs to be consumed via APIs.
Requires manual configuration to serve media files in production, as Django's static file serving is only for development, adding deployment overhead not handled out-of-the-box.
Setting up custom Media models and forms involves dotted notation in settings and understanding Django's modelform_factory, which can be error-prone and complex for less experienced developers.
Focuses solely on audio and video files; for other media like images or documents, developers must rely on separate modules or custom solutions, limiting all-in-one media management.
The README explicitly warns against naming a field 'media' due to conflicts with Wagtail's admin assets, a subtle but frustrating issue that can break the UI if overlooked.