@astlide/core API Reference
    Preparing search index...

    Interface LayoutContribution

    A layout contribution: registers a layout name and (optionally) an Astro component that owns the slide markup.

    interface LayoutContribution {
        componentEntrypoint?: string;
        name: string;
    }
    Index
    componentEntrypoint?: string

    Module specifier of an Astro component to render this layout, resolved as a Vite import (e.g. "astlide-plugin-acme/QuoteLayout.astro"). When provided, the component replaces the default <section class="slide"> shell — it receives all Slide props (layout, transition, background, class, slideNumber, totalSlides) and the MDX body as the default slot.

    When omitted, the layout name only contributes a .slide-<name> CSS class that theme CSS can target — useful for purely visual variants.

    defineAstlidePlugin({
    name: 'astlide-plugin-acme',
    layouts: [
    { name: 'acme-quote', componentEntrypoint: 'astlide-plugin-acme/QuoteLayout.astro' },
    ],
    });

    The component (QuoteLayout.astro):

    ---
    interface Props { layout?: string; background?: string; slideNumber?: number; totalSlides?: number; transition?: string; class?: string; }
    const { transition, class: className, slideNumber, totalSlides } = Astro.props;
    ---
    
    name: string

    Layout name used in slide frontmatter slideLayout field.