Skip to content

Dgo-list/django-controlcenter

 
 

Repository files navigation

Welcome to django-controlcenter!

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

django-controlcenter

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 = (
    'project.dashboards.MyDashboard',
)

Plug in urls:

from django.conf.urls import url
from django.contrib import admin
from controlcenter.views import controlcenter

urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'^admin/dashboard/', controlcenter.urls),
    ...
]

Open /admin/dashboard/0/ in browser.

Documentation

Check out the docs for more complete examples.

Compatibility

Build Status Codecov

Tested on py 2.7, 3.4, 3.5 with django 1.8, 1.9, 1.10.

Credits

This project uses Chartist.js, Masonry.js and Sortable.js.

Changelog

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.

About

Set of widgets to build dashboards for Django projects

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 55.1%
  • CSS 35.5%
  • HTML 7.1%
  • JavaScript 2.3%