A collection of useful classes and functions for developing large-scale Django-based web applications.
Project description
Djblets
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.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.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 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.
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:
Review Board Contributor Guide - This generally applies to Djblets as well.
We accept patches on reviews.reviewboard.org. (Please note that we do not accept pull requests.)
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.