Skip to main content

Set of widgets to build dashboards for your Django-project.

Project description

Get all your project models on one single page with charts and whistles.

django-controlcenter

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

Build Status Codecov

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.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

django_controlcenter-0.3.3.tar.gz (120.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

django_controlcenter-0.3.3-py3-none-any.whl (129.2 kB view details)

Uploaded Python 3

File details

Details for the file django_controlcenter-0.3.3.tar.gz.

File metadata

  • Download URL: django_controlcenter-0.3.3.tar.gz
  • Upload date:
  • Size: 120.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for django_controlcenter-0.3.3.tar.gz
Algorithm Hash digest
SHA256 ffc982455a54c79c98df70180c549c79ba067f74f208cc9657418a7fc735aa6c
MD5 71b8482ead2ce59580d56600ef1e01f3
BLAKE2b-256 841e047466fec2635c180bdbd59de1a09f3c986f95b294df919f5dcd293e573d

See more details on using hashes here.

Provenance

The following attestation bundles were made for django_controlcenter-0.3.3.tar.gz:

Publisher: publish.yml on byashimov/django-controlcenter

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file django_controlcenter-0.3.3-py3-none-any.whl.

File metadata

File hashes

Hashes for django_controlcenter-0.3.3-py3-none-any.whl
Algorithm Hash digest
SHA256 260df66632c4e6924b02d5a30a36a7fb2ac1d41dc4619ff167bfb7f4c86c30af
MD5 3c62dcdb1baadd67a8d50b55c5a21ee8
BLAKE2b-256 08006a8225e705688e6e1a7e7740bd2928ed495174fac77a5cd51a84b78215a0

See more details on using hashes here.

Provenance

The following attestation bundles were made for django_controlcenter-0.3.3-py3-none-any.whl:

Publisher: publish.yml on byashimov/django-controlcenter

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page