$npx skillfedfor your agent

django-components

A way to create simple reusable template components in Django.

Worth itPyPI Application FrameworksReleased Jun 2026160.6K downloads / moMITPure Python

Decision gist · record as of 2026-08-14

pure-Python wheel — django_components-0.151.1-py3-none-any.whl
v0.151.1 · released 2026-06-25 · Python <4.0,>=3.10 · 3 runtime deps: Django, djc-core, typing-extensions

Yes. django-components is actively maintained, has low install friction, carries a permissive MIT license, and solves a real problem—modular UI composition in Django—without requiring you to leave the Django ecosystem or adopt a separate frontend build system. It's suitable for both small and large projects and has no known security vulnerabilities.AI-flagged interpretation of the facts on this page — verify before relying

Before you install

  • Requires Django 5.2 or 6.0 and Python 3.10 or later; must be installed in a Django project.
  • Low friction install with a pure-Python wheel.
  • Actively maintained with a release within the last 50 days.

License · maintenance · safety

MIT (permissive) — MIT license is permissive; you can use, modify, and distribute this package with minimal restrictions in commercial or open-source projects.

last release 2026-06-25 (50 days)

0 known vulnerabilities (OSV.dev, 2026-08-14) · 160,562 downloads/mo, #10,655 on PyPI

Verify before relying

pip install django-components

from django_components import Component, register

@register("my_component")
class MyComponent(Component):
    template = "<div>{{ message }}</div>"
    def get_template_data(self, args, kwargs, slots, context):
        return {"message": kwargs.get("message", "Hello")}

# In template: {% component "my_component" message="World" %}
  • Performance characteristics when rendering many components or deeply nested component trees.
  • Browser compatibility details beyond the stated testing across Chromium, Firefox, and WebKit.
  • Whether djc-core is a separate package or an internal dependency, and what it provides.
Same gist for agents: .md · .json

What it is and what it does

django-components is a UI framework that brings component-based architecture to Django templates. It lets you define reusable components as Python classes, each bundling its own HTML template, CSS styles, and JavaScript behavior into a single, self-contained unit. You register a component once and then use it anywhere in your templates via a simple tag syntax, passing data and slots just like in modern frontend frameworks.

The package extends Django's template system with Python expressions, literal data structures, spread operators, and slot-based composition, making it possible to build modular interfaces without leaving Django. Components can load their assets from files or define them inline, and they support dynamic data binding through get_template_data, get_js_data, and get_css_data methods. It's designed for projects of any size and is tested across major browsers.

Use it for

  • Build a reusable product card component that encapsulates display logic, styling, and interactivity in one place.
  • Create a form component library where each field type (text input, dropdown, checkbox) is self-contained with its own validation and styling.
  • Compose page layouts using slot-based components to share headers, sidebars, and footers across templates.
  • Develop a design system where UI patterns (buttons, modals, tables) are versioned and shared across multiple Django projects.
  • Reduce template duplication by extracting repeated HTML/CSS/JS patterns into registered components.

Worth the install?

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

Worth it

Yes.

django-components is actively maintained, has low install friction, carries a permissive MIT license, and solves a real problem—modular UI composition in Django—without requiring you to leave the Django ecosystem or adopt a separate frontend build system. It's suitable for both small and large projects and has no known security vulnerabilities.

Install

django-components on PyPI

Before you install

Low friction install with a pure-Python wheel. Actively maintained with a release within the last 50 days. Depends on Django, djc-core, and typing-extensions—all standard, lightweight dependencies.

Requires Django 5.2 or 6.0 and Python 3.10 or later; must be installed in a Django project.

License in practice

MIT license is permissive; you can use, modify, and distribute this package with minimal restrictions in commercial or open-source projects.

Quickstart

pip install django-components

from django_components import Component, register

@register("my_component")
class MyComponent(Component):
    template = "<div>{{ message }}</div>"
    def get_template_data(self, args, kwargs, slots, context):
        return {"message": kwargs.get("message", "Hello")}

# In template: {% component "my_component" message="World" %}

Verify before relying

  • Performance characteristics when rendering many components or deeply nested component trees.
  • Browser compatibility details beyond the stated testing across Chromium, Firefox, and WebKit.
  • Whether djc-core is a separate package or an internal dependency, and what it provides.

Package facts

LicenseMIT permissive
Python supportSupports the current Python release <4.0,>=3.10
Install frictionLow. Pure-Python wheel
Runtime dependencies
3 packages
Djangodjc-coretyping-extensions
MaintenanceActively maintained 50 days since the last release
First released
Downloads160,562 / month, #10,655 on PyPI 30-day window, as of 2026-08-14
Known vulnerabilitiesNone known OSV.dev, checked 2026-08-14
Classifiers
Framework :: DjangoFramework :: Django :: 5.2Framework :: Django :: 6.0Operating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14

Evidence: django_components-0.151.1-py3-none-any.whl

Tags

Capabilities
django reusable componentsdjango ui frameworkdjango template componentsdjango modular uidjango component librarydjango vue-like componentsdjango self-contained templates
Topics
django-frameworkui-componentstemplate-system
PyPI keywords
djangocomponentscssjshtml

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 reusable components”

  • django-componentsdjango-components lets you build reusable, self-contained UI…
  • django-cottonDjango Cotton adds component-based UI composition to Django…
  • lacesLaces provides Django components that bundle template rendering logic…

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

More Application Frameworks packages

fastapi Worth it
PyPI · Software Development · released Jul 2026

FastAPI is a Python web framework for building REST APIs using type hints, with automatic request validation, serialization, and interactive API documentation.

MITpure Python · 3.10+
568.6Mdownloads / mo
annotated-doc With conditions
PyPI · Software Development · released Jul 2026

Provides a way to document function parameters, class attributes, return types, and variables inline using Python's `Annotated` type hint syntax instead of traditional docstrings.

MITpure Python · 3.9+
456.2Mdownloads / mo
textual Worth it
PyPI · Application Frameworks · released Jun 2026

Textual is a Python framework for building cross-platform user interfaces that run in the terminal or web browser using a modern, component-based API.

Install it if you're developing CLI tools, dashboards, or interactive terminal applications.

MITpure Python
443.6Mdownloads / mo
typer Worth it
PyPI · Software Development · released Aug 2026

Typer builds command-line applications from Python functions using type hints, automatically generating help text, argument parsing, and shell completion.

Install it if you are building CLIs in Python.

MITpure Python · 3.10+
369.3Mdownloads / mo
mcp Worth it
PyPI · Application Frameworks · released Jul 2026

Build and connect to Model Context Protocol servers that expose tools, resources, and prompts to LLM applications over stdio, HTTP, or SSE transports.

Install it if you need to build or connect to servers.

MITpure Python · 3.10+
319.3Mdownloads / 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

See also django-cotton · vbuild · django-classy-tags · laces · django-webpack-loader · django-compressor · django-pipeline · django-js-asset · django-jinja · djangocms-admin-style