Role Spotlight
A full job posting layout: responsibilities and requirements lists fill the main two-column-wide area, alongside a sidebar apply card (job title, location, employment type, salary) that stays pinned in view with pure CSS `lg:sticky lg:top-24` while the main column scrolls.
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/role-spotlight.jsonPrefer not to use the CLI? Copy the source from the Code toggle above into src/components/blocks/careers/careers46.tsx instead.
Usage
The file also exports careers46Demo, 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 { Careers46, careers46Demo } from "@/components/blocks/careers/careers46"; export default function Page() { return <Careers46 {...careers46Demo} />; }
Props
| Prop | Type | Default | Description |
|---|---|---|---|
| title | string | none | Job title. |
| department | string | none | Department badge shown above the title. |
| location | string | none | Job location, shown in the sidebar. |
| employmentType | string | none | e.g. Full-time, Contract, shown in the sidebar. |
| salaryRange | string | none | Displayed salary range, shown in the sidebar. |
| intro | string | none | Intro paragraph above the responsibilities list. |
| responsibilities | string[] | none | Responsibilities list items. |
| requirements | string[] | none | Requirements list items. |
| applyHref | string | "#" | Href for the sidebar Apply now button. |
| className | string | none | Extra classes for the outer section element. |
Behavior notes
- Fully static: all lists and the sidebar card render fixed demo data, there is no client-side state.
- The sidebar's sticky positioning is pure CSS (`lg:sticky lg:top-24` inside a `grid lg:grid-cols-3` layout), no JS scroll listener involved; on smaller screens it sits inline above/after the content instead.
- The Apply now button is a link (`render={<Link href="#" />}`) with a placeholder href, nothing is submitted anywhere.
More Careers Blocks
View all →job-listings-list
Job Listings List
A vertical list of open roles with department badge, location, employment type, and an apply link per row.
job-openings-grid
Job Openings Grid
A responsive card grid of open roles with department badge, location, employment type, and an apply link.
department-grouped-positions
Department-Grouped Positions
Open jobs grouped under department headings with minimal single-line rows for title, location, and type.
perks-open-positions
Perks & Open Positions
A benefits icon grid followed by a list of open positions with title, department, and location.
featured-role-with-positions
Featured Role with Positions
A larger featured job card with a 'Hiring now' badge, followed by a compact list of additional openings.
tab-filtered-job-board
Tab-Filtered Job Board
Department tabs (All/Engineering/Design/Marketing) that filter which job list is shown.