$npx skillfedfor your agent

django-watchfiles

Make Django’s autoreloader more efficient by watching for changes with watchfiles.

Worth itPyPI Build ToolsReleased Sep 2025377.7K downloads / moMITPure Python

Decision gist · record as of 2026-08-14

pure-Python wheel — django_watchfiles-1.4.0-py3-none-any.whl
v1.4.0 · released 2025-09-22 · Python >=3.9 · 2 runtime deps: django, watchfiles

Yes. This is a drop-in replacement for Django's autoreloader with measurable performance and battery benefits, zero configuration overhead, and active maintenance. Install it if you run Django locally; the only gotcha is the WSL fallback to polling, which is still more efficient than the default. No security concerns, permissive license, and low install friction.AI-flagged interpretation of the facts on this page — verify before relying

Before you install

  • Requires Python 3.9+ and Django 4.2+.
  • On Windows Subsystem for Linux (WSL), watchfiles falls back to polling but remains more efficient than Django's default StatReloader.
  • Low friction: pure Python wheel with only two runtime dependencies (django and watchfiles).

License · maintenance · safety

MIT (permissive) — MIT license permits unrestricted use, modification, and distribution in both open-source and commercial projects with minimal obligations.

last release 2025-09-22 (326 days) · last repo commit 2026-08-13 · 195 stars

0 known vulnerabilities (OSV.dev, 2026-08-14) · 377,664 downloads/mo, #7,121 on PyPI

Verify before relying

pip install django-watchfiles

# Add to INSTALLED_APPS in settings.py:
INSTALLED_APPS = [
    ...,
    "django_watchfiles",
]

# Then run:
python manage.py runserver
  • Whether the 50ms detection latency and 1600ms batching window are configurable per-project or only via environment variables.
  • Behavior and performance characteristics on platforms other than macOS, Linux, and WSL.
Same gist for agents: .md · .json

What it is and what it does

django-watchfiles is a Django app that swaps out the default file-change watcher (StatReloader) with a more efficient one powered by the watchfiles library. Instead of polling the filesystem every second, it uses the operating system's native file-notification APIs (inotify on Linux, FSEvents on macOS, etc.) to detect changes instantly. This dramatically reduces CPU usage—benchmarks show ~10% CPU every other second for StatReloader versus 0% for WatchfilesReloader on a medium-sized project—and cuts reload latency from over one second to as little as 50 milliseconds.

Installation is minimal: add the package to INSTALLED_APPS and it automatically becomes Django's reloader. It batches rapid successive changes (within 50ms windows, up to 1600ms total) to avoid redundant reloads when formatters or git operations touch multiple files at once. The package is production-stable, supports Python 3.9–3.14 and Django 4.2–6.0, and carries no known vulnerabilities.

Use it for

  • Speed up local Django development by cutting autoreload latency from 1+ seconds to ~50ms, enabling faster iteration cycles.
  • Reduce laptop battery drain during development by eliminating the constant polling that StatReloader performs.
  • Prevent missed or duplicate reloads when multiple files change in quick succession (e.g., after git branch switches or formatter runs).
  • Replace Watchman or pyinotify without requiring external services or platform-specific dependencies.
  • Maintain efficient file watching on modern Python versions (3.10+) where pywatchman support had stalled.

Worth the install?

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

Worth it

Yes.

This is a drop-in replacement for Django's autoreloader with measurable performance and battery benefits, zero configuration overhead, and active maintenance. Install it if you run Django locally; the only gotcha is the WSL fallback to polling, which is still more efficient than the default. No security concerns, permissive license, and low install friction.

Install

django-watchfiles on PyPI

Before you install

Low friction: pure Python wheel with only two runtime dependencies (django and watchfiles). Actively maintained with recent commits; last release 326 days ago indicates steady but not frantic updates.

Requires Python 3.9+ and Django 4.2+. On Windows Subsystem for Linux (WSL), watchfiles falls back to polling but remains more efficient than Django's default StatReloader.

License in practice

MIT license permits unrestricted use, modification, and distribution in both open-source and commercial projects with minimal obligations.

Quickstart

pip install django-watchfiles

# Add to INSTALLED_APPS in settings.py:
INSTALLED_APPS = [
    ...,
    "django_watchfiles",
]

# Then run:
python manage.py runserver

Verify before relying

  • Whether the 50ms detection latency and 1600ms batching window are configurable per-project or only via environment variables.
  • Behavior and performance characteristics on platforms other than macOS, Linux, and WSL.

Package facts

LicenseMIT permissive
Python supportSupports the current Python release >=3.9
Install frictionLow. Pure-Python wheel
Runtime dependencies
2 packages
djangowatchfiles
MaintenanceActively maintained 326 days since the last release
Last repo commit
First released
Downloads377,664 / month, #7,121 on PyPI 30-day window, as of 2026-08-14
Known vulnerabilitiesNone known OSV.dev, checked 2026-08-14
Classifiers
Development Status :: 5 - Production/StableFramework :: Django :: 4.2Framework :: Django :: 5.0Framework :: Django :: 5.1Framework :: Django :: 5.2Framework :: Django :: 6.0Intended Audience :: DevelopersNatural Language :: EnglishOperating System :: OS IndependentProgramming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Programming Language :: Python :: 3.9Programming Language :: Python :: Implementation :: CPythonTyping :: Typed

Evidence: django_watchfiles-1.4.0-py3-none-any.whl

Tags

Capabilities
django autoreloader optimizationefficient file watching djangoreduce cpu usage runserverfaster django development reloadwatchfiles django integrationdjango file change detectionlow latency django autoreload
Topics
django-developmentfile-watchingperformance-optimization
PyPI keywords
Django

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 autoreloader optimization”

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

More Build Tools packages

packaging Worth it
PyPI · Build Tools · released Aug 2026

Provides reusable utilities for Python packaging interoperability, including version handling, specifiers, markers, requirements, tags, and metadata parsing according to standards like PEP 440 and PEP 425.

Apache-2.0 OR BSD-2-Clausepure Python · 3.9+
2.2Bdownloads / mo
tqdm Worth it
PyPI · Libraries · released Jul 2026

Wraps any iterable to display a real-time progress bar in the terminal or Jupyter notebook, showing iteration count, elapsed time, and estimated time remaining.

copyleftpure Python · 3.8+
648.6Mdownloads / mo
pip Worth it
PyPI · Build Tools · released Aug 2026

pip is the standard installer for Python packages, enabling you to download and install packages from the Python Package Index and other indexes into your Python environment.

MITpure Python · 3.10+
617.5Mdownloads / mo
hatchling Worth it
PyPI · Python Modules · released Aug 2026

Hatchling is a standards-compliant Python build backend that handles packaging, metadata, and distribution of Python projects when configured in a project's pyproject.toml file.

MITpure Python · 3.10+
484.2Mdownloads / mo
grpcio-tools Worth it
PyPI · Build Tools · released Jul 2026

Generates Python gRPC service stubs and message classes from Protocol Buffer definitions, enabling developers to build gRPC clients and servers.

Apache-2.0compiled wheel · 3.10+
278.2Mdownloads / mo
pre-commit Worth it
PyPI · Build Tools · released Aug 2026

pre-commit is a framework for installing and running git hooks written in any language before commits are made, automating code quality and validation checks across multi-language projects.

Install it if your team needs consistent, automated validation at commit time.

permissive licensepure Python · 3.10+
179.9Mdownloads / mo

See also pywatchman · watchfiles · django-browser-reload · watchgod · django-watchman · httpwatcher · pyinotify · pytest-watcher · livereload · sphinx-autobuild