Skip to main content

Django application to add the Bulma CSS framework and its extensions

Project description

django-simple-bulma

Build Status Discord

django-simple-bulma is a Django application that makes Bulma and Bulma-Extensions available to use in your Django project with as little setup as possible. The goal of this project is to make it as easy as possible to use Bulma with Django.

This project currently uses Bulma v0.7.2 and Bulma-Extensions v4.0.0. If you want features that are only available in newer versions of these frameworks, please create an issue, and we will be happy to update it.

Installation

To get django-simple-bulma, up and running for your Django project, follow these simple steps:

  • Install it from PyPI with pip install django-simple-bulma (or add it to your Pipfile)

  • In your Django projects settings.py file:

    • Add django_simple_bulma to your INSTALLED_APPS
      INSTALLED_APPS = [
        #...
        'django_simple_bulma',
        #...
      ]
      
    • Add django_simple_bulma.finders.SimpleBulmaFinder to your STATICFILES_FINDERS. This normally holds two default handlers that you will probably want to keep, so unless you have any other custom Finders, it should look like this:
      STATICFILES_FINDERS = [
        # First add the two default Finders, since this will overwrite the default.
        'django.contrib.staticfiles.finders.FileSystemFinder',
        'django.contrib.staticfiles.finders.AppDirectoriesFinder',
      
        # Now add our custom SimpleBulma one.
        'django_simple_bulma.finders.SimpleBulmaFinder',
      ]
      
  • Run python manage.py collectstatic command in order to build Bulma and move it to your staticfiles folder. Please note that you will need to use this command every time you make a change to the configuration, as this is the only way to rebuild the Bulma css file. If you are not using collectstatic, read up on it and start using it.

    This app works fine with Whitenoise, which is a great way to serve static files without needing to mess with your webserver.

  • django-simple-bulma should now be working. In order to import it into your template, simply use the following template tags:

      <head>
          <!-- ... -->
          {% load django_simple_bulma %}
          {% bulma %}
          <!-- ... -->
      </head>
    
  • You're all set! Any Bulma classes you apply should now be working!

Customization

Bulma looks nice by default, but most users will want to customize its look and feel. For this, we've provided a super simple way to change the Bulma variables and to choose which Bulma extensions you want to load into your project.

In order to do this, we'll simply create a dictionary inside your settings.py called BULMA_SETTINGS, and configure it there. Here's an example of what that looks like:

# Custom settings for django-simple-bulma
BULMA_SETTINGS = {
    "extensions": [
        "bulma-accordion",
        "bulma-calendar",
    ],
    "variables": {
        "primary": "#000000",
        "size-1": "6rem",
    }
}

You may here define any variable found on the Bulma variables page, and you may use any valid SASS or CSS as the value. For example, hsl(217, 71%, 53%) would be a valid value for a color variable, as would #ffff00. Please note that any syntactically incorrect values may prevent Bulma from building correctly, so be careful what you add here unless you know exactly what you're doing.

If the extensions key is not found, it will default to loading all extensions. If you don't want any extensions, simply set it to an empty list.

Additional scripts

For your convenience, we also give you the option to add other quality of life improvements to your Bulma app. If you are not specifying any extensions in BULMA_SETTINGS, these will all be loaded by default. If you are, you may want to add these as well if they sound useful to you.

  • bulma-fileupload will handle displaying the filename in your file upload inputs.
  • bulma-notifications will allow you to close notifications by clicking on the X button.

Troubleshooting

If you run into any trouble with this app, please create an issue, and we will be happy to help you with it. Alternatively, head over to our discord server at https://discord.gg/python and we'll help you figure it out over chat.

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-simple-bulma-1.1.0.tar.gz (185.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_simple_bulma-1.1.0-py3-none-any.whl (229.0 kB view details)

Uploaded Python 3

File details

Details for the file django-simple-bulma-1.1.0.tar.gz.

File metadata

  • Download URL: django-simple-bulma-1.1.0.tar.gz
  • Upload date:
  • Size: 185.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.21.0 setuptools/39.0.1 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.7.0

File hashes

Hashes for django-simple-bulma-1.1.0.tar.gz
Algorithm Hash digest
SHA256 1d70983a55901075f5b67baeb371da3e8f8a58a3b33705e9f236bf2aa98f180a
MD5 100b88ddc35d4b81ff178e0b3ace6fe1
BLAKE2b-256 0c5f4967201c874bc2fd84d625358c4a3e07ef6ddb3f1fe72f91b40ace0d9655

See more details on using hashes here.

File details

Details for the file django_simple_bulma-1.1.0-py3-none-any.whl.

File metadata

  • Download URL: django_simple_bulma-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 229.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.21.0 setuptools/39.0.1 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.7.0

File hashes

Hashes for django_simple_bulma-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2a80b020830c7753fb37d1056a1aa7b3613345543241c8efc6fafa2ddde7e609
MD5 8f88463571f9674c0b1efcb32970f476
BLAKE2b-256 f70bce69e3a84c447b2606d9045ac3dfe977d061000ecc52ee0df25ffa749a94

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