Przejdź do treści
Biblioteka skilli
Programowanie · Budowanie i kod

solid-floating-ui

/solid-floating-ui

Buduje w SolidJS elementy nakładkowe, takie jak podpowiedzi, popovery, okna dialogowe i listy wyboru, z poprawną reaktywnością.

Licencja
MIT
Ostatnia zmiana repozytorium
27.10.2026

Ocena i bezpieczeństwo

100/ 100Klasa: dobry
Format25 / 25
Frontmatter z nazwą i opisem, poprawna nazwa, opis do 1024 znaków, nazwa zgodna z folderem.
Odkrywalność25 / 25
Opis mówi, kiedy użyć skilla, ma sensowną długość i jest w 3. osobie.
Treść35 / 35
Co najmniej 150 słów i do 500 linii, nagłówki, listy kroków, przykłady albo kod.
Higiena15 / 15
Bez zaślepek typu TODO, bez ścieżek Windows, z licencją.
Ryzykobrak sygnałów w skanie
Pliki w paczce
13
Skrypty
0
Komentarze HTML
0
Adresy URL w SKILL.md
0
Przestarzałość

Brak sygnałów. Repozytorium zmienione 27.10.2026, bez odwołań do wycofanych modeli i API.

Licencja

MIT, otwarta: można używać i zmieniać, z zachowaniem informacji o autorze.

Co robi i kiedy

Buduje w SolidJS elementy nakładkowe, takie jak podpowiedzi, popovery, okna dialogowe i listy wyboru, z poprawną reaktywnością.

Oryginalny opis (EN)

Build floating elements in a SolidJS project with solid-floating-ui: tooltips, popovers, dialogs, selects and comboboxes, dropdown and nested menus, context menus, cursor-following elements, composite toolbars and grids, enter and exit transitions, and shared hover delay groups. Carries a complete working recipe for each, plus the reactivity rules that keep the hooks live. Use when the user asks for any anchored or overlay UI in SolidJS, mentions solid-floating-ui or @floating-ui, or is porting a pattern from @floating-ui/react.

Jak działa

  1. Pick the recipe
  2. The four rules that break everything when broken
  3. Install
  4. Check the work
Sekcje z nagłówków SKILL.md, w oryginale · 50 linii, 412 słów
Podgląd SKILL.md
---
name: solid-floating-ui
description: >
  Build floating elements in a SolidJS project with solid-floating-ui: tooltips,
  popovers, dialogs, selects and comboboxes, dropdown and nested menus, context
  menus, cursor-following elements, composite toolbars and grids, enter and exit
  transitions, and shared hover delay groups. Carries a complete working recipe
  for each, plus the reactivity rules that keep the hooks live. Use when the user
  asks for any anchored or overlay UI in SolidJS, mentions solid-floating-ui or
  @floating-ui, or is porting a pattern from @floating-ui/react.
---

Build the thing from the matching recipe. Do not improvise the wiring.

## Pick the recipe

| The user wants                                          | Read                        |
| ------------------------------------------------------- | --------------------------- |
| Hover or focus label on a control                       | `reference/tooltip.md`      |
| Click-triggered panel anchored to a button              | `reference/popover.md`      |
| Centred modal with a backdrop                           | `reference/dialog.md`       |
| Listbox, select or combobox with keyboard navigation    | `reference/select.md`       |
| Dropdown menu, submenus, menu bar                       | `reference/menu.md`         |
| Right-click menu                                        | `reference/context-menu.md` |
| Element that follows the pointer                        | `reference/cursor.md`       |
| Toolbar, tab list or grid with arrow keys, not floating | `reference/composite.md`    |
| Fade or scale the element in and out                    | `reference/transition.md`   |
| A row of tooltips sharing one delay                     | `reference/delay-group.md`  |
| A pointer or arrow on the floating element              | `reference/arrow.md`        |

Read `reference/api.md` first whenever the task is not a straight copy of one
recipe, or when something built from a recipe is not updating.

Combine recipes freely. They share one shape, so a select inside a dialog is
the two files' hooks passed to one `useInteractions`.

## The four rules that break everything when broken

1. **Options are getters.** Anything that changes is `get open() { return open(); }`, never a captured value and never destructured. You never declare what an option depends on.
2. **Return values are getters too.** Keep the object and read through it where the value is used: `floating.placement`, not `const { placement } = floating`.
3. **Accessors in, callbacks out.** Anything the library reads from you takes `() => T`: `items`, `labels`, `scrollElement`, the `arrow` element, a portal `root`, `initialFocus`, `returnFocus`. Anything it produces arrives through a callback: `onElementsChange`, `onLabelsChange`, `onVirtualItemChange`, `onOverflowChange`. There are no ref containers.
4. **Spread the prop getters once.** `{...interactions.getFloatingProps()}` in the markup stays live on its own. Never call it inside a loop; that is what `getItemProps` is for.

## Install

```bash
pnpm add @floating-ui/dom solid-floating-ui
```

`@floating-ui/dom` and `solid-js` are peer dependencies. The package ships JSX
uncompiled through the `solid` export condition, so a Vite project using
`vite-plugin-solid` needs no extra configuration.

## Check the work

- Does every changing option go through a getter?
- Is `useDismiss` present? Almost every floating element needs it.
- Is `useRole` present? It supplies the ARIA wiring the pattern needs.
- Is the element inside `FloatingPortal` when an ancestor clips or stacks it?
- Does an interactive element have `FloatingFocusManager` around it?
Pliki w paczce (13)
  • SKILL.md 4 KB
  • reference/api.md 7 KB
  • reference/arrow.md 2 KB
  • reference/composite.md 2 KB
  • reference/context-menu.md 3 KB
  • reference/cursor.md 2 KB
  • reference/delay-group.md 3 KB
  • reference/dialog.md 3 KB
  • reference/menu.md 7 KB
  • reference/popover.md 3 KB
  • reference/select.md 6 KB
  • reference/tooltip.md 3 KB
  • reference/transition.md 2 KB

Wersje

W bazie nie ma innych skilli o nazwie solid-floating-ui.

Migawka bazy z 28.10.2026 · wersja paczki 6e2969a161eb (skrót SHA-256 całej paczki)

Pobrania w ostatnich 30 dniach: 0 · ranking

Zgłoś problem z tym skillem: szkodliwa treść, błędny opis albo prośba autora o usunięcie.

Podobne skille

  • 90frontend-solidjs-architecture
    Projektuje aplikacje SolidJS z reaktywnością drobnoziarnistą, sygnałami, stores, komponentami sterowania i routerem @solidjs/router.
  • 90solid-js-expert
    Rozstrzyga problemy z reaktywnością, routingiem i granicami serwer/klient w SolidJS i SolidStart oraz migracją z Reacta.
  • 90frontend-solidjs-patterns
    Stosuje wzorce SolidJS: createResource z Suspense, formularze na sygnałach, kompozycję przez children-funkcje i animacje przejść.
  • 100solid
    Obsługuje renderer SolidJS dla json-render: katalogi i rejestry @json-render/solid, dostawców Renderer, bindingi, akcje oraz reaktywność specyficzną dla Solid.
  • 100solid
    Opisuje bibliotekę reaktywnego interfejsu SolidJS: sygnały, efekty i drobnoziarnistą reaktywność, w tym createSignal, createEffect i createMemo.
  • 100intlayer-solid
    Integruje internacjonalizację Intlayer z komponentami SolidJS, w tym tłumaczone komponenty, hook useIntlayer i konfigurację providerów.

Uwagi i zgłoszenia

Wiadomość trafi do Bartosza Sokolińskiego. Adres e-mail jest potrzebny tylko do odpowiedzi. Szczegóły w polityce prywatności.