Skip to content
GitHub ↗

Cards / React + CSS

Reveal card

Layered artwork opens on hover to reveal a project’s next step.

Make it yours

Use a reveal card for a project or resource preview. Keep the action and title readable at rest so touch users do not need to discover a hover state.

  1. Use a React project with CSS Modules support, such as Next.js or Vite.
  2. Save the JSX as RevealCard.jsx and the CSS as RevealCard.module.css in the same folder.
  3. Import RevealCard and connect its props to your application. Controlled components need parent state and change handlers.

No third-party component or animation package is required. Use the theme controls to adjust accent, corners, spacing, and type. Copy the Theme CSS into your stylesheet and wrap your components in <div className="tdp-components">. The theme applies to every component inside that wrapper. TDP defaults work without a theme file.

Props

PropTypeUse
titlestringProject or resource title.
labelstringCategory label.
hrefstringDestination for the card.

Accessibility & behavior

The artwork is hidden from assistive technology. The native link has a visible focus ring. Hover and keyboard focus produce equivalent movement.

Visible focus styles and reduced-motion support are included. Check labels, contrast, keyboard behavior, and screen-reader output again after adapting the component to your product.

Keep building