skillfed

django-memoize

An implementation of memoization technique for Django.

django-memoize v2.3.1 105.1K downloads/30d#12,722 on PyPI
Permissive license BSD License Abandoned released

What it is and what it does

django-memoize implements function-level result caching for Django applications. It wraps functions or methods with a decorator that stores their return values, returning cached results on subsequent calls with identical arguments instead of recomputing. This is useful for expensive operations like database queries or API calls that produce the same output for the same inputs.

The package has no runtime dependencies beyond Django itself, making it lightweight to add to existing projects. However, it has been abandoned since 2020 and shows no signs of active maintenance. The classifiers indicate support for Django 1.11 and 2.0 with Python 2.7 and 3.4–3.6, but these versions are now obsolete, and compatibility with current Django and Python releases is unverified.

Use it for:

  • Cache results of expensive database queries within a Django view to avoid repeated lookups
  • Memoize API client calls or third-party service responses to reduce external request volume
  • Store computed values from complex calculations or data transformations for reuse
  • Reduce load on slow external services by caching their responses at the application layer

Worth the install?

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

Caches function and method results in Django applications using memoization, reducing redundant computation by storing and reusing previously computed outputs.

No. The package is abandoned (no updates since 2020) and high install friction suggests unresolved dependency issues. Modern Django and Python versions are unsupported and untested. Consider Django's built-in cache framework or a maintained alternative instead.

Install

django-memoize on PyPI

pip

pip install django-memoize

uv

uv add django-memoize

poetry

poetry add django-memoize

Installing django-memoize

Before you install

High install friction and abandoned maintenance status (last release 2020-04-27, no activity for 2300 days) make this a risky choice for new projects. The package is marked Production/Stable but receives no updates.

License in practice

BSD License (permissive) places no restrictions on use, modification, or redistribution in commercial or private projects.

Quickstart

pip install django-memoize==2.3.1

from memoize import memoize

@memoize()
def expensive_function(arg):
    return result

Requires Django; classifiers indicate support for Django 1.11 and 2.0, but no explicit requires_python or modern version compatibility information is published.

Verify before relying

  • Actual compatibility with Django versions beyond 2.0 and modern Python 3.x releases
  • Whether high install friction is due to missing wheels or unmet system dependencies
  • Active alternatives or forks that maintain this functionality
  • Whether timeout configuration is supported and how it is specified

Package facts

License BSD License (permissive)
Python support not specified
Install friction high — source build required
Runtime dependencies none
Maintenance abandoned — 2,300 days since the last release
First released
Downloads 105,065/month — #12,722 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: django-memoize-2.3.1.tar.gz

Development Status :: 5 - Production/StableEnvironment :: Web EnvironmentFramework :: DjangoFramework :: Django :: 1.11Framework :: Django :: 2.0Intended Audience :: DevelopersLicense :: OSI Approved :: BSD LicenseOperating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 2Programming Language :: Python :: 2.7Programming Language :: Python :: 3Programming Language :: Python :: 3.4Programming Language :: Python :: 3.5Programming Language :: Python :: 3.6Topic :: Internet :: WWW/HTTP :: Dynamic Content

Tags

django function result cachingmemoization decorator djangocache function resultsdjango method memoizationavoid redundant computation
cachingabandoned

More Dynamic Content packages