npm.io
0.1.1 • Published 4h ago

@ooopsstudio/scene-astro

Licence
MIT
Version
0.1.1
Deps
1
Size
30 kB
Vulns
0
Weekly
0

@ooopsstudio/scene-astro

Astro 7 markup and progressive enhancement for @ooopsstudio/scene-core definitions.

pnpm add @ooopsstudio/scene-core @ooopsstudio/scene-astro

Register explicit developer-owned implementations once:

import {registerInteractiveScenes} from '@ooopsstudio/scene-astro/runtime'
import {heroScene} from './hero-scene'

registerInteractiveScenes({hero: heroScene})

Then render the stable adapter:

---
import InteractiveScene from '@ooopsstudio/scene-astro/InteractiveScene.astro'
---
<InteractiveScene scene="hero" poster="/hero.webp" description="An abstract hero animation." />

Use posterMobile for a responsive reduced-motion and loading fallback. Poster URLs may be local project assets or trusted HTTP(S) CMS assets.

<InteractiveScene
  scene="hero"
  poster="https://cdn.example.com/hero-desktop.jpg"
  posterMobile="https://cdn.example.com/hero-mobile.jpg"
  description="An abstract hero animation."
/>

Meaningful scenes require a description and pause control. Decorative scenes are hidden from the accessibility tree. Scene implementations remain locked to the developer. Install @ooopsstudio/ui-editor-manifests when explicit scene controls need to be exposed to visual-editor tooling; this runtime adapter remains editor-independent.

License

MIT