Skip to main content

No project description provided

Project description

image

Django SmartBase Admin

A modern, modular, and developer-friendly admin interface for Django.
Built to speed up development of internal tools and admin panels — beautifully and efficiently.


✨ Features

  • Fast integration with any Django project
  • Improved performance of Django List Admin using SBAdminField, database annotate() and values() to avoid direct object access
  • Simple configuration of menu structure, dashboard components, and permissions per user role
  • Enhanced Django List Admin filters: autocomplete support for related fields and filtering across all model fields
  • Ability for users to save and reuse custom filters in Django List Admin
  • Improved Django Detail Admin with autocomplete for relational fields
  • Support for "FakeInlines" – define inline-like blocks without requiring a direct model relationship
  • Easy extension of list and detail views with custom actions and corresponding views
  • Beautiful modern UI (Tailwind CSS)
  • Responsive & mobile-friendly
  • End-user ready for building SaaS or similar projects with global queryset configuration
  • Built-in audit logging — automatically tracks all admin create, update, and delete operations with full change history, snapshots, and request grouping
image image image image image image image image image image image image

📚 Full Documentation (in progress)

🗂 View Full Docs

🌐 Live Demo

Want to see it in action?
👉 Check out the live demo

Login credentials:

  • Admin role: admin / admin
  • Editor role: editor / editor

⚡ Quick Start

1. Install Smartbase Admin

Begin by installing the Smartbase Admin package using pip:

pip install django-smartbase-admin

Ensure that django-smartbase-admin and its dependencies are included in your Django settings. Open your settings.py file and add the following to INSTALLED_APPS:

INSTALLED_APPS = [
    # other apps
    "django_smartbase_admin",
    "easy_thumbnails",
    "widget_tweaks",
    "ckeditor",
    "ckeditor_uploader",
]

2. Add Admin URL Configuration

In your project’s urls.py, register the Smartbase Admin site by importing sb_admin_site and adding the path:

from django_smartbase_admin.admin.site import sb_admin_site

urlpatterns = [
    path("sb-admin/", sb_admin_site.urls),
    # other paths
]

This makes the Smartbase Admin interface accessible at /sb-admin/

3. Define the SmartBase Admin Configuration

In your project, for example in config package create a file called sbadmin_config.py with the following content:

from django_smartbase_admin.engine.configuration import SBAdminConfigurationBase, SBAdminRoleConfiguration
from django_smartbase_admin.views.dashboard_view import SBAdminDashboardView
from django_smartbase_admin.engine.menu_item import SBAdminMenuItem

config = SBAdminRoleConfiguration(
    default_view=SBAdminMenuItem(view_id="dashboard"),
    menu_items=[
        SBAdminMenuItem(view_id="dashboard", icon="All-application"),
    ],
    registered_views=[
        SBAdminDashboardView(widgets=[], title="Dashboard"),
    ],
)

class SBAdminConfiguration(SBAdminConfigurationBase):
    def get_configuration_for_roles(self, user_roles):
        return config

4. Reference the Configuration in settings.py

SB_ADMIN_CONFIGURATION = "config.sbadmin_config.SBAdminConfiguration"

5. Add Locale Middleware

Add the following middleware to support internationalization:

MIDDLEWARE = [
    # Other middleware...
    'django.middleware.locale.LocaleMiddleware',
]

Enable Django i18n URLs so {% url 'set_language' %} is available for the navigation language picker:

from django.urls import include, path

urlpatterns = [
    path("i18n/", include("django.conf.urls.i18n")),
]

🔍 Audit Logging

Built-in optional audit app that automatically tracks all admin create, update, delete, and bulk operations with field-level diffs, snapshots, and request grouping. Just add "django_smartbase_admin.audit" to INSTALLED_APPS and run migrations.

See AGENTS.md — Audit Logging for setup and configuration.

🤖 AI/Developer Reference

See AGENTS.md for development patterns, gotchas, and AI assistant instructions.

🤝 Need Help with Development?

We at SmartBase are experts in Django and custom software.

Whether you're building a new platform or modernizing an internal tool — 💡 We can help you design, build, and scale it.

📬 Let's talk — We'd love to work with you.

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

django_smartbase_admin-2.0.19.tar.gz (3.6 MB view details)

Uploaded Source

Built Distribution

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

django_smartbase_admin-2.0.19-py3-none-any.whl (4.0 MB view details)

Uploaded Python 3

File details

Details for the file django_smartbase_admin-2.0.19.tar.gz.

File metadata

  • Download URL: django_smartbase_admin-2.0.19.tar.gz
  • Upload date:
  • Size: 3.6 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for django_smartbase_admin-2.0.19.tar.gz
Algorithm Hash digest
SHA256 1e9fe040fd4d4d824c180efca529bf3aea7f144e4775422254ea05ca4fdc22c0
MD5 7038b54974bdda15c89b2c8e8b91714d
BLAKE2b-256 3695f8cc3b4faa6dc74e79f77529d50bfa227af7108e8ec4bf8a5bfcc8e537bc

See more details on using hashes here.

Provenance

The following attestation bundles were made for django_smartbase_admin-2.0.19.tar.gz:

Publisher: workflow.yml on SmartBase-SK/django-smartbase-admin

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_smartbase_admin-2.0.19-py3-none-any.whl.

File metadata

File hashes

Hashes for django_smartbase_admin-2.0.19-py3-none-any.whl
Algorithm Hash digest
SHA256 f82f101af4fa499a6b4f8ebe5817c69fb453ddaeaf287174280c4960b2390de3
MD5 eef17355436c92e823d4c8792751535b
BLAKE2b-256 c979622aaf10e697cb14967feeea9be39d2123fd6b71050a541bad445db4217a

See more details on using hashes here.

Provenance

The following attestation bundles were made for django_smartbase_admin-2.0.19-py3-none-any.whl:

Publisher: workflow.yml on SmartBase-SK/django-smartbase-admin

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