note

This rune is part of @refrakt-md/storytelling. Install with npm install @refrakt-md/storytelling and add "@refrakt-md/storytelling" to the packages array in your refrakt.config.json.

Lore

In-world knowledge entries for worldbuilding — myths, prophecies, historical records, legends, or encyclopedia articles. Content is rendered directly as the lore body, with optional spoiler protection.

Basic usage

Wrap any in-world knowledge in a lore entry with a title and category.

{% lore title="The Prophecy of the Chosen One" category="prophecy" spoiler=true %}
An ancient text found in the ruins of the First Temple.

> *When darkness covers the land and the last star fades,
> one shall rise from forgotten blood to forge the world anew.*

The prophecy has been interpreted differently by various factions throughout history.
{% /lore %}
<article data-field="content-section" data-rune="lore" typeof="Article">
  <span data-name="title" property="headline">The Prophecy of the Chosen One</span>
  <meta content="prophecy" data-field="category" property="articleSection">
  <meta content="true" data-field="spoiler">
  <meta content="" data-field="tags">
  <div data-name="body">
    <p>An ancient text found in the ruins of the First Temple.</p>
    <blockquote>
      <p>
        <em marker="*">
          When darkness covers the land and the last star fades,
          one shall rise from forgotten blood to forge the world anew.
        </em>
      </p>
    </blockquote>
    <p>The prophecy has been interpreted differently by various factions throughout history.</p>
  </div>
</article>
Category:prophecy
The Prophecy of the Chosen One

An ancient text found in the ruins of the First Temple.

When darkness covers the land and the last star fades, one shall rise from forgotten blood to forge the world anew.

The prophecy has been interpreted differently by various factions throughout history.

<article data-field="content-section" typeof="Article" class="rf-lore rf-lore--prophecy rf-lore--true" data-category="prophecy" data-spoiler="true" data-rune="lore" data-density="full">
  <div data-name="badge" class="rf-lore__badge" data-section="header">
    <span data-name="category-badge" data-meta-type="category" data-meta-rank="primary" class="rf-lore__category-badge">
      <span data-meta-label="">Category:</span>
      <span data-meta-value="">prophecy</span>
    </span>
  </div>
  <div data-name="content" class="rf-lore__content" data-section="body">
    <span data-name="title" property="headline" class="rf-lore__title" data-section="title">The Prophecy of the Chosen One</span>
    <meta content="prophecy" data-field="category" property="articleSection" />
    <meta content="true" data-field="spoiler" />
    <meta content="" data-field="tags" />
    <div data-name="body" class="rf-lore__body">
      <p>An ancient text found in the ruins of the First Temple.</p>
      <blockquote>
        <p>
          <em marker="*">
            When darkness covers the land and the last star fades,
             
            one shall rise from forgotten blood to forge the world anew.
          </em>
        </p>
      </blockquote>
      <p>The prophecy has been interpreted differently by various factions throughout history.</p>
    </div>
  </div>
</article>

Categories

Use the category attribute to classify different types of lore.

{% lore title="The Founding of Ironhold" category="history" %}
In the third age, a band of dwarven exiles discovered rich veins of mithril beneath the Grey Peaks. They established Ironhold, which grew into the greatest forge-city the world had ever seen.
{% /lore %}
<article data-field="content-section" data-rune="lore" typeof="Article">
  <span data-name="title" property="headline">The Founding of Ironhold</span>
  <meta content="history" data-field="category" property="articleSection">
  <meta content="false" data-field="spoiler">
  <meta content="" data-field="tags">
  <div data-name="body">
    <p>In the third age, a band of dwarven exiles discovered rich veins of mithril beneath the Grey Peaks. They established Ironhold, which grew into the greatest forge-city the world had ever seen.</p>
  </div>
</article>
Category:history
The Founding of Ironhold

In the third age, a band of dwarven exiles discovered rich veins of mithril beneath the Grey Peaks. They established Ironhold, which grew into the greatest forge-city the world had ever seen.

<article data-field="content-section" typeof="Article" class="rf-lore rf-lore--history rf-lore--false" data-category="history" data-spoiler="false" data-rune="lore" data-density="full">
  <div data-name="badge" class="rf-lore__badge" data-section="header">
    <span data-name="category-badge" data-meta-type="category" data-meta-rank="primary" class="rf-lore__category-badge">
      <span data-meta-label="">Category:</span>
      <span data-meta-value="">history</span>
    </span>
  </div>
  <div data-name="content" class="rf-lore__content" data-section="body">
    <span data-name="title" property="headline" class="rf-lore__title" data-section="title">The Founding of Ironhold</span>
    <meta content="history" data-field="category" property="articleSection" />
    <meta content="false" data-field="spoiler" />
    <meta content="" data-field="tags" />
    <div data-name="body" class="rf-lore__body">
      <p>In the third age, a band of dwarven exiles discovered rich veins of mithril beneath the Grey Peaks. They established Ironhold, which grew into the greatest forge-city the world had ever seen.</p>
    </div>
  </div>
</article>

Attributes

AttributeTypeDefaultDescription
titlestringLore entry title (required)
categorystringCategory or classification (e.g. prophecy, history, legend, myth)
spoilerbooleanfalseWhether this entry contains spoilers
tagsstringComma-separated metadata tags

Common attributes

All block runes share these attributes for layout and theming.

AttributeTypeDefaultDescription
widthstringcontentPage grid width: content, wide, or full
spacingstringVertical spacing: flush, tight, default, loose, or breathe
insetstringHorizontal padding: flush, tight, default, loose, or breathe
tintstringNamed colour tint from theme configuration
tint-modestringautoColour scheme override: auto, dark, or light
bgstringNamed background preset from theme configuration