Default outline
Transparent artwork reveals the silhouette. Reloading the image plays the sticking animation.

outlineThickness={6} outlineColor="white"
WelkUI!REACT EDITIONExplore live variants, compare states, and learn every prop. Pick a component to start.
An image with an SVG outline following its alpha silhouette and a sticking animation after load. Transparent artwork produces a cutout; opaque backgrounds are outlined as part of the image. Optional hover elevation adds depth, and load failures can use fallbackSrc.

import { WelkSticker } from "@welkui/react";
import superman from "./superman.png";
<WelkSticker src={superman} alt="Superman sticker"
width={140} height={160} elevateOnHover />Import @welkui/react/styles.css once in your app. Stateful snippets belong inside a React component.
These are real components, not screenshots. Compare their appearance and try the controls. Key props below each preview show what changes; use the usage example above for imports and component setup.
Transparent artwork reveals the silhouette. Reloading the image plays the sticking animation.

outlineThickness={6} outlineColor="white"Use a stronger outline to make artwork stand out on its surface.

outlineThickness={10} outlineColor="#ffdf52"Move over the sticker to lift it. Reduced-motion preferences are respected.

elevateOnHoverZero thickness leaves just the artwork and its sticker presentation.

outlineThickness={0}An intentionally invalid source demonstrates recovery with local fallback artwork.
src={brokenImage} fallbackSrc={superman}Required props are marked in the default column. Other props are optional. ReactNode accepts text or JSX.
| Prop | Type | Default | Description |
|---|---|---|---|
src | string | Required | Image URL or imported local asset. |
alt | string | Required | Accessible image description; use "" for purely decorative artwork. |
fallbackSrc | string | Unset | Alternative image if loading the original fails. |
outlineThickness | number | 6 | Finite non-negative outline width in pixels. |
outlineColor | CSSProperties["color"] | "white" | Silhouette outline color. |
elevateOnHover | boolean | false | Enables lifted hover styling. |
Inherits native image props except src, alt and children, including width, height, loading, onLoad, onError, className and style; forwards an image ref.
Import @welkui/react/styles.css once in your app entry or Next.js root layout. The previews use the default theme; override --welk-* CSS tokens in your app to customize it.
For Next.js, put hooks and event handlers in a component beginning with "use client". Keep state local to the component using the control. The library preserves its client boundaries and uses your installed React version.
Use defaultValue or defaultChecked for uncontrolled fields, or a state value and its change callback for controlled fields. Do not switch between these modes during the lifetime of a field.
Modal and notification examples start closed: use their Try buttons to see them. Disabled examples are deliberately non-interactive. Validate forms, uploads, authentication, and server responses in your application; these components only provide UI.