Middleware and templatetag for Django to utilize HTTP/2 push for assets included in a Django template. The
middleware injects a Link header in each response if there are files to be pushed to the client. All files in the
template which are suitable for HTTP/2 push should be included with the
staticpush templatetag instead of the
static templatetag. The former simply augments the later and registers the resulting static URL with the
This package currently supports Apache2 webservers with
mod_http2 enabled, as the actual HTTP/2 push is offloaded to the
This is ALPHA code. Do not use in production! It only serves as a proof-of-concept for now.
Conditional HTTP/2 push is not supported yet. This means that your site will actually perform worse than over HTTP/1.1 because each response will trigger a push of all incldued assets, irrespective of any cache on the webbrowser.
pip install django-static-push
To run the all tests run:
Note, to combine the coverage data from all the tox environments run:
set PYTEST_ADDOPTS=--cov-append tox