PHPackages                             zenstruck/commonmark-extensions - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. zenstruck/commonmark-extensions

ActiveLibrary

zenstruck/commonmark-extensions
===============================

A collection of CommonMark extensions.

1.x-dev(2y ago)10844↓35%2[1 PRs](https://github.com/zenstruck/commonmark-extensions/pulls)MITPHPPHP &gt;=8.0

Since Apr 16Pushed 2y ago2 watchersCompare

[ Source](https://github.com/zenstruck/commonmark-extensions)[ Packagist](https://packagist.org/packages/zenstruck/commonmark-extensions)[ Docs](https://github.com/zenstruck/commonmark-extensions)[ GitHub Sponsors](https://github.com/kbond)[ GitHub Sponsors](https://github.com/nikophil)[ RSS](/packages/zenstruck-commonmark-extensions/feed)WikiDiscussions 1.x Synced 1mo ago

READMEChangelogDependencies (5)Versions (1)Used By (0)

zenstruck/commonmark-extensions
===============================

[](#zenstruckcommonmark-extensions)

Installation
------------

[](#installation)

```
composer require zenstruck/commonmark-extensions
```

GFM Admonitions (Notes)
-----------------------

[](#gfm-admonitions-notes)

[![Sample](doc/github_admonition.png)](doc/github_admonition.png)

The `AdmonitionExtension` adds support for [GFM style admonitions](https://github.com/orgs/community/discussions/16925).

Enable the extension:

```
use League\CommonMark\Environment\Environment;
use Zenstruck\CommonMark\Extension\GitHub\AdmonitionExtension;

/** @var Environment $environment */

$environment->addExtension(new AdmonitionExtension());
```

The following markdown:

```
> [!NOTE]
> Admonition content...
```

Renders as:

```

    Note

        Admonition content...

```

Note

See [this sample CSS file](doc/github-admonitions.css) to style the admonitions similar to GitHub.

Tabbed Content
--------------

[](#tabbed-content)

[![Sample](doc/tabbed.png)](doc/tabbed.png)

The `TabbedExtension` adds support for "tabbed" content.

Enable the extension:

```
use League\CommonMark\Environment\Environment;
use Zenstruck\CommonMark\Extension\TabbedExtension;

/** @var Environment $environment */

$environment->addExtension(new TabbedExtension());
```

The following markdown:

```
- ===Tab item 1

  List item 1 content

- ===Tab item 2

  Tab item 2 content

- ===Tab item 3

  Tab item 3 content

  more content
```

Renders as:

```

            Tab item 1

            Tab item 2

            Tab item 3

            List item 1 content

            Tab item 2 content

            Tab item 3 content
            more content

```

Note

The tab and panel ids are randomly generated to avoid conflicts.

Note

It is up to you to style the tabs and make them interactive. The extension only provides the HTML structure.

Tip

You can customize the theme as an array passed to `TabbedExtension::__construct()`. See `TabbedExtension::THEMES` for details.

A working bootstrap theme is provided. Construct the extension with the `TabbedExtension::bootstrapTheme()` named constructor to use.

###  Health Score

23

—

LowBetter than 27% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity27

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity30

Early-stage or recently created project

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Unknown

Total

1

Last Release

762d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/707369cc916e0ea1aacbf077dcba464f611cef879f024d8944311a54a15224b3?d=identicon)[kbond](/maintainers/kbond)

---

Top Contributors

[![kbond](https://avatars.githubusercontent.com/u/127811?v=4)](https://github.com/kbond "kbond (4 commits)")

###  Code Quality

TestsPHPUnit

Static AnalysisPHPStan

Type Coverage Yes

### Embed Badge

![Health badge](/badges/zenstruck-commonmark-extensions/health.svg)

```
[![Health](https://phpackages.com/badges/zenstruck-commonmark-extensions/health.svg)](https://phpackages.com/packages/zenstruck-commonmark-extensions)
```

###  Alternatives

[laravel/framework

The Laravel Framework.

34.7k509.9M17.0k](/packages/laravel-framework)[statamic/cms

The Statamic CMS Core Package

4.8k3.2M720](/packages/statamic-cms)[graham-campbell/markdown

Markdown Is A CommonMark Wrapper For Laravel

1.3k7.1M64](/packages/graham-campbell-markdown)[tightenco/jigsaw

Simple static sites with Laravel's Blade.

2.2k438.5k29](/packages/tightenco-jigsaw)[phiki/phiki

Syntax highlighting using TextMate grammars in PHP.

3573.0M23](/packages/phiki-phiki)[laravel-lang/publisher

Localization publisher for your Laravel application

2167.7M24](/packages/laravel-lang-publisher)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
