About Greenfield vs Brownfield in Django

In software development, Greenfield and Brownfield describe the context in which a project is built:

  • Greenfield — new project, no prior codebase. Full control over architecture, models, and stack.
  • Brownfield — existing project. You work within constraints set by previous decisions.

Brownfield costs more because every change requires understanding existing code first. Migrations touch live data. Technical debt accumulates. Onboarding takes longer.

Most Django projects are brownfield. Documentation and tests are not optional — they determine how much each future change costs.

Tips and Tricks Programming Development Testing Documentation Maintenance Django 6.x Django 5.2 Django 4.2