Packages

@vyui/core

Headless primitives for Vue-Lynx — behavior, no opinions.

@vyui/core is the behavioral layer. It ships 47 primitives — Dialog, Sheet, Popover, Combobox, Slider, Swiper, Sortable, and more — with the state, focus, keyboard, and gesture work already done. You bring the styles.

What you get

  • 47 primitives — Dialog, Sheet, Popover, Combobox, Slider, Swiper, Sortable, Tabs, Toast, Tooltip, and more.
  • Native-first — every primitive targets Lynx's <view> / <text> rendering model.
  • Zero styling opinions — compose your own design system on top, or use @vyui/kit if you'd rather not.
  • Composable APIs — Radix-style root/trigger/content patterns, fully overridable slots.

When to use it

Use @vyui/core if you already have a design system, a Tailwind theme, or strong visual opinions. You want raw behavior — no painted defaults.

Example

<script setup>
import { SliderRoot, SliderTrack, SliderRange, SliderThumb } from '@vyui/core'
import { ref } from 'vue'

const value = ref(50)
</script>

<template>
  <SliderRoot v-model="value" :max="100">
    <SliderTrack>
      <SliderRange />
    </SliderTrack>
    <SliderThumb />
  </SliderRoot>
</template>