Get all your project models on one single page with charts and whistles.
Attention!
Unfortunately, I have no time to add new features. Please make PR if you need one:
branch from master
provide tests
add docs
update changelog
That’s it.
Rationale
Django-admin is a great tool to control your project activity: new orders, comments, replies, users, feedback – everything is here. The only struggle is to switch between all those pages constantly just to check them out for new entries.
With django-controlcenter you can have all of your models on one single page and build beautiful charts with Chartist.js. Actually they don’t even have to be a django models, get your data from wherever you want: RDBMS, NOSQL, text file or even from an external web-page, it doesn’t matter.
Quickstart
Install django-controlcenter:
pip install -U django-controlcenter
Create a dashboard file with unlimited number of widgets and dashboards:
from controlcenter import Dashboard, widgets
from project.app.models import Model
class ModelItemList(widgets.ItemList):
model = Model
list_display = ('pk', 'field')
class MyDashboard(Dashboard):
widgets = (
ModelItemList,
)
Update settings file:
INSTALLED_APPS = [
...
'controlcenter',
...
]
CONTROLCENTER_DASHBOARDS = (
('mydash', 'project.dashboards.MyDashboard'),
)
Plug in urls:
from django.urls import path
from django.contrib import admin
from controlcenter.views import controlcenter
urlpatterns = [
path('admin/dashboard/', controlcenter.urls),
path('admin/', admin.site.urls),
...
]
Open /admin/dashboard/mydash/ in browser.
Documentation
Check out the docs for more complete examples.
Compatibility
Tested on py 3.5—3.10 and django 1—4.
Credits
This project uses Chartist.js, Masonry.js and Sortable.js.
Changelog
0.3.3
Add source maps for chartist static assets for Django 4.1. Thanks to @ilikerobots.
0.3.2
Automatically redirect the main app url to the first dashboard. Thanks to @fabiocaccamo.
0.3.1
Support django 4.0, python 3.10. Thanks to @mick88.
Fixed LineChart example. Thanks to @virtosubogdan.
0.3.0
Support django 3.0
Python 3 only
0.2.9
chartist-plugin-pointlabels temporary fix
Added sorting triangles to ItemList
ItemList header is now always displayed regardless sortability
Other misc improvements
Thanks to @minusf.
0.2.8
Fixed key_value_list.html widget template syntax error.
Fixed attribute typo widget.chartist.point_labels -> point_lables.
Thanks to @minusf.
0.2.7
New TimeSeriesChart widget. Thanks to @pjdelport.
New “simple” widgets: ValueList and KeyValueList. Thanks to @tonysyu.
Bunch of fixes and improvements, thanks again to @pjdelport.
0.2.6
Fixed navigation menu links, thanks to @editorgit
0.2.5
It’s now possible to use slugs for dashboards instead of those indexes in CONTROLCENTER_DASHBOARDS. The old behaviour is supported too.
0.2.4
It’s compatible with django 1.8—2.1 now
Custom app name can be passed to ControlCenter class
0.2.3
Updated column grid, thanks to @pauloxnet.
Grammar fixes, thanks to @danielquinn.
It’s should be possible now to use a custom dashboard view with a custom template.
0.2.2
dashboard.html now extends admin/base_site.html instead of admin/base.html in order to display branding block. Thanks to @chadgh.
Updated jsonify tag filter, thanks to @k8n.
0.2.1
Django 1.10 support. Tested in tox only.
Updated the SingleBarChart example, thanks to @greeve.
0.2.0
Unlimited dashboards support.
Configuration constructor is moved to a separate project – django-pkgconf. It’s a dependency now.
0.1.2
Chart i series color fix. Thanks to @uncleNight.
Docs. Finally.
0.1.1
Better responsive experience.
0.1.0
First public release.
Metadata
Release files for django-controlcenter 0.3.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| django_controlcenter-0.3.3.tar.gz | 120.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| django_controlcenter-0.3.3-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 249.4 kB
Release files / django_controlcenter-0.3.3.tar.gz
| Download URL | django_controlcenter-0.3.3.tar.gz |
|---|---|
| Size | 120.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
ffc982455a54c79c98df70180c549c79ba067f74f208cc9657418a7fc735aa6c
|
|
BLAKE2b-256 checksum How to use checksums |
841e047466fec2635c180bdbd59de1a09f3c986f95b294df919f5dcd293e573d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Mar 25, 2025.
Transparency logRelease files / django_controlcenter-0.3.3-py3-none-any.whl
| Download URL | django_controlcenter-0.3.3-py3-none-any.whl |
|---|---|
| Size | 129.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
260df66632c4e6924b02d5a30a36a7fb2ac1d41dc4619ff167bfb7f4c86c30af
|
|
BLAKE2b-256 checksum How to use checksums |
08006a8225e705688e6e1a7e7740bd2928ed495174fac77a5cd51a84b78215a0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Mar 25, 2025.
Transparency log