django-vite
Integration of Vite in a Django project.
Decision gist · record as of 2026-08-14
Yes, if you are building a Django project with modern JavaScript and want Vite's development experience (fast rebuilds, HMR) without ejecting from Django. The package is stable, has low install friction, and carries no security vulnerabilities. The aging maintenance status is not a blocker—the last commit was recent (2025-05-09) and the package is relatively simple. Install it if your workflow requires Vite; skip it if you are using Django's default static file handling or a different frontend build tool.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires a separate Vite configuration file (vite.config.js) and Node.js toolchain; Django-vite is the Python integration layer only.
- Low install friction; pure Python wheel with only Django as a runtime dependency.
- Last commit was 2025-05-09 and the package is classified as aging, indicating it is maintained but not actively developed.
License · maintenance · safety
Apache License, Version 2.0 (permissive) — Licensed under Apache License, Version 2.0 (permissive). You can use, modify, and distribute this package freely in commercial and private projects with minimal restrictions.
last release 2025-02-23 (537 days) · last repo commit 2025-05-09 · 836 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 1,095,601 downloads/mo, #4,374 on PyPI
Alternatives
Verify before relying
pip install django-vite
# In settings.py
INSTALLED_APPS = [
'django_vite',
...
]
DJANGO_VITE = {"default": {"dev_mode": True}}
# In template
{% load django_vite %}
{% vite_hmr_client %}
{% vite_asset 'path/to/script' %}- Specific performance impact of HMR client on development server startup time or memory usage
- Compatibility with specific Vite plugins beyond React refresh mentioned in the documentation
- Whether the package works with Django versions prior to 3.2 despite classifiers listing 3.2 as minimum
What it is and what it does
Django-vite bridges Django's static file system with Vite, a modern frontend build tool. It provides template tags to load JavaScript and CSS assets, with automatic hot module replacement (HMR) during development and manifest-based asset resolution in production. The package handles the communication between Django's template layer and Vite's dev server or compiled manifest, letting you write modern ES6 modules and use Vite's fast rebuild cycles without leaving Django.
The package is configured through Django settings and works by either serving assets directly from Vite's dev server in development mode (enabling HMR) or reading a manifest.json file in production to resolve compiled asset paths. It supports custom attributes on script tags, React refresh, and loading assets from CDNs via custom manifest clients. The single runtime dependency is Django itself.
Use it for
- Enable hot module replacement for JavaScript during Django development without rebuilding the entire frontend on each change
- Manage CSS and JavaScript dependencies using Vite's ES6 module system while serving them through Django templates
- Build and optimize frontend assets for production using Vite's tree-shaking and code-splitting, then reference them in Django via manifest.json
- Serve frontend assets from a CDN like S3 by subclassing the manifest client to fetch compiled assets from non-standard sources
- Support React development with automatic HMR using the vite_react_refresh template tag
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you are building a Django project with modern JavaScript and want Vite's development experience (fast rebuilds, HMR) without ejecting from Django.
The package is stable, has low install friction, and carries no security vulnerabilities. The aging maintenance status is not a blocker—the last commit was recent (2025-05-09) and the package is relatively simple. Install it if your workflow requires Vite; skip it if you are using Django's default static file handling or a different frontend build tool.
Install
django-vite on PyPI
Before you install
Low install friction; pure Python wheel with only Django as a runtime dependency. Last commit was 2025-05-09 and the package is classified as aging, indicating it is maintained but not actively developed.
Requires a separate Vite configuration file (vite.config.js) and Node.js toolchain; Django-vite is the Python integration layer only.
License in practice
Licensed under Apache License, Version 2.0 (permissive). You can use, modify, and distribute this package freely in commercial and private projects with minimal restrictions.
Quickstart
pip install django-vite
# In settings.py
INSTALLED_APPS = [
'django_vite',
...
]
DJANGO_VITE = {"default": {"dev_mode": True}}
# In template
{% load django_vite %}
{% vite_hmr_client %}
{% vite_asset 'path/to/script' %}
Verify before relying
- Specific performance impact of HMR client on development server startup time or memory usage
- Compatibility with specific Vite plugins beyond React refresh mentioned in the documentation
- Whether the package works with Django versions prior to 3.2 despite classifiers listing 3.2 as minimum
Package facts
| License | Apache License, Version 2.0 permissive |
| Python support | Not specified |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 1 packageDjango |
| Maintenance | Aging 537 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 1,095,601 / month, #4,374 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Framework :: DjangoFramework :: Django :: 3.2Framework :: Django :: 4.0Framework :: Django :: 4.1Framework :: Django :: 4.2License :: OSI Approved :: Apache Software LicenseProgramming Language :: PythonProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9 |
Evidence: django_vite-3.1.0-py3-none-any.whl
Tags
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 vite integration”
- django-viteIntegrates Vite, a modern JavaScript build tool, into Django projects…
- kenbunKenbun statically discovers and analyzes applications in Python and…
- django-webtestIntegrates WebTest with Django's testing framework to enable…
Give your agent the search over MCP, or paste the wish link into any chat.
More Dynamic Content packages
MarkupSafe provides a text object that escapes special characters so untrusted strings can be safely embedded in HTML and XML without injection attacks.
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.
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.
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.
Flask is a lightweight WSGI web application framework for building web applications in Python, from simple single-page sites to complex multi-route applications.
Mako compiles Python-embedded templates into Python modules for fast rendering, supporting layout inheritance, custom functions, and direct Python expressions within template syntax.
See also django-tailwind · django-js-asset · Flask-Assets · django-webpack-loader · django-jinja · django-pipeline · django-compressor · webassets · django-components · crispy-bootstrap3