Drupal is a registered trademark of Dries Buytaert
drupal 11.3.7 Update released for Drupal core (11.3.7)! drupal 11.2.11 Update released for Drupal core (11.2.11)! drupal 10.6.7 Update released for Drupal core (10.6.7)! drupal 10.5.9 Update released for Drupal core (10.5.9)! cms 2.1.1 Update released for Drupal core (2.1.1)! drupal 11.3.6 Update released for Drupal core (11.3.6)! drupal 10.6.6 Update released for Drupal core (10.6.6)! cms 2.1.0 Update released for Drupal core (2.1.0)! bootstrap 8.x-3.40 Minor update available for theme bootstrap (8.x-3.40). menu_link_attributes 8.x-1.7 Minor update available for module menu_link_attributes (8.x-1.7). eca 3.1.1 Minor update available for module eca (3.1.1). layout_paragraphs 2.1.3 Minor update available for module layout_paragraphs (2.1.3). ai 1.3.3 Minor update available for module ai (1.3.3). ai 1.2.14 Minor update available for module ai (1.2.14). node_revision_delete 2.0.3 Minor update available for module node_revision_delete (2.0.3). moderated_content_bulk_publish 2.0.52 Minor update available for module moderated_content_bulk_publish (2.0.52). klaro 3.0.10 Minor update available for module klaro (3.0.10). klaro 3.0.9 Minor update available for module klaro (3.0.9). layout_paragraphs 2.1.2 Minor update available for module layout_paragraphs (2.1.2). geofield_map 11.1.8 Minor update available for module geofield_map (11.1.8).

tabby

5 sites Security covered
View on drupal.org

The Tabby JS library was chosen as it is lightweight, accessible,
just vanilla JS, and is already being used by Webform so many Drupal installs will already have the library present.

Features

Create a default set of tabs:

$build['tabs'] = [
  '#theme' => 'tabby_tabs',
  '#labels' => ['Label One', 'Label Two'],
  '#content' => [
    ['#markup' => 'Content One'],
    ['#markup' => 'Content Two'],
  ],
];

Additional Requirements

This module requires the tabby js library.
See the readme file for instructions on installing this via composer.

Tabby viewfield creates a field formatter for fields of type viewfield.

This means if you have a multi-cardinality view field you can place each view in a different tab.

Similar projects

Quick Tabs

  • Not possible to create tabs with a render array.
  • Not accessible unless you use quicktabs-accessible library which currently has some issues with D11.

Block Tabs

  • Not possible to create tabs with a render array.
  • No Drupal 11 version
  • Is based on jQuery

Bootstrap Horizontal Tabs

  • Not possible to create tabs with a render array.
  • Does not come with a JS library - you have to install Bootstrap yourself.

Activity

Total releases
4
First release
Sep 2025
Latest release
3 months ago
Release cadence
37 days
Stability
50% stable

Release Timeline

Releases

Version Type Release date
1.0.1 Stable Jan 13, 2026
1.0.0 Stable Oct 22, 2025
1.0.0-beta1 Pre-release Oct 15, 2025
1.0.x-dev Dev Sep 23, 2025