crucıble

Personal

A warm, elegant personal home base: an intro hero with a monogram avatar and a live "now" line, a set of big tappable link rows, a "currently" highlight grid, a recent-writing list, and a magnetized contact footer — link-in-bio meets personal homepage, entirely props-driven with one warm accent.

motionpro

Installation

CLI

npx shadcn@latest add @crucible/personal

Manual — install dependencies, then copy the source

npm install motion

Props

PropTypeDefaultDescription
namestring"Nadia Ferrin"Full name, oversized in the hero.
monogramstring"NF"Two-or-three-letter monogram used when no avatar is supplied.
avatarReact.ReactNodeOptional avatar node (e.g. an <img>); replaces the monogram disc entirely.
rolestring"designer & writer"Role / one-liner shown beside the avatar.
biostringShort intro paragraph, revealed word by word.
nowstringPresent-tense status line ("now" line) beside the pulse dot.
locationstring"Lisbon, PT"Location string in the hero meta row.
navPersonalNavItem[]Top navigation links.
linksPersonalLink[]Prominent home-base links (big tappable rows).
currentlyPersonalCurrent[]"Currently" highlight facts.
postsPersonalPost[]Recent-writing entries.
contactEmailstring"hi@nadiaferrin.com"Contact email, rendered as the magnetized footer link.
socialsPersonalSocial[]Footer social links.
footerNotestringQuiet closing line in the footer.
accentstring"#e2a06a"The single warm accent used for the avatar ring, the now-dot, hover rules and links.
Also accepts all props of Omit<React.ComponentPropsWithoutRef<"div">, "children">they pass through to the underlying element.

Honors prefers-reduced-motion with a designed static fallback, and passes className through.