🪵 bbmd

GitHub Flavored

Strikethrough

Wrap content in ~~ markers for strikethrough text.

FactoryAliases
b.strikethrough()b.strike(), b.st()
b.strikethrough("removed")
~~removed~~
b.paragraph("Price: ", b.st("$50"), " $30")
Price: ~~$50~~ $30

Task List

Create a checklist. Each item is a tuple of [checked, ...content].

FactoryAliases
b.list.tasks()—
b.list.tasks(
  [true, "Write documentation"],
  [false, "Add tests"],
  [true, "Ship it"],
)
- [x] Write documentation
- [ ] Add tests
- [x] Ship it

Methods

MethodDescriptionAliases
.style("x" | "X")Choose lowercase or uppercase check mark—
b.list.tasks(
  [true, "Ship it"],
).style("X")
- [X] Ship it

Task lists can be nested with other list types:

b.list.tasks(
  [true, "Phase 1"],
  b.list.unordered("Sub-item A", "Sub-item B"),
  [false, "Phase 2"],
)
- [x] Phase 1
  - Sub-item A
  - Sub-item B
- [ ] Phase 2

Emoji

Insert emoji using GitHub-style shortcodes. The shortname parameter accepts any of 300+ supported shortcodes and is fully type-safe with autocomplete.

FactoryAliases
b.emoji(shortname)b.e()
b.emoji("rocket")
:rocket:

Blockquote Alerts

GitHub-flavored blockquote alerts use the .alert() method on a blockquote block.

FactoryMethod
b.blockquote().alert(type)
b.blockquote("This is a helpful tip.").alert("tip")
> [!TIP]
> This is a helpful tip.
b.blockquote("Breaking change ahead.").alert("warning")
> [!WARNING]
> Breaking change ahead.

Alert Types

TypeDescription
noteHighlights information the user should take note of
tipOptional advice to help the user succeed
importantKey information the user needs to know
warningUrgent information requiring immediate attention
cautionPotential negative consequences of an action

On this page