Jump to a component
AniCanonKit · Writing
Mention
Mention is a reference inside prose: @ a character (filled), # a place (underlined). active rings the one whose card is open.
Live, from @anicanon/sakuga 2.0.0
Sakuga for iOS and Android is coming
iOS
Coming soon
Mention for iOS is in the roughs. The tokens it will read are the ones on this page, the same on every platform.
Android
Coming soon
Mention for Android is in the roughs. The tokens it will read are the ones on this page, the same on every platform.
- Use it for
- A reference inside prose or a prompt: @ a character, # a place, $ a reference the creator added, ringed while its card is open.
- Not for
- Who or what a panel or a prompt binds, with its picture and noteMentionChip
- A quiet action inside a line of textTextLink
- Words a check flagged inside a sentenceText
Guidelines
$ a reference the creator added (kind="reference").
import { Mention } from '@anicanon/sakuga/anicanonkit';
export default function MentionExample() {
return (
<p>
{'After the fire, '}
<Mention>Toddy</Mention>
{' wires a watch in '}
<Mention kind="place">Toddy’s bedroom</Mention>.
</p>
);
}PropsMentionProps
childrenrequiredstringkind'character' | 'place' | 'reference'activebooleanEach token reads a role, and the role lands on a value in each theme. Change the role and every component that reads it follows.
Colour
mention-character-bgMention: @character fill.accent-subtlecamellia-600-a10rgba(194,51,95,0.1)accent-subtlecamellia-400-a14rgba(244,119,159,0.14)mention-character-fgMention: @character text.text-accentcamellia-700#b42354text-accentcamellia-400#f4779fmention-place-fgMention: #place text.text-primaryneutral-925#0b0a10text-primaryneutral-0#ffffffmention-place-ruleMention: #place underline.text-mutedneutral-600#5c5b67text-mutedneutral-400#a3a3a7mention-active-ringMention: the mention whose card is open.accentcamellia-600#c2335faccentcamellia-400#f4779fSpace and shape
mention-radiusradius-xsmention-padding-xinset-2xsmention-place-border-bottom-widthline-hairlinemention-active-ring-widthline-strongmention-reference-border-bottom-widthline-hairlinemention-forced-active-widthline-strongType
mention-font-weightweight-strongMotion
mention-durationmotion-fastmention-easingease-standardChecked automatically with axe-core 4.11.4 against WCAG 2.2 A and AA, on the live preview above, in light and dark, on 26 October 2026.
- Result
- No issues found, in light or in dark.
- By design
- Not focusable; read as text, its mark first ("@Aiko", "#Harbour"), with "card open" after the
activeone. - Not tested
- The automated check doesn't test keyboard use, focus order or what a screen reader says. The lines above are the design system's own account of them.