Staaarter

Perks & Open Positions

A benefits/perks icon grid at the top (health coverage, remote-first, unlimited PTO, learning budget, and more), followed by an open positions list with department badge and location per role.

By Staaarter Team
Careers
Docs
Live preview

Docs

Installation

A real shadcn registry command, not a copy-paste stand-in: it fetches this block plus its badge, button dependencies and any missing npm packages, and installs them straight into your project.

npx shadcn add https://staaarter.com/r/perks-open-positions.json

Prefer not to use the CLI? Copy the source from the Code toggle above into src/components/blocks/careers/careers4.tsx instead.

Usage

The file also exports careers4Demo, the exact props behind the preview above. Spread it to get a working section in one line, then replace it with your own data.

import { Careers4, careers4Demo } from "@/components/blocks/careers/careers4";

export default function Page() {
  return <Careers4 {...careers4Demo} />;
}

Props

PropTypeDefaultDescription
headingstring"Why you'll love working here"Perks section heading.
descriptionstring"Great benefits..."Perks section subheading.
perksPerk[]nonePerk labels, rendered with a fixed icon per grid position.
positionsHeadingstring"Open positions"Heading above the positions list.
positionsOpenPosition[]noneList of open roles to render below the perks grid.
classNamestringnoneExtra classes for the outer section element.

Types

interface Perk {
  label: string;
}

interface OpenPosition {
  id: string;
  title: string;
  department: string;
  location: string;
}

Behavior notes

  • Fully static: perk icons are a fixed hardcoded array indexed by grid position, not passed as data (a Server Component can't accept a component/function prop from demo data).
  • The Apply link per row is a placeholder href, nothing is submitted anywhere.