v0.2.0 — New: GhostlySuspense, Tailwind plugin, smooth transitions
Zero-config
skeleton loaders
Wrap your component. Import the CSS. Done. No CLI, no build step, no code changes to your components.
your-component.tsx
// Your component stays exactly the same
import { Ghostly } from '@ghostly/react'
<Ghostly loading={isLoading} smooth>
<ProductCard product={data} />
</Ghostly>0
Zero Config
No CLI, no build step, no generated files. Install and use.
0
Zero Code Changes
Your components stay exactly as they are. Just wrap them.
~3KB
Tiny Bundle
CSS-first engine. Zero runtime JavaScript for skeleton rendering.
3 Animations
Shimmer, pulse, wave — all pure CSS
Dark Mode
Automatic via CSS custom properties
Accessible
ARIA, reduced motion, screen readers
Smooth Transitions
Fade-out when loading ends with smooth prop
GhostlySuspense
Auto-skeleton with React Suspense
Tailwind Plugin
ghostly-radius-*, ghostly-speed-*, ghostly: variant
Color Props
Inline color and shine customization
Line Control
data-ghostly-lines and aspect-ratio for images
GhostlySuspense
import { GhostlySuspense } from '@ghostly/react'
<GhostlySuspense
fallback={<ProductCard />}
>
<AsyncProductCard />
</GhostlySuspense>Tailwind Plugin
// tailwind.config.js
import ghostly from 'ghostly/tailwind'
export default {
plugins: [ghostly]
}MIT Licensed — Built with care