# jazzband/django-defender

A simple super fast django reusable app that blocks people from brute forcing login attempts

Repository: https://github.com/jazzband/django-defender
Canonical: https://ross.abutalabs.com/products/django-defender
Language: Python
License: Apache-2.0
License Family: permissive
Last push: 2026-02-01T16:28:21+00:00

## Health v2 (maintenance only)
Score: 52/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 65, release rhythm 8, longevity 100
- inputs: {"age_days": 4364, "days_push": 213, "days_rel": null, "gap_med": null, "n_releases_24m": 0}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1081, forks 144 (observed 2026-08-28T04:03:30.830102+00:00)

## What it is
A Django reusable app that blocks brute-force login attempts by rate limiting on username and IP address, using Redis as a fast cache backend. It logs login attempts to the database and provides Django admin pages for viewing and unblocking users.

## Use cases
- prevent brute force attacks on django login
- rate limit login attempts by username and ip
- block users after failed login attempts
- track and review login attempts in django admin
- fast login throttling without hitting the database
- unblock users or ips locked out by failed logins

## When to choose
- you run a Django site and need brute-force protection on authentication
- you want Redis-backed rate limiting that avoids database hits on every login
- you need admin visibility into blocked usernames, IPs, and login attempt history

## When to avoid
- your project does not use Django
- you need general-purpose API rate limiting rather than login protection
- you cannot run Redis or another cache backend

## Facets
- artifact type: library
- maturity: active
- function: auth, rate-limiting, security, caching
- domain: security, web-development, backend
- platform: python, self-hosted
- tags: django, brute-force-protection, redis, login-security, jazzband, web-server

## Member repositories
- jazzband/django-defender (main) score 52

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:03:30.830102+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T06:51:22.599386+00:00, confidence not recorded.
  - readme: https://github.com/jazzband/django-defender (fetched 2026-08-28T04:03:30.830102+00:00, sha 123a1b7d3ce8)
- Data as of 2026-08-30T08:39:29.467469+00:00.
