Skip to main content

A collection of useful classes and functions for developing large-scale Django-based web applications.

Project description

Djblets: Your Django Production Power Tools

Project: license-badge reviewed-badge

Latest release: latest-version-badge latest-pyvers-badge latest-django-badge

Djblets is a large collection of general and special-purpose building blocks designed to help with the development of web applications written using Django and Python.

The following modules are available. These contain classes, functions, template tags, templates, etc. that can be used by your own codebase.

  • djblets.auth - Authentication-related utilities for registration, login rate limiting, and other auth-related uses

  • djblets.avatars - Avatar rendering with flexible backends (supporting Gravatars, custom URLs, file uploads, or custom options)

  • djblets.cache - Helpers for working with client-side and server-side caching needs

  • djblets.conditions - User-defined condition rules under which actions should be performed

  • djblets.configforms - Category-based, multi-form configuration pages

  • djblets.datagrid - Customizable grids for displaying information, with custom columns

  • djblets.db - Specialized fields, validation, and query operations for databases

  • djblets.extensions - Extension framework, allowing third-party developers to extend your product or service

  • djblets.features - Feature flags for enabling/disabling functionality based on any criteria

  • djblets.forms - Specialized fields and widgets, enhanced form rendering, and dictionary-backed form data

  • djblets.gravatars - Low-level functions and template tags for injecting Gravatars into pages

  • djblets.http - Utilities for working with HTTP requests and responses.

  • djblets.integrations - Framework for integrating with third-party services and offering unlimited numbers of user-defined configurations

  • djblets.log - Enhanced logging capabilities and log viewing

  • djblets.mail - Enhanced Mail sending with DMARC checks and send-on-behalf-of-user functionality

  • djblets.markdown - Markdown rendering for pages and e-mails, with WYSIWYG editing/rendering support

  • djblets.pagestate - Dynamic injection of content for page templates.

  • djblets.pipeline - Pipeline compilers for ES6 JavaScript and optimized LessCSS support

  • djblets.privacy - Privacy-by-design support, allowing consent to be requested and tracked and personal information redacted

  • djblets.protect - Locks, rate limiting, and other service protection mechanisms.

  • djblets.recaptcha - Mixins and form widgets for reCAPTCHA integration

  • djblets.registries - Base support for defining in-code registries, which tracks and allows lookup of custom-registered objects

  • djblets.secrets - Uilities and infrastructure for encryption/decryption and token generation.

  • djblets.siteconfig - In-database site configuration and settings, with Django settings mappings

  • djblets.template - Loaders for intelligent template caching and utilities for working with template caches and state

  • djblets.testing - Utilities for enhancing unit tests and defining smarter test runners

  • djblets.urls - Flexible root-level URL handlers, dynamic URL patterns that can be changed at runtime, and more

  • djblets.util - An assortment of misc. utility functions and template tags

  • djblets.views - Class-based View mixins for controlling caching and more complex dispatch behavior

  • djblets.webapi - Foundation for building fully-featured, consisent, maintainable REST APIs

We built and maintain Djblets as part of the Review Board code review product and Splat bug tracker at Beanbag.

See the documentation for guides and code references for working with Djblets.

Compatibility

Djblets 6.x (release-6.x) supports Python 3.8-3.13 and Django 4.2.

Djblets 5.x (release-5.x) supports Python 3.8-3.12 and Django 4.2.

Djblets 4.x (release-4.x) supports Python 3.8-3.12 and Django 3.2.

Djblets 3.x (release-3.x) supports Python 3.7-3.11 and Django 3.2.

Djblets 2.x (release-2.x) supports Python 2.7, 3.5, and 3.6, and Django 1.6, 1.8, 1.0. 1,0. and 1.11.

Djblets 1.x (release-1.0.x) supports Python 2.7 and Django 1.6.

Djblets 0.9 (release-0.9.x) supports Python 2.6 and 2.7, and Django 1.6.

See the release notes for information on the latest public releases.

Installing Djblets

We provide source builds and Python Wheels for Djblets.

We recommend you use Wheels unless you have a reason to use source builds (which requires a proper build setup for static media).

To install Wheels via pip:

$ pip install Djblets

Getting Support

We can help you with Djblets-related development over on our Review Board development list.

We also provide more dedicated, private support for your organization through a support contract, offering:

  • Same-day responses (generally within a few hours, if not sooner)

  • Confidential communications

  • Installation/upgrade assistance

  • Emergency database repair

  • Video/chat meetings (by appointment)

  • Priority fixes for urgent bugs

  • Backports of urgent fixes to older releases (when possible)

Support contracts fund the development of Djblets, Review Board, and our other open source projects.

Reporting Bugs

Hit a bug? Let us know by filing a bug report.

You can also look through the existing bug reports to see if anyone else has already filed the bug.

Contributing

Are you a developer? Do you want to integrate Djblets into your project and contribute back? Great! Let’s help get you started.

First off, we have a few handy guides:

We accept patches on reviews.reviewboard.org. (Please note that we do not accept pull requests.)

To post a change for review:

  1. Download RBTools:

    $ pip install rbtools
  2. Create a branch in your Git clone and make your changes.

  3. Post the change for review:

    $ rbt post

    To update your change:

    $ rbt post -u

Our Other Projects

  • Review Board - Our dedicated open source code review product for teams of all sizes.

  • Housekeeping - Deprecation management for Python modules, classes, functions, and attributes.

  • kgb - A powerful function spy implementation to help write Python unit tests.

  • Registries - A flexible, typed implementation of the Registry Pattern for more maintainable and extensible codebases.

  • Typelets - Type hints and utility objects for Python and Django projects.

You can see more on github.com/beanbaginc and github.com/reviewboard.

Project details


Release history Release notifications | RSS feed

This version

6.0

Download files

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

Source Distribution

djblets-6.0.tar.gz (1.5 MB view details)

Uploaded Source

Built Distribution

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

djblets-6.0-py3-none-any.whl (1.8 MB view details)

Uploaded Python 3

File details

Details for the file djblets-6.0.tar.gz.

File metadata

  • Download URL: djblets-6.0.tar.gz
  • Upload date:
  • Size: 1.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.6

File hashes

Hashes for djblets-6.0.tar.gz
Algorithm Hash digest
SHA256 64366e69dc10b7cbc043dfb77eb66b7b6adf6c838d63ac2e5788e82efff3ffe8
MD5 0d4509cf46dd514fb2a317770277ada4
BLAKE2b-256 9c84df35a88575bc43f711e3f3150c1e551b6f66a6c4cedd990ab669a4783dac

See more details on using hashes here.

File details

Details for the file djblets-6.0-py3-none-any.whl.

File metadata

  • Download URL: djblets-6.0-py3-none-any.whl
  • Upload date:
  • Size: 1.8 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.6

File hashes

Hashes for djblets-6.0-py3-none-any.whl
Algorithm Hash digest
SHA256 1f10ea44ba1fcfd6b0c4f14818d05ceca41e2900869872b13696432e1a86e946
MD5 4d0d23a27f0c1a9b88552be0cedb3c75
BLAKE2b-256 9e31917778321a04e9cd872db3fda9c8a828f7fef602eea8e38985006e6b0279

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