@unifast/vite

Plugin Vite per unifast: trasforma i file Markdown e MDX in moduli JS

Panoramica

@unifast/vite è un plugin Vite che trasforma i file .md e .mdx in moduli JavaScript. Integra il compilatore Markdown/MDX di unifast nella pipeline di build di Vite, permettendoti di importare i file Markdown direttamente nella tua applicazione.

Installazione

@unifast/node è una dipendenza peer (opzionale): quando è disponibile, il plugin utilizza il compilatore Rust nativo per ottenere le massime prestazioni. In sua assenza, i file .md ricadono su un rendering HTML di base, mentre i file .mdx lo richiedono obbligatoriamente.

Avvio rapido

// vite.config.ts
import { defineConfig } from "vite";
import unifast from "@unifast/vite";

export default defineConfig({
  plugins: [
    unifast({
      md: {
        // compile options for .md files
      },
      mdx: {
        // compile options for .mdx files
      },
    }),
  ],
});
// App.tsx
import doc from "./content/hello.md";

console.log(doc.html);         // compiled HTML string
console.log(doc.frontmatter);  // parsed frontmatter object
console.log(doc.toc);          // table of contents entries

Export dei moduli

File .md

Ogni file .md viene trasformato in un modulo con i seguenti export:

ExportTipoDescrizione
htmlstringStringa HTML compilata
frontmatterRecord<string, unknown>Metadati del frontmatter analizzati
tocTocEntry[]Tabella dei contenuti estratta
defaultobjectOggetto contenente html, frontmatter e toc

File .mdx

Ogni file .mdx viene compilato in un modulo JSX che utilizza il jsx-runtime di React. Esporta un componente React predefinito insieme a frontmatter e toc.

Riepilogo degli export

ExportTipoDescrizione
default (unifastPlugin)functionFactory del plugin Vite
UnifastPluginOptionstypeInterfaccia delle opzioni del plugin