crispy-bulma
Bulma template pack for django-crispy-forms
Documentation: https://crispy-bulma.readthedocs.io.
Requirements
Officially supported versions:
Django: 4.2, 5.0, 5.1, 5.2
Python 3.8, 3.9, 3.10, 3.11, 3.12, 3.13
django-crispy-forms 2.0, 2.1, 2.2, 2.3, 2.4
Bulma.css >= 0.9.4 (tested until 1.0.4)
Quickstart
Install this plugin using pip:
$ pip install crispy-bulma
You will need to update your project’s settings file to add crispy_forms and crispy_bulma to your projects INSTALLED_APPS. Also set bulma as and allowed template pack and as the default template pack for your project:
INSTALLED_APPS = (
...
"crispy_forms",
"crispy_bulma",
...
)
CRISPY_ALLOWED_TEMPLATE_PACKS = ("bulma",)
CRISPY_TEMPLATE_PACK = "bulma"
Credits
This project is based on an archived crispy-forms-bulma fork by Discord
The original crispy-forms-bulma project is by Jure Hotujec
This package was created with Cookiecutter and the audreyr/cookiecutter-pypackage project template.
License
MIT license
History
0.12.0 (2025-05-11)
Feature: add support for Fieldset. Feature contributed by DaeronAlagos.
Add support for Bulma 1.0.0, 1.0.1, 1.0.2, 1.0.3, 1.0.4
Add support for Django 5.1
Add support for Django 5.2
Add support for Python 3.13
Add support for django-crispy-forms 2.2, 2.3, 2.4
0.11.0 (2023-12-06)
Add support for Django 5.0
Drop support for Django 3.2, 4.0 and 4.1
Add support for django-crispy-forms 2.1
BREAKING CHANGE: help text id attribute is now differently named: hint_{{ field.auto_id }} -> {{ field.auto_id }}_helptext
0.10.0 (2023-07-03)
Drop support for Python 3.7
Add support for Python 3.12
Add support for Django 4.2
0.9.0 (2023-03-05)
Drop support for django-crispy-forms 1.12.0, 1.13.0 and 1.14.0
Add support for django-crispy-forms 2.0
Drop support for Django 2.2
0.8.3 (2023-01-31)
Fix Select widget error state rendering (the red border was missing).
0.8.2 (2023-01-29)
Add support for Django 4.1
Add support for Python 3.11
0.8.1 (2023-01-22)
Fix DateField, DateTimeField and TimeField widget rendering
Fix DecimalField, FloatField, IntegerField and URLField widget rendering. Fix contributed by pythonbrad.
Fix FileUploadInput widget rendering. Fix contributed by pythonbrad.
Fix passing attributes to IconField. Fix contributed by davy39.
0.8.0 (2022-04-28)
Feature: add FormGroup layout object
Fix Submit and Reset input rendering
BREAKING CHANGE: Button is now rendered as <button></button>. For <input type="submit" /> use Submit.
BREAKING CHANGE: Redesign IconField. Instead of IconField("envelope") call it with the full icon class e.g. IconField("fa fa-envelope").
Drop support for Django 3.1
Drop support for Python 3.6
0.7.0 (2022-04-17)
Fix FormHelper.field_template attribute
Feature: add InlineCheckboxes field
Feature: add InlineRadios field
Add support for django-crispy-forms 1.14.0
Add support for Python 3.10
0.6.0 (2022-04-15)
Add support for Django 4.0
Fix SelectMultiple widget rendering
0.5.1 (2022-04-14)
Readd templatetags removed by mistake.
0.5.0 (2022-04-13)
Drop support for Django 3.0
Upgrade crispy_forms dependency, now version >= 1.12.0 is required
0.4.0 (2022-04-13)
Feature: add label_class helper attribute
Feature: add support for horizontal forms
BREAKING CHANGE: HTML in labels is now being escaped, this is consistent with django.
BREAKING CHANGE: EmailField and EmailInput have been removed. Use django.forms.EmailField instead.
Feature: add support for forms.MultipleChoiceField with CheckboxSelectMultiple as widget.
0.3.1 (2022-04-08)
Fix input wrapper, replace p tag with a div
Fix checkbox rendering, the input was rendered twice
Initial version by ckrybus (tests, docs, packaging, no logic changes)
0.3.0 (2020-03-22) [1]
Add support for django 3.0
0.2.0 (2019-12-12) [1]
Update dependency pinning
0.1.2 (2019-04-02) [1]
Add EmailInput widget
0.1.1 (2019-01-15) [1]
Update docs
0.1.0 (2019-01-13) [1]
Initial version by discord.
1.1.3 (2017-11-06) [2]
Added input with icons
1.1.2 (2017-11-06) [2]
Added template for non-field errors
Fix radio select, which now appears inline
Fix form actions template (submit, reset)
1.1.1 (2017-11-06) [2]
Initial version by @jhotujec
Footnotes
Metadata
Release files for crispy-bulma 0.12.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| crispy_bulma-0.12.0.tar.gz | 34.9 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| crispy_bulma-0.12.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 57.0 kB
Release files / crispy_bulma-0.12.0.tar.gz
| Download URL | crispy_bulma-0.12.0.tar.gz |
|---|---|
| Size | 34.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
15edbab15a313635b990fe64752297a37d752b2f3b6aa2c6b9060da54a33dda2
|
|
BLAKE2b-256 checksum How to use checksums |
9921072e37f692f2cacb9807153b64ab214f67847644a3097a4dbd6bec699b59
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.3
|
Release files / crispy_bulma-0.12.0-py3-none-any.whl
| Download URL | crispy_bulma-0.12.0-py3-none-any.whl |
|---|---|
| Size | 22.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
6fb2b01d3fac6ad7a9d062164fc769711f47149138f00dfbd2f9a4ce14907982
|
|
BLAKE2b-256 checksum How to use checksums |
cc6e54efc125f9eaf58f4a1cd2e3dd5f04e65e4c6984bf2ee7e11db91a31021a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.3
|
Security for crispy-bulma 0.12.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.