Skip to main content

Advanced CRUD for perfectionists with deadlines. An opinionated Neapolitan extension, with sprinkles.

Project description

Django PowerCRUD

Advanced CRUD for perfectionists with deadlines. An opinionated extension of Neapolitan.

What is PowerCRUD?

The neapolitan package gives you a solid foundation for Django CRUD views. But you still need to add filtering, bulk operations, modern UX features, and styling yourself.

PowerCRUD comes with these features built-in, specifically for user-facing CRUD interfaces. Use what you need, customize what you want.

ℹ️ Status

PowerCRUD is still evolving, but now ships with a comprehensive pytest suite (including Playwright UI smoke tests). Expect rough edges while APIs settle, and pin the package if you rely on current behaviour.

See the full documentation.

Key Features

🎯 Advanced CRUD Operations - Filtering, pagination, bulk edit/delete (with async) out of the box
Modern Web UX - HTMX integration, modals, and reactive updates
🔧 Developer Friendly - Convention over configuration with full customization options
🎨 Multiple CSS Frameworks - daisyUI/Tailwind (default) and Bootstrap 5 support

Quick Example

Start with basic neapolitan:

# Basic neapolitan
class ProjectView(CRUDView):
    model = Project

Add powercrud for advanced features:

# With powercrud
class ProjectView(PowerCRUDMixin, CRUDView):
    model = Project
    fields = ["name", "owner", "status"]
    base_template_path = "core/base.html"
    
    # Modern features
    use_htmx = True
    use_modal = True
    
    # Advanced filtering
    filterset_fields = ["owner", "status", "created_date"]
    
    # Bulk operations
    bulk_fields = ["status", "owner"]
    bulk_delete = True
    
    # Enhanced display
    properties = ["is_overdue", "days_remaining"]

Getting Started

See the Quick Start documentation

Development Setup

PowerCRUD’s development environment is Docker-first. From the project root:

./runproj up          # build images, start services, enter the Django container
pytest                # run the full test suite, including Playwright smoke tests

Dependencies are managed with uv; the Docker image installs them into the system interpreter so you never need to activate a virtual environment inside the container. See the Dockerised Development Environment guide for full details.

Project details


Download files

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

Source Distribution

django_powercrud-0.3.6.tar.gz (4.1 kB view details)

Uploaded Source

Built Distribution

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

django_powercrud-0.3.6-py3-none-any.whl (3.5 kB view details)

Uploaded Python 3

File details

Details for the file django_powercrud-0.3.6.tar.gz.

File metadata

  • Download URL: django_powercrud-0.3.6.tar.gz
  • Upload date:
  • Size: 4.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.11

File hashes

Hashes for django_powercrud-0.3.6.tar.gz
Algorithm Hash digest
SHA256 b06897ad0b4b08798951b233cbd7c59a89bc0e754bbd91f6d1269cca6ed94424
MD5 b26bffb261cb1f3ad2c860cd8be5a2f4
BLAKE2b-256 0f48cc4cda9941f96962340e5343d6bb31bfa3b02902396338fefa870323aab3

See more details on using hashes here.

File details

Details for the file django_powercrud-0.3.6-py3-none-any.whl.

File metadata

File hashes

Hashes for django_powercrud-0.3.6-py3-none-any.whl
Algorithm Hash digest
SHA256 0cf0b9041f764e48eb143a1ad4b5b0c79e2bca342060b56b6e621aa1c179ef31
MD5 27f7c0855d61ee7068b3b69a92d0d3d1
BLAKE2b-256 2567c8dca56b4ad02e188548bf03ebe55fb638c6d7d9d19b8bbddb1684a83f90

See more details on using hashes here.

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