Guidance for using the floating-runes Svelte 5 wrapper around @floating-ui. Use when building tooltips, popovers, context menus, overlays, portals, or singleton floating UI in Svelte apps.
Use this skill when working with floating UI patterns in Svelte 5: tooltips, dropdowns, context menus, toasts, overlays, portals, singleton patterns, or virtual positioning.
floating-runes (types and runtime). Avoid @floating-ui/* imports.use:float, use:float.ref, use:float.virtual, use:float.arrow).<script lang='ts'>
import floatingUI, { flip, shift, offset, type Placement } from 'floating-runes'
const float = floatingUI({ placement: 'top', middleware: [offset(6), flip(), shift()] })
</script>
<button use:float.ref>Hover me</button>
{#if float.referenced}
<div use:float role='tooltip'>Tooltip</div>
{/if}
<script module lang='ts'>
import { createSingleton, offset, flip, shift, arrow } from 'floating-runes'
export const tooltip = createSingleton({
placement: 'top',
middleware: [offset(8), flip(), shift(), arrow()],
showDelay: 200
})
</script>
<script lang='ts'>
import { portal } from 'floating-runes'
</script>
{#if tooltip.visible && tooltip.content}
<div use:tooltip.float use:portal>
{tooltip.content}
<div use:tooltip.arrow></div>
</div>
{/if}
Use elsewhere:
<script>
import { tooltip } from './TooltipRoot.svelte'
</script>
<button use:tooltip={'Save'}>Save</button>
Search for places (restaurants, cafes, etc.) via Google Places API proxy on localhost.
Interact with GitHub using the `gh` CLI. Use `gh issue`, `gh pr`, `gh run`, and `gh api` for issues, PRs, CI runs, and advanced queries.
Create or update AgentSkills. Use when designing, structuring, or packaging skills with scripts, references, and assets.
Start voice calls via the OpenClaw voice-call plugin.
Notion API for creating and managing pages, databases, and blocks.
Gemini CLI for one-shot Q&A, summaries, and generation.
Category:developer