Guides
Navigation
Feedback
Overlays
Layout
Data Display
Forms
.md

Footer

footer-04

Call-to-action footer: headline, blurb and two buttons on the left, two link columns and social icons on the right, inside a bordered card.

Open full screen →

Installation

php artisan ui:add-block footer-04

A single command installs the block's Blade file and every component it depends on. Render it in your own layout as <x-ui.blocks.footer-04 />.

Components it includes

Usage

Every piece of content is a prop, so you can drive this footer from a CMS. A link is either a plain string or ['label' => ..., 'href' => ...]. An action is ['label' =>, 'href' =>, 'variant' =>]; give it an href and it renders as a link, leave href out and it stays a plain button. Variants are default, outline, secondary, ghost, link and destructive. A social is ['label' =>, 'href' =>, 'icon' =>] where icon is a key of the $icons map below ('facebook', 'instagram', 'x', 'linkedin', 'youtube'), or pass 'svg' => '<svg ...>' to use a mark of your own.

<x-ui.blocks.footer-04
    brand="Acme"
    heading="Ship your next release without the release-day panic"
    text="Acme deploys, monitors and rolls back for teams that would rather build."
    :actions="[
        ['label' => 'Start free', 'href' => '/register', 'variant' => 'default'],
        ['label' => 'Book a demo', 'href' => '/demo', 'variant' => 'outline'],
    ]"
    :columns="[
        ['links' => [
            ['label' => 'Pricing', 'href' => '/pricing'],
            ['label' => 'Changelog', 'href' => '/changelog'],
        ]],
        ['links' => [
            ['label' => 'Docs', 'href' => '/docs'],
            ['label' => 'Support', 'href' => '/support'],
        ]],
    ]"
    :socials="[
        ['label' => 'X', 'href' => 'https://x.com/acme', 'icon' => 'x'],
        ['label' => 'LinkedIn', 'href' => 'https://linkedin.com/company/acme', 'icon' => 'linkedin'],
    ]"
    :legal="[
        ['label' => 'Privacy', 'href' => '/privacy'],
        ['label' => 'Terms', 'href' => '/terms'],
    ]"
    copyright="© 2026 Acme Pty Ltd"
/>

Props

Every prop with its default. Pass any of them as attributes, using : to bind a PHP value.

@props([
    'brand' => 'LaralCN',
    'brandHref' => '#',
    'heading' => 'Medium length footer heading goes here',
    'text' => 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique.',
    'actions' => [
        ['label' => 'Button', 'href' => null, 'variant' => 'default'],
        ['label' => 'Button', 'href' => null, 'variant' => 'outline'],
    ],
    'columns' => [
        ['links' => ['Link One', 'Link Two', 'Link Three', 'Link Four', 'Link Five']],
        ['links' => ['Link Six', 'Link Seven', 'Link Eight', 'Link Nine', 'Link Ten']],
    ],
    'socials' => [
        ['label' => 'Facebook', 'icon' => 'facebook'],
        ['label' => 'Instagram', 'icon' => 'instagram'],
        ['label' => 'X', 'icon' => 'x'],
        ['label' => 'LinkedIn', 'icon' => 'linkedin'],
        ['label' => 'Youtube', 'icon' => 'youtube'],
    ],
    'legal' => ['Privacy Policy', 'Terms of Service', 'Cookies Settings'],
    'copyright' => null,
])