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-1.1.10.tar.gz (3.3 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-1.1.10-py3-none-any.whl (3.6 MB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: django_smartbase_admin-1.1.10.tar.gz
  • Upload date:
  • Size: 3.3 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-1.1.10.tar.gz
Algorithm Hash digest
SHA256 1c9ca82031168de919b166381c0a99f1ef9df462629dd13e6f4e8ed1d88db428
MD5 1c533a06507aaa9035d8002cb080734d
BLAKE2b-256 023812947c5d3aa6ba0ed11908b6ed73df27718ce237713c701f572e70baa011

See more details on using hashes here.

Provenance

The following attestation bundles were made for django_smartbase_admin-1.1.10.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-1.1.10-py3-none-any.whl.

File metadata

File hashes

Hashes for django_smartbase_admin-1.1.10-py3-none-any.whl
Algorithm Hash digest
SHA256 edd5a1a10b5efcb6dbb3d7a78e0d28c2f28d1996d396ac6e0568743eeb7a99be
MD5 273df4a0a716aa56e98acd5e719c4593
BLAKE2b-256 4906e5439a3b571f1cb67a23cfc2faec4a8ceaf3abceff419a21a85bfdb5dbdf

See more details on using hashes here.

Provenance

The following attestation bundles were made for django_smartbase_admin-1.1.10-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