@lacspace/ui
A tiny, dependency-free React kit that makes a page feel alive — scroll reveals, animated counters, gradient text, tilt cards, marquees, a typewriter and a ⌘K command palette — plus framework-agnostic helpers (easings, a variant class builder, tilt/gradient math, command filter & scorer). No animation library, no CSS import. Respects prefers-reduced-motion; Tailwind-friendly.
npm i @lacspace/uiUsage
import { Reveal, Counter, GradientText, TiltCard, Marquee, Typewriter, CommandPalette } from "@lacspace/ui";
// Fade + slide in on scroll (stagger with `delay`)
<Reveal delay={0.1}><h2>It just appears, beautifully.</h2></Reveal>
// Count up when it enters the viewport
<Counter value={12480} suffix="+" /> // 12,480+
// Gradient (optionally animated) text
<GradientText from="#22d3ee" to="#6366f1" animate>Lacspace</GradientText>
// 3D tilt toward the cursor
<TiltCard className="rounded-2xl border p-6">Hover me</TiltCard>
// Infinite logo / testimonial strip
<Marquee speed={20} pauseOnHover><Logo/><Logo/><Logo/></Marquee>
// Rotating headline
<Typewriter words={["faster", "safer", "beautifully"]} />
// ⌘K / Ctrl-K command palette
<CommandPalette
items={[
{ id: "home", label: "Go home", shortcut: "G H", onSelect: () => router.push("/") },
{ id: "docs", label: "Read the Exports 10
CommandPaletteCounterGradientTextMarqueeRevealTiltCardTypewritercnuseInViewusePrefersReducedMotionKeywords
More in React Kit
Essential, SSR-safe React hooks — useLocalStorage, useDebounce, useMediaQuery, useOnClickOutside plus new usePagination, useStep, useHistory (undo/redo), useList and useBreakpoint. 35+ hooks built on pure, DOM-free helpers. Zero-dependency, fully typed, isomorphic.
@lacspace/hotkeysErgonomic keyboard shortcuts for React — mod+k combos, g-then-d sequences, named scopes and ⌘K formatting, built on a pure, React-free matching core you can reuse anywhere. SSR-safe, respects form fields, zero-dependency, fully typed.
@lacspace/queryTiny data fetching for React — useQuery + useMutation in ~2KB over a shared, deduped, stale-while-revalidate cache. Now with a pure, framework-agnostic core: query invalidation with structural key matching, cache inspection/subscriptions, retry/backoff and GC. Zero-dependency, SSR-safe, fully typed.
@lacspace/storeMinimal global state for React in ~1KB — create a store, select slices, no provider. A React-free vanilla core adds persist/logger middleware, memoized computed values, subscribe-with-selector and slice composition. Zero-dependency, SSR-safe, fully typed.
@lacspace/themeSSR-safe dark / light / system theming for React — a tiny ThemeProvider, useTheme hook and no-flash inline script. Now ships a pure, framework-agnostic core: theme resolution, CSS-variable & stylesheet generation from design tokens, WCAG contrast helpers and an injectable-storage theme controller. Zero-dependency, fully typed.
@lacspace/virtualHeadless list virtualization for React — render only the rows in view, with fixed or dynamically-measured sizes, overscan, sticky/pinned headers, horizontal lists and scroll-to-index. Ships a pure, React-free math core you can run anywhere. Zero-dependency, SSR-safe, fully typed.