Service Offerings with Arrows

Responsive grid of service cards with descriptions and arrow icons. Ideal for services listing, solutions overview, or offering showcase.

FREE

Feature144: Service Offerings with Arrows

A responsive grid of clickable service cards: each card is a full-bleed link pairing a title and description on the left with an arrow icon that slides right on hover, capped with an optional CTA row.

Free block

This block is free. No license or account is required: install it with the CLI and use it in unlimited projects.

Installation

Radix flavor

bash
npx shadcn add "https://ui.beste.co/r/feature144"

Base UI flavor

bash
npx shadcn add "https://ui.beste.co/r-base/feature144"

This installs the block to components/beste/block/feature144.tsx and the badge and button shadcn/ui primitives it depends on.

Quick start

The installed file exports feature144Demo alongside the block: the exact props behind the preview above. Spread it to get a working service list in one line.

tsx
import { Feature144, feature144Demo } from "@/components/beste/block/feature144";

export default function Page() {
  return <Feature144 {...feature144Demo} />;
}

Then replace the demo with your own props. Written out, the same setup looks like this:

tsx
import { Feature144 } from "@/components/beste/block/feature144";

export default function Page() {
  return (
    <Feature144
      badge={{ label: "Services", variant: "secondary" }}
      heading="What we offer"
      description="Comprehensive solutions for your business."
      services={[
        { title: "Consulting", description: "Strategic guidance from industry experts.", href: "https://beste.co" },
        { title: "Development", description: "Custom software built for your needs.", href: "https://beste.co" },
        { title: "Design", description: "Beautiful interfaces that users love.", href: "https://beste.co" },
      ]}
    />
  );
}

Props

PropTypeDefaultDescription
badge{ label: string; variant?: "default" | "secondary" | "outline" }Optional eyebrow badge above the heading
headingstringSection heading
descriptionstringSection intro text
servicesServiceItem[][]Service cards rendered in the grid
buttonsButtonItem[][]Optional CTA row below the grid
classNamestringExtra classes for the outer <section>
ts
type ServiceItem = { title: string; description?: string; href?: string };

type ButtonItem = {
  label: string;
  href?: string;
  variant?: "default" | "secondary" | "outline" | "ghost" | "link" | "destructive";
};

Behavior notes

More Feature blocks

View all Feature
PRO

feature210

Service Cards

Three-up service cards with accent icon chips and learn-more links.

PRO

feature120

Category Tiles with Counts

Responsive grid of category cards with icons and listing counts. Perfect for category browse, marketplace sections, or navigation options.

FREE

feature3

Service Grid With Icons

Centered header, three-column grid of capability cards, and an optional CTA with bottom text. Each card leads with a Lucide icon.

PRO

feature136

Numbered Steps Grid

Responsive grid of numbered step cards with titles and descriptions. Perfect for process visualization, onboarding steps, or sequential workflows.

FREE

feature107

Icon-Centered Grid Cards

3-column grid of centered feature cards with large icons and brief descriptions. Perfect for capability highlights, service features, or platform offerings.

PRO

feature219

Indexed Services List

Eyebrow and heading with a CTA on one row, above stacked service cards that each line up an index and growth stat, a thumbnail image, and a title with description and tag chips.