Layout

Card.

A surface with a quiet sense of depth.

Live preview

Live preview
New collection
A little light. A lot of possibility.
Move your cursor across this surface to follow the light. Build something that feels alive.
tsx
import { Card, Button } from "luminescent";
import "luminescent/style.css";


export function Example() {
  return (
    <Card spotlight>
      <h3>A brighter workspace</h3>
      <p>Light follows your cursor when spotlight is enabled.</p>
      <Button variant="secondary">Explore</Button>
    </Card>
  );
}

Installation

bash
npm install luminescent

Import luminescent/style.css once at your application root. The example above uses the same package implementation as Storybook.

Variants and states

Use the preview controls to explore the supported variants, sizes, disabled/loading states and reduced motion. Controls appear only where the component exposes the corresponding prop. Theme and glow apply to every component.

API reference

Generated from the source TypeScript interfaces. Native attributes, className, style, aria-* and data-* also pass through to the documented element. Import CardProps from the package for the full inherited contract.

PropTypeDetails
glowColorGlowColorOptional unless marked required.
spotlightbooleanOptional unless marked required.

Accessibility and keyboard

A noninteractive container. Use an actual link or button for actions; do not attach card-only click interactions. Cursor tracking is opt-in and disabled for reduced motion.

Keep labels meaningful and test application-level contrast, focus order and screen-reader output. See the accessibility guide for composition requirements.

Theme customization

tsx
import { LuminescentProvider, Card, Button } from "luminescent";
import "luminescent/style.css";


export function Example() {
  return (
    <LuminescentProvider theme="light" accent="violet" glow="subtle">
      <Card spotlight>
        <h3>A brighter workspace</h3>
        <p>Light follows your cursor when spotlight is enabled.</p>
        <Button variant="secondary">Explore</Button>
      </Card>
    </LuminescentProvider>
  );
}

Switch between light and dark in the preview, or open the playground for a larger workspace. Custom CSS variables can override spacing, color, typography and effects.

Related components