All Projects → django-fluent → Django Fluent Dashboard

django-fluent / Django Fluent Dashboard

Licence: apache-2.0
An improved django-admin-tools dashboard for Django projects

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Django Fluent Dashboard

Django Mptt Admin
Django-mptt-admin provides a nice Django Admin interface for Mptt models
Stars: ✭ 256 (-3.76%)
Mutual labels:  django, django-admin
Django Antd Tyadmin
类似 xadmin 的基于Model 快速生成前后台管理增删改查,筛选,搜索的后台管理自动化工具。Antd 界面好看现代化!前后端分离!无损二次开发!由Django Restful Framework 和 Ant Design Pro V4 驱动
Stars: ✭ 171 (-35.71%)
Mutual labels:  django, django-admin
Django Material Admin
Material design for django administration
Stars: ✭ 163 (-38.72%)
Mutual labels:  django, django-admin
Django Subadmin
A special kind of ModelAdmin that allows it to be nested within another ModelAdmin
Stars: ✭ 120 (-54.89%)
Mutual labels:  django, django-admin
Django Wpadmin
WordPress look and feel for Django administration panel
Stars: ✭ 259 (-2.63%)
Mutual labels:  django, django-admin
Django Business Logic
Visual DSL framework for django
Stars: ✭ 134 (-49.62%)
Mutual labels:  django, django-admin
Django Inline Actions
django-inline-actions adds actions to each row of the ModelAdmin or InlineModelAdmin.
Stars: ✭ 170 (-36.09%)
Mutual labels:  django, django-admin
Django Admin Material
A Django Admin interface based on Material Design by Google
Stars: ✭ 74 (-72.18%)
Mutual labels:  django, django-admin
Django Admin Env Notice
Visually distinguish environments in Django Admin
Stars: ✭ 207 (-22.18%)
Mutual labels:  django, django-admin
Repoll
Redis管理平台Repoll,现已开源,基于redis3.x,支持单机、哨兵以及集群模式
Stars: ✭ 196 (-26.32%)
Mutual labels:  django, django-admin
Django Fluent Pages
A flexible, scalable CMS with custom node types, and flexible block content.
Stars: ✭ 103 (-61.28%)
Mutual labels:  django, django-admin
Django Flat Responsive
📱 An extension for Django admin that makes interface mobile-friendly. Merged into Django 2.0
Stars: ✭ 249 (-6.39%)
Mutual labels:  django, django-admin
Django Admin Relation Links
An easy way to add links to relations in the Django Admin site.
Stars: ✭ 87 (-67.29%)
Mutual labels:  django, django-admin
Django Polymorphic Tree
Polymorphic MPTT tree support for models
Stars: ✭ 152 (-42.86%)
Mutual labels:  django, django-admin
Awesome Django
Repository mirror of GitLab: https://gitlab.com/rosarior/awesome-django This repository is not monitored for issues, use original at GitLab.
Stars: ✭ 8,527 (+3105.64%)
Mutual labels:  django, django-admin
Django Admin Autocomplete Filter
A simple Django app to render list filters in django admin using autocomplete widget.
Stars: ✭ 166 (-37.59%)
Mutual labels:  django, django-admin
Django Polymorphic
Improved Django model inheritance with automatic downcasting
Stars: ✭ 1,135 (+326.69%)
Mutual labels:  django, django-admin
Awesome Django Cn
Django 优秀资源大全。
Stars: ✭ 1,153 (+333.46%)
Mutual labels:  django, django-admin
Django Suit
Modern theme for Django admin interface
Stars: ✭ 2,136 (+703.01%)
Mutual labels:  django, django-admin
Django Admin List Filter Dropdown
Use dropdowns in Django admin list filter
Stars: ✭ 215 (-19.17%)
Mutual labels:  django, django-admin

django-fluent-dashboard

The fluent_dashboard module offers a custom admin dashboard, built on top of django-admin-tools_ (docs <https://django-admin-tools.readthedocs.io/>_).

The django-admin-tools_ package provides a default mechanism to replace the standard Django admin homepage with a widget based dashboard. The fluent_dashboard module extends this, by providing additional widgets (called "modules") such as:

  • a "icon list" module for the admin homepage.
  • a "welcome" module for the admin homepage.
  • a configurable module layout for the admin homepage, through settings.py.
  • a "return to site" link.
  • an optional "cache statistics" module.

Documentation can be found at: https://django-fluent-dashboard.readthedocs.io/

Screenshot

.. image:: https://github.com/edoburu/django-fluent-dashboard/raw/master/docs/images/dashboard.png :width: 1030px :height: 715px :alt: django-fluent-dashboard preview

Installation

First install the module, preferably in a virtual environment. It can be installed from PyPI::

pip install django-fluent-dashboard

Or the current folder can be installed::

pip install .

Configuration

Add the following settings to settings.py:

.. code-block:: python

INSTALLED_APPS += (
    'fluent_dashboard',

    # enable the admin
    'admin_tools',
    'admin_tools.theming',
    'admin_tools.menu',
    'admin_tools.dashboard',
    'django.contrib.admin',
)

ADMIN_TOOLS_INDEX_DASHBOARD = 'fluent_dashboard.dashboard.FluentIndexDashboard'
ADMIN_TOOLS_APP_INDEX_DASHBOARD = 'fluent_dashboard.dashboard.FluentAppIndexDashboard'
ADMIN_TOOLS_MENU = 'fluent_dashboard.menu.FluentMenu'

TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': (),
        'OPTIONS': {
            'loaders': (
                ...
                'admin_tools.template_loaders.Loader',  # Add this line!
            ),
        }
    }
]

The admin_tools.theming and admin_tools.menu applications are optional.

Add to urls.py:

.. code-block:: python

urlpatterns += [
    url(r'^admintools/', include('admin_tools.urls')),
]

The database tables for admin_tools can be created afterwards:

.. code-block:: bash

./manage.py migrate

Customizing the dashboard

Adding extra icons

The FLUENT_DASHBOARD_APP_ICONS setting is a dictionary that allows you to define extra icons for your own modules, and overwrite default settings. For example:

.. code-block:: python

FLUENT_DASHBOARD_APP_ICONS = {
    'auth/user': "user.png"
}

The icon is expected to be 48x48 pixels. The icon name is treated in 3 different formats:

  • Absolute URLs are passed as-is.
  • Icon names with a / character, are relative to the STATIC_URL.
  • Icon names without any path information, are relative to the current theme folder, e.g. STATIC_URL/fluent_dashboard/themename/

Organizing the application groups

The FLUENT_DASHBOARD_APP_GROUPS setting defines which applications are grouped. For example:

.. code-block:: python

FLUENT_DASHBOARD_APP_GROUPS = (
    (_('CMS'), {
        'models': (
            'cms.*',
            'pages.*',
            'fiber.*',
        ),
        'module': 'CmsAppIconList',
        'collapsible': False,
    }),
    (_('Interactivity'), {
        'models': (
            'django.contrib.comments.*',
            'form_designer.*'
            'threadedcomments.*',
            'zinnia.*',
        ),
    }),
    (_('Administration'), {
        'models': (
            'django.contrib.auth.*',
            'django.contrib.sites.*',
            'google_analytics.*',
            'registration.*',
        ),
    }),
    (_('Applications'), {
        'models': ('*',),
        'module': 'AppList',
        'collapsible': True,
    }),
)

Details about these options, and additional settings are explained in the documentation_.

Displaying cache status

This application features optional support for the dashboardmods_ package, which can display cache statistics. It can be installed using::

pip install dashboardmods

The application requires the cache backends to be configured, for example:

.. code-block:: python

INSTALLED_APPS += (
    'dashboardmods',
)

# Example Memcache configuration:
CACHES = {
    'default': {
        'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache',
        'KEY_PREFIX': 'mysite.production',
        'LOCATION': '127.0.0.1:11211',
        'TIMEOUT': 24*3600,
    },
}

# Optional, example Varnish configuration:
VARNISH_MANAGEMENT_ADDRS = ('127.0.0.1:6082',)

When a cache is not configured, it will simply not be displayed by the module.

Related applications

The following packages provide additional modules, which can be displayed at the dashboard:

  • django-admin-user-stats_ adds graphs to the dashboard, to see the number of registered users in the last month.
  • django-admin-tools-stats_ is derived from the previous package, and adds configurable graphs for any model type.
  • dashboardmods_ is detected to display cache statistics, but also features a configure RSS feed module.
  • django-admin-tools_ should not be forgotten, because it also provides modules for RSS feeds, link lists and tab grouping.

These modules can be integrated by subclassing the FluentIndexDashboard class, and point to that module with the ADMIN_TOOLS_INDEX_DASHBOARD setting.

Contributing

This module is designed to be generic. In case there is anything you didn't like about it, or think it's not flexible enough, please let us know. We'd love to improve it!

If you have any other valuable contribution, suggestion or idea, please let us know as well because we will look into it. Pull requests are welcome too. :-)

.. _documentation: https://django-fluent-dashboard.readthedocs.io/ .. _dashboardmods: https://github.com/callowayproject/dashboardmods .. _django-admin-tools: https://github.com/django-admin-tools/django-admin-tools .. _django-admin-tools-stats: https://github.com/Star2Billing/django-admin-tools-stats .. _django-admin-user-stats: https://github.com/kmike/django-admin-user-stats

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].