skillfed

django-braces

Reusable, generic mixins for Django

django-braces v1.17.0 397.5K downloads/30d#6,958 on PyPI2,019
Permissive license BSD AGING released

What it is and what it does

django-braces is a collection of mixin classes designed to extend Django's class-based views with reusable behavior patterns. It bridges the gap between Django's function-based view decorators and class-based views by providing mixins that replicate decorator functionality and solve recurring design challenges in class-based view development.

The package is mature and stable, having been in use since 2012. It depends only on Django and installs with low friction. While it is no longer in active development and receives infrequent updates, it remains compatible with modern Python and Django versions, including Django LTS releases. The library is well-suited for projects that need proven, battle-tested view patterns without the overhead of more actively maintained alternatives.

Use it for:

  • Add login-required checks to class-based views using LoginRequiredMixin instead of decorators.
  • Enforce permission and group membership checks on views through reusable mixin composition.
  • Handle common HTTP method restrictions and response patterns across multiple view classes.
  • Replicate function-based view decorator behavior in class-based view hierarchies.
  • Build consistent access control and authentication patterns across a Django application.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Provides reusable mixin classes for Django class-based views, offering patterns that replicate function-based view decorators and solve common class-based view design problems.

Yes, if you use Django class-based views and want proven, stable mixin patterns. The package is mature, has no known vulnerabilities, and low install friction. The aging maintenance status is acceptable for a stable library that solves a well-defined problem, but verify that its mixin coverage matches your specific view patterns before adopting it.

Install

django-braces on PyPI

pip

pip install django-braces

uv

uv add django-braces

poetry

poetry add django-braces

Installing django-braces

Before you install

Low install friction with a single Django dependency. Maintenance status is aging—the package is stable and time-tested but receives infrequent updates and is not in active development. Last release was 514 days ago; the repository remains active with recent commits.

License in practice

BSD license is permissive, allowing commercial and private use with minimal restrictions. No notable licensing constraints for typical projects.

Quickstart

pip install django-braces

from django_braces.views import LoginRequiredMixin
from django.views.generic import TemplateView

class MyView(LoginRequiredMixin, TemplateView):
    template_name = 'my_template.html'

Verify before relying

  • Whether all documented mixins remain compatible with Django versions beyond 4.2 despite aging maintenance status.
  • Specific mixin coverage—which common class-based view patterns are addressed by the library.

Package facts

License BSD (permissive)
Python support not specified
Install friction low — pure-Python wheel
Runtime dependencies 1 — Django
Maintenance aging — 514 days since the last release
Last repo commit
First released
Downloads 397,505/month — #6,958 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: django_braces-1.17.0-py3-none-any.whl

Keywords: django, views, forms, mixins

Development Status :: 5 - Production/StableDevelopment Status :: 6 - MatureEnvironment :: Web EnvironmentFramework :: DjangoFramework :: Django :: 2.2Framework :: Django :: 3.2Framework :: Django :: 4.0Framework :: Django :: 4.1Framework :: Django :: 4.2Intended Audience :: DevelopersLicense :: OSI Approved :: BSD LicenseNatural Language :: EnglishProgramming Language :: PythonProgramming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.6Programming Language :: Python :: 3.7Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9Topic :: Software Development :: Libraries :: Python Modules

Tags

django class-based view mixinsdjango cbv helpersdjango view decorators as mixinsreusable django view patternsdjango mixin librarydjango class-based view utilities
djangoclass-based-viewsmixins

More Python Modules packages