Shiki utilise les mêmes grammaires TextMate que VS Code. La sortie est du HTML pur, sans dépendance runtime.
Setup minimal
import { createHighlighter } from 'shiki'
const h = await createHighlighter({
themes: ['github-light', 'github-dark'],
langs: ['ts', 'vue', 'bash']
})
const html = h.codeToHtml(source, { lang: 'ts', theme: 'github-light' })
C'est tout. À intégrer dans un endpoint Nitro ou un build step.