Shiki (式, a Japanese word for "Style") is a beautiful and powerful syntax highlighter based on TextMate grammar and themes, the same engine as VS Code's syntax highlighting. Provides very accurate and fast syntax highlighting for almost any mainstream programming language.
No custom RegExp to maintain, no custom CSS to maintain, no custom HTML to maintain. And as your favorite languages and themes in VS Code evolve - your syntax highlighting will evolve too.
Oh by the way, all the code blocks in this site are highlighted by Shiki, as you'd expect :)
- All grammars/themes/wasm served as ESM, lazy-loaded on demand and bundler-friendly.
- ESM-only (CDN Usage, CJS Usage).
- Bundles languages/themes composedly.
- Light/Dark themes support
- Transformers API
- Decorations API
- TypeScript Twoslash integrations
- Compatible build
Here is a little playground for you to try out how Shiki highlights your code. The other code blocks in this docs are rendered on the build time and ships statically, while this playground is rendered on the client side in the browser. Themes and languages are loaded on demand.
Install Shiki to use it in your project.
You can inspect the bundle size in detail on pkg-size.dev/shiki.
v0.9.11, measured at 21th, December 2023:
|All themes and languages as async chunks
|All themes and common web languages as async chunks
|Core engine without any themes or languages, compose on your own
|WASM binary inlined as base64 string