$npx skillfedfor your agent

django-ranged-response

Modified Django FileResponse that adds Content-Range headers.

SkipPyPI Dynamic ContentReleased Jul 2017166.3K downloads / moMITSource build

Decision gist · record as of 2026-08-14

sdist only — django-ranged-response-0.2.0.tar.gz · builds from source
v0.2.0 · released 2017-07-18

No. The package is abandoned (last release 2017-07-18, last commit 2022-11-10) with no active maintenance. Modern Django versions likely have native range request support or better alternatives. Before installing, verify whether your Django version already handles Content-Range headers natively, and check compatibility with your current Python and Django versions.AI-flagged interpretation of the facts on this page — verify before relying

Before you install

  • Requires Django >= 1.4; file handle must be opened before passing to RangedFileResponse.
  • High install friction with no runtime dependencies.
  • Package is abandoned—last release 2017-07-18 and last commit 2022-11-10 with no active maintenance.

License · maintenance · safety

MIT (permissive) — MIT license is permissive and imposes no restrictions on use, modification, or distribution.

last release 2017-07-18 (3314 days) · last repo commit 2022-11-10 · 20 stars

0 known vulnerabilities (OSV.dev, 2026-08-14) · 166,309 downloads/mo, #10,498 on PyPI

Verify before relying

pip install django-ranged-response

from ranged_fileresponse import RangedFileResponse

def some_proxy_view(request):
    filename = 'myfile.wav'
    response = RangedFileResponse(request, open(filename, 'r'), content_type='audio/wav')
    response['Content-Disposition'] = 'attachment; filename="%s"' % filename
    return response
  • Compatibility with modern Django versions (1.4 was released in 2012; current support unclear)
  • Whether the underlying Django ticket #22479 has since been resolved in Django itself
  • Python version compatibility (requires_python field is empty in fact sheet)
Same gist for agents: .md · .json

What it is and what it does

django-ranged-response wraps Django's FileResponse to add proper HTTP Content-Range header handling for authenticated file downloads. When a browser sends a range request (HTTP_RANGE header), the package ensures the response includes the correct Content-Range header, allowing browsers to properly stream audio and video files instead of failing or re-downloading from the start.

The package was created to work around a Django limitation documented in ticket #22479. It has no runtime dependencies and integrates directly into your Django views. However, the project is abandoned—last released in 2017 with no active maintenance—so compatibility with modern Django and Python versions is uncertain.

Use it for

  • Serve audio files without playback issues caused by missing range request support in older Django.
  • Enable video streaming in authenticated views where users can seek within the file.
  • Support resumable downloads in browsers that send HTTP_RANGE headers for partial content.
  • Work around Django's historical lack of Content-Range header support in FileResponse.

Worth the install?

AI-flagged interpretation of the facts on this page. Verify before relying on it.

Skip

No.

The package is abandoned (last release 2017-07-18, last commit 2022-11-10) with no active maintenance. Modern Django versions likely have native range request support or better alternatives. Before installing, verify whether your Django version already handles Content-Range headers natively, and check compatibility with your current Python and Django versions.

Install

django-ranged-response on PyPI

Before you install

High install friction with no runtime dependencies. Package is abandoned—last release 2017-07-18 and last commit 2022-11-10 with no active maintenance.

Requires Django >= 1.4; file handle must be opened before passing to RangedFileResponse.

License in practice

MIT license is permissive and imposes no restrictions on use, modification, or distribution.

Quickstart

pip install django-ranged-response

from ranged_fileresponse import RangedFileResponse

def some_proxy_view(request):
    filename = 'myfile.wav'
    response = RangedFileResponse(request, open(filename, 'r'), content_type='audio/wav')
    response['Content-Disposition'] = 'attachment; filename="%s"' % filename
    return response

Verify before relying

  • Compatibility with modern Django versions (1.4 was released in 2012; current support unclear)
  • Whether the underlying Django ticket #22479 has since been resolved in Django itself
  • Python version compatibility (requires_python field is empty in fact sheet)

Package facts

LicenseMIT permissive
Python supportNot specified
Install frictionHigh. Source build required
Runtime dependenciesNone
MaintenanceAbandoned 3,314 days since the last release
Last repo commit
First released
Downloads166,309 / month, #10,498 on PyPI 30-day window, as of 2026-08-14
Known vulnerabilitiesNone known OSV.dev, checked 2026-08-14

Evidence: django-ranged-response-0.2.0.tar.gz

Tags

Capabilities
django file range requestshttp content-range header djangodjango ranged file responsehttp range request supportdjango partial content downloadsafari audio streaming django
Topics
file-streamingdjango-views

Let your AI agent find packages like this

Example. Real query, live index.

You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.

wish › “django file range requests”

Give your agent the search over MCP, or paste the wish link into any chat.

More Dynamic Content packages

MarkupSafe Worth it
PyPI · Dynamic Content · released Sep 2025

MarkupSafe provides a text object that escapes special characters so untrusted strings can be safely embedded in HTML and XML without injection attacks.

BSD-3-Clausecompiled wheel · 3.9+aging
797.1Mdownloads / mo
Jinja2 Worth it
PyPI · Dynamic Content · released Mar 2025

Jinja2 is a templating engine that renders dynamic content by combining templates with Python-like syntax and data, supporting template inheritance, macros, autoescaping, and sandboxed execution.

BSD-3-Clausepure Python · 3.7+aging
718.6Mdownloads / mo
soupsieve Worth it
PyPI · Python Modules · released Aug 2026

Soupsieve is a CSS selector library designed to work with Beautiful Soup 4 to select, match, and filter HTML and XML elements using modern CSS selectors from CSS level 1 through CSS level 4 specifications.

Install it if you use Beautiful Soup for HTML or XML parsing and want modern CSS selector support.

MITpure Python · 3.10+
428.6Mdownloads / mo
Werkzeug Worth it
PyPI · Application Frameworks · released Apr 2026

Werkzeug is a WSGI utility library providing request/response objects, URL routing, an interactive debugger, HTTP utilities, and a development server for building web applications.

BSD-3-Clausepure Python · 3.9+
268.1Mdownloads / mo
Flask Worth it
PyPI · Application Frameworks · released Feb 2026

Flask is a lightweight WSGI web application framework for building web applications in Python, from simple single-page sites to complex multi-route applications.

BSD-3-Clausepure Python · 3.9+
211.4Mdownloads / mo
Mako Worth it
PyPI · Dynamic Content · released Aug 2026

Mako compiles Python-embedded templates into Python modules for fast rendering, supporting layout inheritance, custom functions, and direct Python expressions within template syntax.

MITpure Python · 3.10+
201.7Mdownloads / mo

See also playsound · audiofile · django-queryset-csv · pyrfc6266 · fake-headers · drf-excel · zipstream-new · django-private-storage · zipstream