finds.dev← search

// the find

stephenmcd/mezzanine

★ 4,816 · Python · BSD-2-Clause · updated Apr 2026

CMS framework for Django

Mezzanine is a full-featured CMS built directly on top of Django, bundling pages, a blog, a form builder, ecommerce (via the separate Cartridge project), search, and an admin dashboard into one integrated stack rather than a plugin ecosystem. It's aimed at Django developers who want a WordPress-style editing experience without leaving Python, and who are fine reading and modifying app code directly to get custom behavior.

Genuinely batteries-included: page hierarchy, drafts/scheduling, drag-and-drop forms with CSV export, and a blog engine all ship in the core rather than requiring you to wire together five separate third-party apps. i18n isn't an afterthought — every app (accounts, blog, etc.) carries its own locale tree for 35+ languages, which is a real maintenance investment most Django CMS projects don't bother with. It stays close to Django's own primitives (ORM, admin, auth) instead of replacing them, so you keep Django's migration tooling and security patch cadence. CI runs on GitHub Actions with a semantic-release config, so versioning isn't manual.

The architecture is the opposite of django-cms's plugin model — the README literally says it 'encourages diving in and hacking on the code,' which means customizing behavior often means patching core app files instead of swapping a component, making upstream upgrades painful once you've touched anything. Ecommerce lives in a separate project (Cartridge) with its own release cadence, so you're tracking compatibility between two codebases if you need a shop. The feature list still touts JVM/Jython compatibility, which is dead weight nobody exercises on a modern deploy target and signals unpruned legacy surface area. Support is funneled through a mailing list and a Freenode IRC channel — Freenode has been defunct for years, meaning the docs' support section hasn't been revisited even as the codebase keeps taking commits.

View on GitHub → Homepage ↗

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →