Documentation Index
Fetch the complete documentation index at: https://mintlify.com/apursley2012/dev-haunt/llms.txt
Use this file to discover all available pages before exploring further.
Tombstone transforms each entry in your projects array into a graveyard-marker card. Hovering over a tombstone reveals a floating ghost above it that displays the project’s tech stack. Active projects (isAlive: true) stand tall with full pumpkin-glow styling; deprecated projects (isAlive: false) shrink and desaturate to signal their resting state.
Usage
Tombstone is rendered by the Projects page for each item in the projects array defined in assets/main.js. Pass a single project object and its grid index:
Props
The project name. Displayed in the Spooky font as the tombstone’s main inscription.
A one-line description shown as the epitaph beneath the title. Wrapped in curly quotes automatically.
Array of technology names. Shown as a dot-separated string inside the floating ghost’s tooltip on hover, e.g.
React • Tailwind • Framer.Controls the visual state of the card.
true renders the tombstone at full height (280px) with a pumpkin-orange glow border. false renders it shrunk to 90% scale, reduced height (240px), and muted ghost opacity — suggesting a dead or deprecated project.Optional URL for the GitHub repository. When present, renders a GitHub icon button at the bottom of the card. Omit entirely to hide the button.
Optional URL for the live demo or deployed site. When present, renders an external-link icon button. Omit entirely to hide the button.
Zero-based grid position. Currently consumed by the parent’s stagger animation rather than the component itself, but it is passed through as a convenience parameter.
Hover Behaviour
When the user hovers the card, two things happen simultaneously via React state (isHovered):
- The ghost SVG animates upward from
y: 50(hidden below the stone) toy: -120(floating above it) using a spring transition (stiffness: 150, damping: 15). - The tombstone body shifts up by
10pxusinganimate={{ y: -10 }}.
Projects Data
To add, edit, or remove projects, update theprojects array in assets/main.js. The component reads directly from this array — no other files need to change.
The two dead projects (
Vampire CRM and Zombie App) have isAlive: false and no link property — they render in muted styles with only the optional GitHub link shown when provided.Customization
Add a new project — Append an object to theprojects array:
isAlive: false and remove or omit the link key. The tombstone will automatically shrink and grey out.
Adjust the ghost spring animation — In components/Tombstone.js, find the motion.div wrapping the ghost SVG and change stiffness or damping: