Skip to main content
Jahia Store
EN

Bootstrap 5 Package

community
Download 2.4.5

Information

Module ID
Bootstrap5
Status
community
Category
Pre-built templates and components
Author
pvollenweider
Developer website
https://github.com/Jahia/bootstrap5
Requires Jahia
8.2.0.0
Updated
2026-08-12
Tags
  • bootstrap
  • templates
  • layout

This project is a Bootstrap 5 implementation of http://getbootstrap.com for the Digital Experience Platform.

Get the full documentation on the GitHub page https://github.com/Jahia/bootstrap5

This package contains all the Bootstrap 5 modules:

  • bootstrap5-core contains all assets (CSS and JS files), and also the main mixin bootstrap5mix:component is used on all bootstrap components. It also contains the component Version that displays the embedded version of bootstrap in an alert box, on edit mode.

  • bootstrap5-components contain all the components, definitions, views, and logic.

  • bootstrap5-templates-starter is a template set that allows you to play with the Bootstrap 5 components. This template set provides only an empty page but adds the related dependencies, and supports the RTL

Versions

WCAG 2.1 AA compliance pass. Corrected ARIA across all components. Navbar adds three-level dropend submenus.

Requires Jahia 8.2.0.0Updated 2026-08-12

🔼 Bootstrap updated: 5.3.7 → 5.3.8

Minor Bootstrap update including upstream bug fixes.


🐛 Bug fixes

  • Language switcher — removed redundant/deprecated aria-owns attribute
  • Login dropdown — duplicate class attribute on the Logout link (the logout class was silently ignored by the browser)
  • Navbar — dropdown menus overflowing the viewport when the navbar is not inside a Bootstrap container
  • Figure — missing fn taglib causing a JSP compilation error
  • CarouselItem — Bootstrap 3 markup used in edit mode, replaced with Bootstrap 5
  • Offcanvas — undefined ${visibility} variable generating an invalid HTML attribute
  • Carousel — undefined ${carouselCaptionClass} variable
  • Navbar — typo brandImageMobileeUrl (double e) preventing mobile brand image from rendering
  • Navbar — wrong i18n key bootstrap5nt_navbarnavbar for the language switcher aria-label
  • Margin mixin — wrong package declaration in margin.margin.groovy

📖 Documentation

  • Fixed inconsistencies between markdown documentation and CND definitions (button, navbar, grid)
  • Documented navbar brand resolution behaviour (site node vs local component)
  • Added Javadoc to initializer classes (ButtonTypeInitializerGridTypeInitializerNavbarRootInitializer)
  • Added JSDoc to multilevel-nav.js

Full Changelogbootstrap5-modules-2.4.3...bootstrap5-modules-2.4.4

Requires Jahia 8.2.0.0Updated 2026-08-12

Dependency Updates

  • Updated all Bootstrap assets to version 5.3.7:
  • This includes .css, .min.css, .rtl.css, and .js files across the core module.
  • View all changes here: https://github.com/twbs/bootstrap/releases/tag/v5.3.7
Requires Jahia 8.2.0.0Updated 2026-08-12

Enhancements

  • Pagination Placeholder in Edit Mode
    Added a placeholder message for empty pagination components when in edit mode. This improves UX by making the component’s presence visible even when no items are available.
Requires Jahia 8.2.0.0Updated 2026-08-12

New Features

  • Improved documentation:
    • Added a new section in docs/text.md describing how to use the bootstrap5mix:text mixin in custom definitions, including how to display its value in JSP.
  • Compatibility updates for Jahia 8.2:
    • The bootstrap5-package module was enhanced to properly support Jahia 8.2:
    • Added Jahia-Required-Version: 8.2.0.0 to the manifest.
    • Included a dependency on the skins module (org.jahia.modules:skins:8.2.0).
    • Improved configuration of the maven-assembly-plugin and maven-dependency-plugin to ensure valid and complete package generation.

Dependency Updates

  • Updated all Bootstrap assets to version 5.3.6:
  • This includes .css, .min.css, .rtl.css, and .js files across the core module.
  • View all changes here: https://github.com/twbs/bootstrap/releases/tag/v5.3.6
Requires Jahia 8.2.0.0Updated 2026-08-12

Compatibility Notice

  • This version requires Jahia 8.2 or higher.
  • All dependencies on Spring Framework have been removed to simplify the codebase and eliminate unused dependencies.

New Features

  • Enhanced Navbar Customization
  • Introduced two new configurable properties:
    • liClass: defines the CSS class for each <li> item in the navbar (default: nav-item).
    • navLinkClass: defines the CSS class for each <a> link in the navbar (default: nav-link).
  • These properties are available through the bootstrap5mix:customizeNavbar mixin and supported in both JSP and Groovy-based views.
  • Improved CKEditor Integration
  • Added “Remove Format” button to clear inline formatting.
  • Introduced a custom “Wash” button to clean up pasted HTML (e.g., from MS Word), removing unnecessary tags and styles.
  • Integrated purify.min.js and beautify-html.min.js to sanitize and beautify content.

Enhancements

  • Refactored navbar.basenav-multilevel.groovy
  • Simplified rendering logic with reusable helper methods.
  • Improved readability and maintainability of the recursive menu generation.
  • Enhanced support for jnt:pagejnt:nodeLink, and jnt:externalLink menu items.
  • Security & Compatibility
  • Added a safety check in ckconfig.js to prevent errors when accessing combo_inlinestyles if the UI component is not present in CKEditor.

Documentation

  • Updated docs/navbar.md to describe the new customizable navbar properties.
  • Updated docs/text.md and replaced text.png to reflect the new CKEditor toolbar with format-cleaning options.
Requires Jahia 8.2.0.0Updated 2026-08-12
  • Add new tab type "underline"
  • Add missing resource for permissions
  • Update assets to Bootstrap v5.3.3
     
Requires Jahia 8.0.0.0Updated 2026-08-12
  • Update assets to Bootstrap 5.3.1
  • Improvements on CKEditor configuration
  • Enhance the documentation
Requires Jahia 8.0.0.0Updated 2026-08-12

Fix the remember me login feature

Requires Jahia 8.0.0.0Updated 2026-08-12
  • Prevent redirect issue on login
  • Adding jmix:accessControllableContent as a parent to the components'category, to generate permission for this category
  • Only load jQuery + multilevel assets if needed
Requires Jahia 8.0.0.0Updated 2026-08-12

Starting with version 2.2.0, the bootstrap5-core bundle no longer provides mappings for assets. This means that you will need to ensure that all of your views use one of the following resources for a Bootstrap 5 project:

  • bootstrap.min.css
  • bootstrap.bundle.min.js

If you suspect that your code or some third-party bundles are still using uncompressed resources such as bootstrap.css or bootstrap.js, and even popper.js or popper.min.js, you may need to add the following mappings in a spring file:

<bean class="org.jahia.services.render.StaticAssetMapping">
    <property name="mapping">
        <map>
            <entry key="bootstrap.css" value="bootstrap.min.css"/>
            <entry key="bootstrap.js" value="bootstrap.bundle.min.js"/>
            <entry key="bootstrap.min.js" value="bootstrap.bundle.min.js"/>
            <entry key="popper.js" value="bootstrap.bundle.min.js"/>
            <entry key="popper.min.js" value="bootstrap.bundle.min.js"/>
        </map>
    </property>
</bean>

For best practice, it is recommended to use the following code when adding Bootstrap 5 resources to your templates:

<template:addResources type="css" resources="bootstrap.min.css"/>
<template:addResources type="javascript" resources="bootstrap.bundle.min.js" targetTag="${renderContext.editMode?'head':'body'}"/>
Requires Jahia 8.0.0.0Updated 2026-08-12

Update assets to v5.2.3

Requires Jahia 8.0.0.0Updated 2026-08-12

Set the tab name as the URL fragment when clicking on a tab

Requires Jahia 8.0.0.0Updated 2026-08-12

Update assets to v5.2.2

Requires Jahia 8.0.0.0Updated 2026-08-12

Update assets to v5.2.1

Requires Jahia 8.0.0.0Updated 2026-08-12

Update assets to v5.2.0

Requires Jahia 8.0.0.0Updated 2026-08-12

Rename some initializers for a better cohabitation with Bootstrap 4

Requires Jahia 8.0.0.0Updated 2026-08-12
  • Update assets to v5.2.0-beta1
  • Keep "row" string in custom row class name
  • Remove jQuery dependency on tabs
  • Use buttons for tabs
Requires Jahia 8.0.0.0Updated 2026-08-12

Change versions to 2.0.x so the version for Jahia 8 is bigger than Jahia 7 version.

This release has the same features and the same code as v1.0.8

Requires Jahia 8.0.0.0Updated 2026-08-12

Changelog:

  • Bootstrap5-core bundle no longer provides mappings for assets (QA-14549)
  • Update assets to v5.2.3
  • Set the tab name as the URL fragment when clicking on a tab
  • Keep "row" string in custom row class name
  • Remove jQuery dependency on tabs
  • Use buttons for tabs

About the mappings for assets

Starting with version 1.2.0, the bootstrap5-core bundle no longer provides mappings for assets. This means that you will need to ensure that all of your views use one of the following resources for a Bootstrap 5 project:

  • bootstrap.min.css
  • bootstrap.bundle.min.js

If you suspect that your code or some third-party bundles are still using uncompressed resources such as bootstrap.css or bootstrap.js, and even popper.js or popper.min.js, you may need to add the following mappings in a spring file:

<bean class="org.jahia.services.render.StaticAssetMapping">
    <property name="mapping">
        <map>
            <entry key="bootstrap.css" value="bootstrap.min.css"/>
            <entry key="bootstrap.js" value="bootstrap.bundle.min.js"/>
            <entry key="bootstrap.min.js" value="bootstrap.bundle.min.js"/>
            <entry key="popper.js" value="bootstrap.bundle.min.js"/>
            <entry key="popper.min.js" value="bootstrap.bundle.min.js"/>
        </map>
    </property>
</bean>

For best practice, it is recommended to use the following code when adding Bootstrap 5 resources to your templates:

<template:addResources type="css" resources="bootstrap.min.css"/>
<template:addResources type="javascript" resources="bootstrap.bundle.min.js" targetTag="${renderContext.editMode?'head':'body'}"/>

Full Changelogbootstrap5-modules-1.1.2...bootstrap5-modules-1.2.0

Requires Jahia 7.3.0.0Updated 2026-08-12

Rename the pagesandfiles picker to pagesandfiles5 to avoid conflicts with Bootstrap 4

Requires Jahia 7.3.0.0Updated 2026-08-12

Upgrade assets to Bootstrap v5.1.3

Requires Jahia 7.3.0.0Updated 2026-08-12

New release for Jahia 7.3

Requires Jahia 7.3.0.0Updated 2026-08-12

Rename the pagesandfiles picker to pagesandfiles5 to avoid conflicts with Bootstrap 4

Requires Jahia 8.0.0.0Updated 2026-08-12

Upgrade assets to Bootstrap v5.1.3

Requires Jahia 8.0.0.0Updated 2026-08-12

Update Bootstrap 5 assets to v5.1.1

Requires Jahia 8.0.0.0Updated 2026-08-12
  • Update Bootstrap 5 assets to v5.1.0
Requires Jahia 8.0.0.0Updated 2026-08-12
  • Update Bootstrap 5 assets to v5.0.2
  • Fixes on Navmenu: status of the page, title for nodeLink, prevent duplicate IDs for more than 1 navigation menu is used on the same page
  • Add a Bootstrap5 view for the privacySettingsModal
Requires Jahia 8.0.0.0Updated 2026-08-12
  • Add new property to set Class(es) to set on the Card Header
  • Workaround for QA-13750 (resources set to body with targetTag are not loaded; set to head on edit mode)
     
Requires Jahia 8.0.0.0Updated 2026-08-12

Update assets to v5.0.1. Check full change log at https://github.com/twbs/bootstrap/releases/tag/v5.0.1

Requires Jahia 8.0.0.0Updated 2026-08-12
Requires Jahia 8.0.0.0Updated 2026-08-12

Core

  • Update Bootstrap assets to v5.0.0-beta3

Templates

  • Move call to the Bootstrap JavaScript at the end of the body

Components

  • New component Offcanvas (as a part of the button)
  • Move call to the Bootstrap JavaScript at the end of the body
Requires Jahia 8.0.0.0Updated 2026-08-12
  • Add sticky footer template example
  • Add icons for choice lists
  • Change mixin order for cards
Requires Jahia 8.0.0.0Updated 2026-08-12

Update Bootstrap assets to v5.0.0-beta2

Requires Jahia 8.0.0.0Updated 2026-08-12

Components

  • Fix navbar on live mode
Requires Jahia 8.0.0.0Updated 2026-08-12

Components

  • Improvement on navnar component to make it really recursive
  • Add some fieldset override config to handle the fieldset ranking on grid and navbar compoments

Template

  • A 2 new absolute area header and footer

General

  • Change groupId from org.foo.modules to org.jahiacommunity.modules
  • Add new package module
     
Requires Jahia 8.0.0.0Updated 2026-08-12