Skip to main content
Historical Obsidian-era component reference. Its publish.css instructions are not current Mintlify authoring guidance. The canonical public matrix is Eval Labs Roles and Access Matrix, with presentation owned by this repository’s MDX and style.css.

What it is

A reusable, on-brand replacement for a plain Markdown permission table. It renders a card with numbered capability columns, a sticky role column, per-role access meters, and accessible grant / deny marks in the Eval Labs gold/amber palette. It exists because the access model is load-bearing canon and deserves a clearer, more scannable presentation than a raw Markdown grid.

Where it lives

The component is two coupled parts. The note carries the HTML; publish.css carries every .eval-access-matrix / .am-* style. Both must be published together. If you publish the note without the updated publish.css, the matrix renders as unstyled HTML.

Rule

  • Edit the live access values only in the canonical matrix (Roles and Access Matrix). It is the single source of truth; other notes link to it rather than copy it.
  • Keep the grid data identical to the role definitions on that same page. The visual is not allowed to diverge from the written canon.
  • Recolor through the brand variables, not hard-coded hex. The component reads --eval-gold, --eval-amber, --eval-orange, --eval-deep-orange, --eval-ink, and the callout fill/stroke tokens.
  • Keep the accessibility markup: scope on header/row cells, role="img" + aria-label="Allowed" / "Not allowed" on every mark.

Use when

  • A note needs to show who-can-do-what across roles and surfaces.
  • The grid is small enough to read as a matrix (a handful of roles × a handful of capabilities).
  • The data is canonical and stable enough to be worth styling.

Avoid

  • Duplicating the matrix data into a second note. Link to the canonical one instead.
  • Using it for large or frequently-changing tables where a plain Markdown table is easier to maintain.
  • Inlining a <style> block or Google-Fonts <link> in the note. Obsidian Publish does not render those reliably — all styling belongs in publish.css.

Markup skeleton

Wrap everything in .eval-access-matrix. Mark full-access rows with am-tier-full and the no-access row with am-tier-none so the role tint and meter labels render correctly.
Markdown gotchaKeep the HTML block free of blank lines. A blank line inside it makes Obsidian close the HTML and resume Markdown, which breaks the table.

Class reference


Example

The live, canonical instance is the access grid on Eval Labs Roles and Access Matrix. Read that page to see the component in context and to edit the actual access values.