CSS Artart-componentsimplemented2 demos

ArtPlasmaBall

ArtPlasmaBall renders the ArtPlasmaBall CSS-art scene as a reusable React component.

Import@duskmoon-dev/art-components
1API sections
6documented props
1behavior scenarios
Key API
checkeddefaultCheckedhideBasehideElectrodeinputPropsonCheckedChange

Usage

When to use

  • Use it when a page needs a reusable DuskMoon visual asset rendered from CSS rather than an image.
  • Keep it decorative unless the illustration carries information that must be announced.

Implementation notes

StylesheetImport @duskmoon-dev/art-components/styles.css once before rendering art components.
StateStart with default props for static examples, then switch to controlled props when state must be shared.
SizingUse the size prop and CSS custom properties to adapt the scene without replacing markup.

Features

CSS-art wrapper

Renders the matching @duskmoon-dev/css-art scene through a typed React component.

Accessible decoration

Defaults to decorative output while allowing aria labels and roles when the scene carries meaning.

Primary API surface

ArtPlasmaBall is most often configured through `checked`, `defaultChecked`, `hideBase`, `hideElectrode`.

Covered behavior

Renders interactive plasma rays and switch state

Feature Demos

Feature demos are authored for the component page, then supplemented with behavior scenarios from the component test coverage.

Preview

Basic usage

authored

Import ArtPlasmaBall and the art component stylesheet before rendering the CSS art scene.

Source
import "@duskmoon-dev/art-components/styles.css";
import { ArtPlasmaBall } from "@duskmoon-dev/art-components";

export function Example() {
  return (<ArtPlasmaBall size="sm" defaultChecked />);
}
Preview

Accessible art

authored

Use ArtPlasmaBall as decorative output by default, or pass accessible labeling when the scene is meaningful.

Source
import "@duskmoon-dev/art-components/styles.css";
import { ArtPlasmaBall } from "@duskmoon-dev/art-components";

export function AccessibleArt() {
  return (<ArtPlasmaBall size="sm" defaultChecked
  decorative={false}
  aria-label="Art Plasma Ball illustration" />);
}

API

The API reference below lists every parsed exported type or interface for ArtPlasmaBall. Start with `checked`, `defaultChecked`, `hideBase`, `hideElectrode` for common usage.

Types: packages/art-components/src/index.tsxScenarios: packages/art-components/tests/art-components.test.tsx
ArtPlasmaBallPropsinterface extends SizedArtProps
PropTypeRequiredDescription
checkedbooleanNochecked configures ArtPlasmaBall.
defaultCheckedbooleanNodefaultChecked configures ArtPlasmaBall.
hideBasebooleanNohideBase configures ArtPlasmaBall.
hideElectrodebooleanNohideElectrode configures ArtPlasmaBall.
inputPropsOmit<NoinputProps configures ArtPlasmaBall.
onCheckedChange(checked: boolean) => voidNoonCheckedChange configures ArtPlasmaBall.