Card Components

Card components provide structured containers for displaying product information, pricing plans, blog posts, and other content in a clean, organized format.

E-commerce Card

The card-ecommerce component displays product information with an image, name, description, price, and action button.

<x-card-ecommerce 
    img="/images/grand-theft-office.webp"
    name="Premium Headphones"
    description="High-quality wireless headphones with noise cancellation"
    :price="29900"
    currency="USD"
    href="/products/headphones"
    buttonLabel="View Details"
/>
Image of Grand Theft Office

Grand Theft Office

A collection of GTA Online items
Price
$299.00 one-time payment

Featured E-commerce Card

Use the isFeatured prop to highlight special products:

<x-card-ecommerce 
    img="/images/grand-theft-office.webp"
    name="Limited Edition Watch"
    description="Exclusive timepiece with premium materials"
    :price="59900"
    currency="USD"
    href="/products/watch"
    buttonLabel="Shop Now"
    :isFeatured="true"
/>
Most Popular
Image of Limited Edition Watch

Limited Edition Watch

Exclusive timepiece with premium materials
Price
$599.00 one-time payment

Without Price

Omit the price prop for products with custom pricing:

<x-card-ecommerce 
    img="/images/grand-theft-office.webp"
    name="Custom Service"
    description="Contact us for personalized pricing"
    href="/contact"
    buttonLabel="Get Quote"
/>
Image of Custom Service

Custom Service

Contact us for personalized pricing
Price

Subscription Plan Card

The card-subscription-plan component displays pricing plans with features, pricing details, and call-to-action buttons.

Basic Plan Card

<x-card-subscription-plan class="max-w-md" :plan="(object)[
        'name' => 'Starter',
        'description' => 'Perfect for individuals getting started',
        'price' => 999,
        'currency' => 'USD',
        'billing_period' => 'month',
        'paddle_id' => 'pri_123',
        'features' => [
            'Up to 10 active projects with full access to core features',
            '5GB of secure cloud storage for your files',
            'Email support from our responsive team',
            'Access to professionally designed basic templates',
            'Join our community forum to connect with other users',
            'Monthly reports on your usage and performance',
            'Mobile app access to manage projects on the go',
        ]
    ]" />

Starter

Price
$9.99 per month
Perfect for individuals getting started

Featured Plan Card

Use is_featured to highlight the most popular plan:

<x-card-subscription-plan class="max-w-md" :plan="(object)[
        'name' => 'Professional',
        'description' => 'Best for growing teams',
        'price' => 2999,
        'currency' => 'USD',
        'billing_period' => 'month',
        'is_featured' => true,
        'paddle_id' => 'pri_456',
        'features' => [
            'Unlimited projects with access to all premium features',
            '100GB of secure cloud storage for your files and data',
            'Priority support with faster response times from our team',
            'Advanced analytics and reporting tools for insights',
        ]
    ]" />
Most Popular

Professional

Price
$29.99 per month
Best for growing teams

With Free Trial

Add trial period information:

<x-card-subscription-plan class="max-w-md" :plan="(object)[
        'name' => 'Enterprise',
        'description' => 'For large organizations',
        'price' => 9999,
        'currency' => 'USD',
        'billing_period' => 'month',
        'trial_period' => 14,
        'trial_interval' => 'day',
        'paddle_id' => 'pri_789',
        'features' => [
            'Unlimited everything with no restrictions on usage',
            'Dedicated support with a personal account manager',
            'Custom integrations tailored to your workflow',
            'SLA guarantee with 99.9% uptime commitment',
        ]
    ]" />

Enterprise

Price
$99.99 per month 0 14s free trial
For large organizations

One-Time Payment

For lifetime access plans:

<x-card-subscription-plan class="max-w-md" :plan="(object)[
        'name' => 'Lifetime',
        'description' => 'Pay once, use forever',
        'price' => 29900,
        'currency' => 'USD',
        'billing_period' => 'one-time',
        'href' => route('checkout', 'lifetime'),
        'button_text' => 'Buy Now',
        'features' => [
            'All features included with full access to everything',
            'Lifetime updates and new features at no extra cost',
            'No recurring fees with a one-time payment only',
        ]
    ]" />

Lifetime

Price
$299.00 One-time payment
Pay once, use forever

Post Card

The card-post component displays blog post information in a vertical layout, perfect for grid displays.

Basic Post Card

<x-card-post class="max-w-sm" :post="$post"/>
Getting Started with Laravel 12

Getting Started with Laravel 12

Learn how to build modern web applications with Laravel 12 framework.

Jan 20, 2026

Post Card Grid

Post cards work beautifully in responsive grid layouts:

<div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6">
    @foreach($posts as $post)
        <x-card-post :post="$post" />
    @endforeach
</div>
Mastering Tailwind CSS

Mastering Tailwind CSS

Build beautiful interfaces with utility-first CSS.

Jan 19, 2026
Testing with Pest

Testing with Pest

Write elegant tests with the Pest testing framework.

Jan 18, 2026
Laravel Performance

Laravel Performance

Optimize your Laravel applications for peak performance.

Jan 17, 2026

Horizontal Post Card

The card-post-horizontal component displays blog post information in a horizontal layout, ideal for featured posts.

Basic Horizontal Card

<x-card-post-horizontal :post="$post" />
Building APIs with Laravel
Jan 17, 2026

Building APIs with Laravel

A comprehensive guide to creating robust RESTful APIs using Laravel framework and best practices.

By John Doe

Testimonial Card

The card-testimonial component displays customer testimonials with a quote, author information, and avatar.

Basic Testimonial Card

<x-card-testimonial 
    :author="[
        'name' => 'John Doe',
        'role' => 'CEO',
        'avatar' => '/images/avatars/avatar-1.webp'
    ]"
    quote="Simply put, this software transformed my workflow! Its intuitive interface and powerful features make tasks a breeze."
/>

Simply put, this software transformed my workflow! Its intuitive interface and powerful features make tasks a breeze. A game-changer for productivity!

John Doe's avatar

John Doe

CEO

E-commerce Card Props

Prop Type Default Description
img string|null null Product image URL
name string|null null Product name
description string|null null Product description (max 2 lines displayed)
price int|null null Price in cents (e.g., 2999 for $29.99)
currency string|null null Currency code (e.g., USD, EUR, GBP)
href string|null null URL for the action button
buttonLabel string View Text for the action button
isFeatured bool false Highlights the card with special styling

Subscription Plan Card Props

Prop Type Default Description
plan object - Required. Plan object containing all plan details (see structure below)

Plan Object Structure

Property Type Required Description
name string Yes Plan name
description string Yes Plan description
price int Yes Price in cents
currency string No Currency code (defaults to USD)
billing_period string No Billing frequency: month, year, one-time
is_featured bool No Show "Most Popular" badge and special styling
paddle_id string No Paddle price ID (used if href not provided)
href string No Custom URL for the subscribe button
button_text string No Custom button text (defaults to "Subscribe")
trial_period int No Number of trial days/months
trial_interval string No Trial interval unit: day, month
features array No Array of feature strings to display with checkmarks

Post Card Props

Both card-post and card-post-horizontal accept a post object with the following properties:

Property Type Required Description
title string No Post title
description string No Post description or excerpt
image_url string|null No URL of the post's featured image
slug string No Post slug for generating links
created_at Carbon No Post creation date
author string No Post author name (only displayed in horizontal card)

Testimonial Card Props

Prop Type Default Description
author array See below Author information object containing name, role, and avatar
quote string See below The testimonial quote text

Author Object Structure

Property Type Required Description
name string No Author's full name
role string No Author's job title or role
avatar string No URL to the author's avatar image

References

Category Path / Name Description
Component resources/views/components/card-ecommerce.blade.php E-commerce product card
Component resources/views/components/card-subscription-plan.blade.php Subscription pricing plan card
Component resources/views/components/card-post.blade.php Vertical blog post card
Component resources/views/components/card-post-horizontal.blade.php Horizontal blog post card
Component resources/views/components/card-testimonial.blade.php Customer testimonial card

For the detailed documentation, please visit the Penguin UI Cards.