Skip to content

django-reusable

Agnostic and easy to use reusable library for Django

PyPI License


Feature Overview

Module Description
Admin Mixins Enhanced admin mixins with action links, ajax actions, extra buttons, custom fields, and theme customization
Admin Filters Multi-select filters, text input filters, and search-in filters for the Django admin
Admin Actions Reusable admin actions such as CSV export
CRUD Views Declarative class-based CRUD views with filtering, search, permissions, and wizard support
Model Mixins TimeStampedModel, MonitorChangeMixin, GenericRelationMixin, and ModelUtilsMixin
Model Fields USAddressField, MultipleChoiceField, CurrencyField with JSON storage
Form Fields Custom form fields for addresses, currency, and multi-select
Form Widgets Readonly, address, currency, and date input widgets
Form Classes Hidden, readonly, and enhanced inline formsets
Validators Percent, path, and non-negative validators
Middleware LoginRequiredMiddleware, CRequestMiddleware, and ExceptionTrackerMiddleware
AI ORM Toolkit Dynamic LLM prompt generation and ORM query tools
Tables Enhanced django-tables2 with custom columns and footers
Database CustomQuerySet, CustomManager, and post-action signals
Template Tags Currency formatting, list splitting, dynamic formsets
Utilities General-purpose helpers for JSON, collections, math, files, and more
Date Utilities Month labels, quarters, adjacent dates, day-of-month checks
Decorators Caching and execution time logging decorators
Export Utilities CSV and ZIP export helpers
User Utilities Permission checking and user lookup helpers
Logging PrintLogger for structured console and file logging
Settings Reference All configurable settings in one place

Quick Install

pip install django-reusable
settings.py
INSTALLED_APPS = [
    # ...
    'django_reusable',
]

See Getting Started for full setup instructions.