Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/talpor/django-dashing
django-dashing is a customisable, modular dashboard application framework for Django to visualize interesting data about your project. Inspired in the dashboard framework Dashing
https://github.com/talpor/django-dashing
dashboard django
Last synced: 7 days ago
JSON representation
django-dashing is a customisable, modular dashboard application framework for Django to visualize interesting data about your project. Inspired in the dashboard framework Dashing
- Host: GitHub
- URL: https://github.com/talpor/django-dashing
- Owner: talpor
- License: bsd-3-clause
- Created: 2014-06-11T16:05:05.000Z (over 10 years ago)
- Default Branch: master
- Last Pushed: 2022-08-06T03:09:38.000Z (over 2 years ago)
- Last Synced: 2024-12-28T14:09:45.455Z (14 days ago)
- Topics: dashboard, django
- Language: JavaScript
- Size: 1.07 MB
- Stars: 731
- Watchers: 46
- Forks: 108
- Open Issues: 15
-
Metadata Files:
- Readme: README.rst
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
- starred-awesome - django-dashing - django-dashing is a customisable, modular dashboard application framework for Django to visualize interesting data about your project. Inspired in the dashboard framework Dashing (JavaScript)
README
**Note:** An updated version with Python3/Django3+ support maintained by `wickeym `_ can be installed by doing `pip install django3-dashing`
===============================================
django-dashing
===============================================.. image:: https://travis-ci.org/talpor/django-dashing.svg?branch=master
`django-dashing` is a customisable, modular dashboard application framework for Django to visualize interesting data about your project. Inspired in the exceptionally handsome dashboard framework Dashing_
.. _Dashing: http://shopify.github.io/dashing/
.. image:: https://i.imgur.com/Uo67Q7L.png
:alt: dashboard screenshot
:width: 835
:height: 427
:align: centerPrerequisites
===============================================
- Django 1.5.+
- Django Compressor (optional)Key concepts
===============================================
- Use premade widgets, or fully create your own with css, html, and javascript.
- Use the API to push data to your dashboards.
- Drag & Drop interface for re-arranging your widgets.Installation
===============================================
1. Install latest stable version from PyPi:.. code-block:: text
$ pip install django-dashing
2. Add `dashing` to ``INSTALLED_APPS`` of the your projects.
.. code-block:: python
INSTALLED_APPS = (
...
'dashing',
)3. Include the dashboard URLconf in your project urls.py like this:
.. code-block:: python
from dashing.utils import router
...
url(r'^dashboard/', include(router.urls)),4. Start the development server and visit http://127.0.0.1:8000/dashboard/
to view the dummy dashboard.Quick Start
===============================================To make your own dashboard and retrieves the data from django you should:
1. Create a django dashboard application with a `widgets.py` file
2. Create your widget extended from **NumberWidget**, **ListWidget**, **GraphWidget** or simply **Widget** (from dashing.widgets), for example `see `_.
3. Register your widget in `urls.py` like:
.. code-block:: python
from django.conf.urls import url, include
from dashing.utils import routerfrom project.dashboard.widgets import CustomWidget
router.register(CustomWidget, 'custom_widget')
urlpatterns = [
url(r'^dashboard/', include(router.urls)),
]Create a dashing-config.js file with a widget that retrive the data in your static directory like:
.. code-block:: javascript
var myDashboard = new Dashboard();
myDashboard.addWidget('customWidget', 'Number', {
getData: function () {
var self = this;
Dashing.utils.get('custom_widget', function(data) {
$.extend(self.scope, data);
});
},
interval: 3000
});Also if you want to locate the config file in a different directory you can create a `dashing/dashboard.html` file in your **TEMPLATE_DIRS** and replace the **config_file** block to the route of your javascript config file, see the `docs `_.
Testing
===============================================Install dependencies.
.. code-block:: text
$ npm install
$ pip install -r requirements.txtRun tests.
.. code-block:: text
$ npm test
Links
===============================================- `Documentation `_
- `Demo application `_
- `Widget List `_