Skip to content

Report Notes Formatting

mdeguzis edited this page Jun 30, 2026 · 1 revision

Report Notes Formatting

The Notes field on a report supports a small set of inline macros for hiding spoiler-y content. Plain text outside the macros is escaped as-is. There is no Markdown or HTML support beyond what is listed here.

Spoiler tags

Wrap text in {spoiler} and {/spoiler} to hide it behind a tap.

The boss fight is harder than expected.
{spoiler}Use the lightning sword from chapter 2{/spoiler}
Runs smooth at 60fps otherwise.

When the report renders on the game page:

  • Text outside the markers renders normally.
  • Text between the markers shows as a blurred span. Readers can locate it but not read it.
  • Tap on mobile, or focus the span and press Enter or Space, to reveal it.

Markers are case-insensitive, so {SPOILER} and {Spoiler} work too. Markers can span multiple lines. An unclosed {spoiler} is treated as plain text so a forgotten {/spoiler} does not blur everything that follows it.

Where the macros render

The web app applies the macros wherever a report's notes are shown:

  • Public game page report cards (/app.html -> any game).
  • Profile My Reports preview rows (when viewing your own report content).

The Steam Deck plugin reads notes raw and currently renders the literal {spoiler}...{/spoiler} text. Plugin support is tracked separately.

How it is implemented

escWithSpoilers(text) in js/app/utils.js walks the input, escapes everything as HTML, and wraps each {spoiler} block in a <span class="spoiler" role="button" tabindex="0"> with inline click + keydown handlers that toggle a .revealed class. Styling lives in css/app/reports.css.

The Notes textarea on the submit form and the profile edit modal carries a Formatting help expander that links back to this page in spirit (small inline <details> explaining the syntax). If you add a new macro, update both the help text in notesFormattingHelpHtml() (js/shared/submit.js) and this page.

Clone this wiki locally