Head to head
Stop guessing which one. Put them side by side.
Up to 4 tools, same rows for each: what it is, what it really costs, the trap, and how to wire it up. The URL carries your picks — send it to anyone.
ShikiAstro Starlight + NextraBiome
| Field | Shikishiki.style | Astro Starlight + Nextrastarlight.astro.build | Biomebiomejs.dev |
|---|---|---|---|
| What it is | A syntax highlighter, v4, that uses real TextMate grammars and VS Code themes, so code looks exactly as it does in the editor. Highlighting can run at build time and output plain styled HTML, shipping zero highlighting JavaScript to the browser. | Two batteries-included docs themes. Nextra (v4) turns a Next.js app into a docs or blog site from Markdown files with almost no config. Astro Starlight builds fully static docs with near-zero client JavaScript, plus built-in i18n, search and dark mode. | A single Rust binary that replaces both ESLint and Prettier, at v2.5 with over 500 lint rules, GritQL plugins and a watch mode. It formats and lints JS, TS, JSX, JSON and CSS in one pass, typically many times faster than the tools it replaces. |
| Category | Libraries & build tooling | Libraries & build tooling | Libraries & build tooling |
| Cost tier | free | free | free |
| Pricing | Free · MIT | Free · MIT | Free · MIT/Apache-2.0 |
| Why builders pick it | Accuracy beats Prism and highlight.js by a wide margin, and it is now the default in Astro, Fumadocs and VitePress. Any docs page, blog or AI chat that shows code needs it. | Starlight is the fastest way to ship docs when you have no Next.js app — one command, drop in Markdown, done. Nextra fits when docs live inside an existing Next.js codebase. | One dependency and one config file instead of a dozen ESLint plugins that fight Prettier over semicolons. For a solo builder it removes the single most annoying setup step in a new repo. |
| Watch out for | Loading every language and theme at runtime is a multi-megabyte WASM plus grammar payload — import only the languages you use, or precompute highlighting at build time. | Nextra is more theme than framework, so deep customisation means fighting it, and Fumadocs has taken much of its mindshare. Starlight is still pre-1.0 and needs an Astro project. | Rule coverage still trails the full ESLint plugin ecosystem — notably some React and accessibility rules — so heavily-linted teams sometimes keep ESLint alongside it. |
| How to wire it up | npm install shiki | npm create astro@latest -- --template starlight | npm install --save-dev --save-exact @biomejs/biome |
| Editor's pick | No | No | No |
Which one did you ship?
The grid says what these tools are. This says what builders did about it — one decision per person, changeable whenever you change your mind.
0/280Sign in to add yours.
Or try
Hand this to your Lovable agent
# Tool comparison — Shiki vs Astro Starlight + Nextra vs Biome Source: Kbaise, a directory of tools that work with Lovable projects. Pick one and tell me why before writing any integration code. ## Shiki (shiki) - URL: https://shiki.style - Category: Libraries & build tooling - Cost: free — Free · MIT - What it is: A syntax highlighter, v4, that uses real TextMate grammars and VS Code themes, so code looks exactly as it does in the editor. Highlighting can run at build time and output plain styled HTML, shipping zero highlighting JavaScript to the browser. - Why builders pick it: Accuracy beats Prism and highlight.js by a wide margin, and it is now the default in Astro, Fumadocs and VitePress. Any docs page, blog or AI chat that shows code needs it. - Trap: Loading every language and theme at runtime is a multi-megabyte WASM plus grammar payload — import only the languages you use, or precompute highlighting at build time. - Wiring: npm install shiki - Full dossier: /api/public/tools/shiki ## Astro Starlight + Nextra (astro-starlight-nextra) - URL: https://starlight.astro.build - Category: Libraries & build tooling - Cost: free — Free · MIT - What it is: Two batteries-included docs themes. Nextra (v4) turns a Next.js app into a docs or blog site from Markdown files with almost no config. Astro Starlight builds fully static docs with near-zero client JavaScript, plus built-in i18n, search and dark mode. - Why builders pick it: Starlight is the fastest way to ship docs when you have no Next.js app — one command, drop in Markdown, done. Nextra fits when docs live inside an existing Next.js codebase. - Trap: Nextra is more theme than framework, so deep customisation means fighting it, and Fumadocs has taken much of its mindshare. Starlight is still pre-1.0 and needs an Astro project. - Wiring: npm create astro@latest -- --template starlight - Full dossier: /api/public/tools/astro-starlight-nextra ## Biome (biome) - URL: https://biomejs.dev - Category: Libraries & build tooling - Cost: free — Free · MIT/Apache-2.0 - What it is: A single Rust binary that replaces both ESLint and Prettier, at v2.5 with over 500 lint rules, GritQL plugins and a watch mode. It formats and lints JS, TS, JSX, JSON and CSS in one pass, typically many times faster than the tools it replaces. - Why builders pick it: One dependency and one config file instead of a dozen ESLint plugins that fight Prettier over semicolons. For a solo builder it removes the single most annoying setup step in a new repo. - Trap: Rule coverage still trails the full ESLint plugin ecosystem — notably some React and accessibility rules — so heavily-linted teams sometimes keep ESLint alongside it. - Wiring: npm install --save-dev --save-exact @biomejs/biome - Full dossier: /api/public/tools/biome ## Rules 1. Prefer the free tier when no budget was stated, and say what the ceiling is. 2. Read the full dossier before integrating. 3. Fetch /api/public/models before writing any AI model ID.
Agents can fetch the same thing: GET /api/public/compare?slugs=shiki,astro-starlight-nextra,biome