Skip to main content

Django staticfiles extension for HTTP/2 push

Project description

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 vanilla static templatetag. The former simply augments the later and registers the resulting static URL with the middleware.

This package currently supports Apache2 webservers with mod_http2 enabled, as the actual HTTP/2 push is offloaded to the webserver.


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
PYTEST_ADDOPTS=--cov-append tox


0.1.0 (2016-01-29)

  • First release on PyPI.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for django-static-push, version 0.1.0
Filename, size File type Python version Upload date Hashes
Filename, size django_static_push-0.1.0-py2.py3-none-any.whl (6.3 kB) File type Wheel Python version py2.py3 Upload date Hashes View
Filename, size django-static-push-0.1.0.tar.gz (10.3 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page