Style guide

This page exercises every text effect, every Starlight built-in component, and the custom ember components. Use it as a styling test surface and as a reference when authoring new docs.

Plain paragraph with bold text, italic text, bold italic, strikethrough, inline code, and a link to the homepage.

Keyboard combination: press Ctrl+Shift+P to open the command palette.

A custom highlighted term sits inline without breaking the flow. Useful for emphasizing a single phrase like the EmbersTextAPI.

Footnote demo1.

A standard paragraph of body text. Manrope renders here at 16px with 1.65 line-height. Long-form prose should remain comfortable to read for several minutes; the cream-on-deep-brown contrast aims for a relaxed reading session by firelight rather than a clinical datasheet.

A blockquote with a single line of attribution.

A multi-line blockquote that spans more than one sentence to demonstrate how the left-border, italic body, and rounded right corners hold up across line wraps. The accent color reinforces the warm palette without competing with the surrounding body text.

Anonymous

Unordered:

  • First item
  • Second item
    • Nested item
    • Another nested item
      • Deeper nest
  • Third item

Ordered:

  1. Open the project
  2. Run the dev server
  3. Iterate on styles

Mixed:

  1. Top-level numbered step
    • Sub-bullet under a numbered step
    • Another sub-bullet
  2. Second numbered step

Task list (GitHub-flavored):

  • Define design tokens
  • Restyle Starlight components
  • Add scroll-driven decorations (out of scope)
  • Add KaTeX support (deferred)
TokenValueWhere used
--ember-accent#E8804A / #B8472ELinks, buttons, focus
--radius-lg14pxCards, raised surfaces, codeblocks
--motion-base240msButtons, tab indicators

Aligned columns:

Left alignedCenteredRight aligned
MaroonRedOrange
CreamAmberGold

Inside an aside:

A plain fenced block:

const flame = { color: 'ember', radius: 14 };

With a filename:

ember.ts
export interface Ember {
size: 'sm' | 'md' | 'lg';
ariaLabel?: string;
}
export function ignite(ember: Ember): string {
return `Ember of size ${ember.size}`;
}

With line highlights {2,4-6}:

theme.ts
export const tokens = {
accent: '#E8804A',
radius: { sm: 6, md: 12, lg: 14 },
motion: {
fast: 160,
base: 240,
},
};

With diff syntax (ins / del):

const config = {
background: '#000',
accent: '#fff',
background: 'var(--ember-bg-base)',
accent: 'var(--ember-accent)',
};

Terminal example:

Terminal window
npm install @fontsource/manrope @fontsource/jetbrains-mono
npm run dev

A long line that wraps:

const description = "This is a deliberately long single line of code that should wrap inside the code block frame to demonstrate how Expressive Code handles overflow without horizontal scroll.";

The custom <Hearth> component is a warmer cousin to the four standard asides. Use it for editorial context — motivation, background, personal notes — not for strict semantic warnings.

EmbersTextAPI

A text-rendering API used by other mods.

Orbital Railgun

High-impact gameplay mod for 1.20.1.

Spelunkery Plus

Cave generation and exploration tweaks.

LogFilter

Filter noisy log lines for cleaner consoles.

LootLog

Per-mob loot logging for balance reviews.
Primary action Secondary Minimal
build.gradle
dependencies {
implementation 'dev.tysontheember:embers-text-api:1.0.0'
}
  1. Install the dependency.

    Terminal window
    npm install @fontsource/manrope
  2. Register it in astro.config.mjs under customCss.

  3. Reference the font via var(--font-sans) in your stylesheet.

  4. Run npm run dev to verify.

  • Directorysrc
    • Directorycomponents
      • Ember.astro
      • Hearth.astro
    • Directorycontent
      • Directorydocs
        • index.mdx
        • styleguide.mdx
    • Directorystyles
      • theme.css
      • global.css
  • Directorypublic
    • favicon.svg
  • astro.config.mjs
  • package.json

default note tip caution danger success

A small grid of Starlight built-in icons, recolored to the ember accent through global CSS:

warning
rocket
document
github
external
information

Below this paragraph is a horizontal rule rendered as a soft fade.


And another paragraph after the rule.

An image with a caption (uses the site favicon as test content):

Site favicon

Figure 1 — the site favicon.

A placeholder iframe with rounded corners (uses about:blank so no external request is made):


End of style guide.

  1. This is the footnote body. Backlink should appear at the end.