Django Content Studio
A modern alternative to the classic Django admin, with batteries included. Register your models and manage them in a modern admin, with the permission hooks and conventions you already know.
# blog/admin.py
from content_studio import register
from content_studio.admin import ModelStudio
from .models import Article
@register(Article)
class ArticleStudio(ModelStudio):
table_display = ["title", "status", "published_at"]
list_filter = ["status"]
search_fields = ["title"]
What you get
Your models, as they are
Register a plain Django model, as in the classic Django admin, and it is manageable. Nothing to migrate to, no content model to adopt.
A complete admin
List pages with search, filters and sorting, and edit pages with validation, inlines and audit stamps, configured in Python.
Dedicated widgets
Dates, rich text, tags, media and structured JSON each get their own widget, and edit pages are laid out with form sets.
Familiar permissions
The permission hooks of the classic Django admin, down to single objects, with multi-tenancy and limited login attempts.
A dashboard you compose
Statistics, content lists, recent activity and scheduled tasks, declared in Python, plus links and pages of your own in the menu.
Batteries included
Optional fields for rich text, tags, structured JSON, URL paths and media, and base models such as ContentModel and SingletonModel.