bittner / django-bootstrap-static

Bootstrap static content wrapped in a pip installable django package

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Django Bootstrap Static Files Latest version on PyPI

Bootstrap 5.3.3 jQuery 3.7.1 Font Awesome 6.5.2 Build status

Bootstrap and optional Font Awesome static files ready for the picking.

Also ships the latest jQuery compatible with Bootstrap, for optional inclusion.

Install

pip install django-bootstrap-static

Configuration

To pickup Bootstrap static files, simply include 'bootstrap', and optionally 'fontawesome', in your INSTALLED_APPS:

INSTALLED_APPS = [
    # ...
    'bootstrap',
    'fontawesome',
]

Then you can include CSS and JavaScript as usual static resources, e.g. using {% static '...' %} in your base template as follows:

{% load static %}
<head>
    <link rel="stylesheet" href="{% static 'bootstrap/css/bootstrap.min.css' %}">
    <script defer src="{% static 'fontawesome/js/all.min.js' %}"></script>
</head>
<body>
    ...
    <script src="{% static 'bootstrap/js/jquery.min.js' %}"></script>
    <script src="{% static 'bootstrap/js/bootstrap.bundle.min.js' %}"></script>
</body>

Note that in the above code sample we use SVG powered Font Awesome, as recommended by their docs. You can use Font Awesome the classic way by replacing the <script ...> tag in the <head> section above by:

<link rel="stylesheet" href="{% static 'fontawesome/css/all.min.css' %}">

If you don't use Bootstrap features that require Popper.js (e.g. dropdowns, popovers, tooltips) you can include bootstrap.min.js instead of the bundle to save a few kilobytes of bandwidth.

More details on integration may be available from each of the two projects:

Contribution

Occasionally, I forget to update this package with new bootstrap updates. Please feel free to submit a PR.

Sources and Procedures

Bootstrap: (all files from dist package)
Bootstrap website / Download ➜ drop into bootstrap/static/bootstrap/
jQuery: (compressed, uncompressed, map)

jQuery website / Download ➜ rename and mix into bootstrap/static/bootstrap/js/

Pick the latest version denoted as a dependency in bower.json (see Dependencies).

Font Awesome: (content of the on-server/ folder only)
Font Awesome website / Download Free ➜ drop into fontawesome/static/fontawesome/

Tests

Tests are great! And necessary. Please, add more. More is better! We use Tox.

pip install tox

Run all the linting and tests locally using Tox like this:

tox
tox list
tox -e package
tox -e py310,clean
tox -e format -- tests

Releases

To stay aligned with the Bootstrap release schedule we will keep version numbers of this app in sync with the bootstrap Major.Minor.Revision changes (semver). The additional version number will be added at the end to denote a new change within this package itself, e.g.

django-bootstrap-static==3.3.1.1 == Bootstrap 3.3.1 with an additional package change.

About

Bootstrap static content wrapped in a pip installable django package

License:MIT License


Languages

Language:JavaScript 97.6%Language:Python 2.4%