{"id":13469467,"url":"https://github.com/solidjs-community/solid-primitives","last_synced_at":"2026-02-24T03:09:55.180Z","repository":{"id":37005559,"uuid":"369884446","full_name":"solidjs-community/solid-primitives","owner":"solidjs-community","description":"A library of high-quality primitives that extend SolidJS reactivity.","archived":false,"fork":false,"pushed_at":"2025-04-27T07:52:04.000Z","size":28011,"stargazers_count":1375,"open_issues_count":62,"forks_count":138,"subscribers_count":10,"default_branch":"main","last_synced_at":"2025-05-13T00:14:26.530Z","etag":null,"topics":["solidjs"],"latest_commit_sha":null,"homepage":"https://primitives.solidjs.community","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/solidjs-community.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2021-05-22T18:53:57.000Z","updated_at":"2025-05-11T16:28:11.000Z","dependencies_parsed_at":"2023-01-17T13:01:59.740Z","dependency_job_id":"b72c37f7-af87-49be-a2ac-5b8b91eca88d","html_url":"https://github.com/solidjs-community/solid-primitives","commit_stats":{"total_commits":2936,"total_committers":108,"mean_commits":"27.185185185185187","dds":0.5258855585831063,"last_synced_commit":"7433e48bc6c1ed775b79c124963977e69c468f55"},"previous_names":["davedbase/solid-primitives"],"tags_count":1354,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/solidjs-community%2Fsolid-primitives","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/solidjs-community%2Fsolid-primitives/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/solidjs-community%2Fsolid-primitives/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/solidjs-community%2Fsolid-primitives/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/solidjs-community","download_url":"https://codeload.github.com/solidjs-community/solid-primitives/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253843919,"owners_count":21972981,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["solidjs"],"created_at":"2024-07-31T15:01:41.198Z","updated_at":"2026-02-22T01:37:24.265Z","avatar_url":"https://github.com/solidjs-community.png","language":"TypeScript","readme":"\u003cp\u003e\n  \u003cimg width=\"100%\" src=\"https://assets.solidjs.com/banner?type=Primitives\u0026background=tiles\u0026project=%20\" alt=\"Solid Primitives\"\u003e\n\u003c/p\u003e\n\n# Solid Primitives\n\n[![pnpm](https://img.shields.io/badge/maintained%20with-pnpm-cc00ff.svg?style=for-the-badge\u0026logo=pnpm)](https://pnpm.io/)\u003c!-- INSERT-NPM-DOWNLOADS-BADGE:START --\u003e\n[![combined-downloads](https://img.shields.io/endpoint?style=for-the-badge\u0026url=https://combined-npm-downloads.deno.dev/@solid-primitives/utils,@solid-primitives/broadcast-channel,@solid-primitives/context,@solid-primitives/cookies,@solid-primitives/devices,@solid-primitives/event-dispatcher,@solid-primitives/event-props,@solid-primitives/fetch,@solid-primitives/filesystem,@solid-primitives/flux-store,@solid-primitives/i18n,@solid-primitives/idle,@solid-primitives/input-mask,@solid-primitives/keyed,@solid-primitives/lifecycle,@solid-primitives/list,@solid-primitives/marker,@solid-primitives/match,@solid-primitives/mutable,@solid-primitives/permission,@solid-primitives/platform,@solid-primitives/resource,@solid-primitives/scheduled,@solid-primitives/script-loader,@solid-primitives/selection,@solid-primitives/share,@solid-primitives/spring,@solid-primitives/state-machine,@solid-primitives/timer,@solid-primitives/transition-group,@solid-primitives/tween,@solid-primitives/websocket,@solid-primitives/workers)](https://dash.deno.com/playground/combined-npm-downloads)\n\u003c!-- INSERT-NPM-DOWNLOADS-BADGE:END --\u003e\n\nA project that strives to develop high-quality, community contributed Solid primitives. All utilities are well tested and continuously maintained. Every contribution to the repository is checked for quality and maintained to the highest degree of excellence. The ultimate goal is to extend Solid's primary and secondary primitives with a set of tertiary primitives.\n\nWhile Solid Primitives is not officially maintained by the SolidJS Core Team, it is managed by members of the SolidJS core and ecosystem teams. This separation allows the core library to iterate independently while allowing Solid Primitives to remain in-sync with future plans.\n\n## Philosophy\n\nThe goal of Solid Primitives is to wrap client and server side functionality to provide a fully reactive API layer. Ultimately the more rooted our tertiary primitives are, the more they act as foundation within Solid's base ecosystem. With well built and re-used foundations, the smaller (aggregate tree-shaking benefits), more concise (readability) and stable (consistent and managed testing + maintenance) applications can be overall.\n\n## Primitives\n\n\u003c!-- INSERT-PRIMITIVES-TABLE:START --\u003e\n|Name|Stage|Primitives|Size|NPM|\n|----|----|----|----|----|\n|\u003ch4\u003e*Inputs*\u003c/h4\u003e|\n|[active-element](https://github.com/solidjs-community/solid-primitives/tree/main/packages/active-element#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-3.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createActiveElement](https://github.com/solidjs-community/solid-primitives/tree/main/packages/active-element#createactiveelement)\u003cbr /\u003e[createFocusSignal](https://github.com/solidjs-community/solid-primitives/tree/main/packages/active-element#createfocussignal)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/active-element?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/active-element)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/active-element?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/active-element)|\n|[autofocus](https://github.com/solidjs-community/solid-primitives/tree/main/packages/autofocus#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-1.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[autofocus](https://github.com/solidjs-community/solid-primitives/tree/main/packages/autofocus#autofocus)\u003cbr /\u003e[createAutofocus](https://github.com/solidjs-community/solid-primitives/tree/main/packages/autofocus#createautofocus)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/autofocus?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/autofocus)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/autofocus?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/autofocus)|\n|[input-mask](https://github.com/solidjs-community/solid-primitives/tree/main/packages/input-mask#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-1.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createInputMask](https://github.com/solidjs-community/solid-primitives/tree/main/packages/input-mask#createinputmask)\u003cbr /\u003e[createMaskPattern](https://github.com/solidjs-community/solid-primitives/tree/main/packages/input-mask#createmaskpattern)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/input-mask?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/input-mask)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/input-mask?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/input-mask)|\n|[keyboard](https://github.com/solidjs-community/solid-primitives/tree/main/packages/keyboard#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-1.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[useKeyDownList](https://github.com/solidjs-community/solid-primitives/tree/main/packages/keyboard#usekeydownlist)\u003cbr /\u003e[useCurrentlyHeldKey](https://github.com/solidjs-community/solid-primitives/tree/main/packages/keyboard#usecurrentlyheldkey)\u003cbr /\u003e[useKeyDownSequence](https://github.com/solidjs-community/solid-primitives/tree/main/packages/keyboard#usekeydownsequence)\u003cbr /\u003e[createKeyHold](https://github.com/solidjs-community/solid-primitives/tree/main/packages/keyboard#createkeyhold)\u003cbr /\u003e[createShortcut](https://github.com/solidjs-community/solid-primitives/tree/main/packages/keyboard#createshortcut)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/keyboard?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/keyboard)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/keyboard?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/keyboard)|\n|[mouse](https://github.com/solidjs-community/solid-primitives/tree/main/packages/mouse#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-3.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createMousePosition](https://github.com/solidjs-community/solid-primitives/tree/main/packages/mouse#createmouseposition)\u003cbr /\u003e[createPositionToElement](https://github.com/solidjs-community/solid-primitives/tree/main/packages/mouse#createpositiontoelement)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/mouse?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/mouse)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/mouse?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/mouse)|\n|[pointer](https://github.com/solidjs-community/solid-primitives/tree/main/packages/pointer#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-2.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createPointerListeners](https://github.com/solidjs-community/solid-primitives/tree/main/packages/pointer#createpointerlisteners)\u003cbr /\u003e[createPerPointerListeners](https://github.com/solidjs-community/solid-primitives/tree/main/packages/pointer#createperpointerlisteners)\u003cbr /\u003e[createPointerPosition](https://github.com/solidjs-community/solid-primitives/tree/main/packages/pointer#createpointerposition)\u003cbr /\u003e[createPointerList](https://github.com/solidjs-community/solid-primitives/tree/main/packages/pointer#createpointerlist)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/pointer?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/pointer)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/pointer?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/pointer)|\n|[scroll](https://github.com/solidjs-community/solid-primitives/tree/main/packages/scroll#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-2.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createScrollPosition](https://github.com/solidjs-community/solid-primitives/tree/main/packages/scroll#createscrollposition)\u003cbr /\u003e[useWindowScrollPosition](https://github.com/solidjs-community/solid-primitives/tree/main/packages/scroll#usewindowscrollposition)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/scroll?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/scroll)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/scroll?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/scroll)|\n|[selection](https://github.com/solidjs-community/solid-primitives/tree/main/packages/selection#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-0.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createSelection](https://github.com/solidjs-community/solid-primitives/tree/main/packages/selection#createselection)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/selection?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/selection)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/selection?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/selection)|\n|\u003ch4\u003e*Display \u0026 Media*\u003c/h4\u003e|\n|[audio](https://github.com/solidjs-community/solid-primitives/tree/main/packages/audio#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-3.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[makeAudio](https://github.com/solidjs-community/solid-primitives/tree/main/packages/audio#makeaudio)\u003cbr /\u003e[makeAudioPlayer](https://github.com/solidjs-community/solid-primitives/tree/main/packages/audio#makeaudioplayer)\u003cbr /\u003e[createAudio](https://github.com/solidjs-community/solid-primitives/tree/main/packages/audio#createaudio)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/audio?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/audio)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/audio?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/audio)|\n|[bounds](https://github.com/solidjs-community/solid-primitives/tree/main/packages/bounds#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-1.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createElementBounds](https://github.com/solidjs-community/solid-primitives/tree/main/packages/bounds#createelementbounds)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/bounds?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/bounds)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/bounds?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/bounds)|\n|[devices](https://github.com/solidjs-community/solid-primitives/tree/main/packages/devices#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-3.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createDevices](https://github.com/solidjs-community/solid-primitives/tree/main/packages/devices#createdevices)\u003cbr /\u003e[createMicrophones](https://github.com/solidjs-community/solid-primitives/tree/main/packages/devices#createmicrophones)\u003cbr /\u003e[createSpeakers](https://github.com/solidjs-community/solid-primitives/tree/main/packages/devices#createspeakers)\u003cbr /\u003e[createCameras](https://github.com/solidjs-community/solid-primitives/tree/main/packages/devices#createcameras)\u003cbr /\u003e[createAccelerometer](https://github.com/solidjs-community/solid-primitives/tree/main/packages/devices#createaccelerometer)\u003cbr /\u003e[createGyroscope](https://github.com/solidjs-community/solid-primitives/tree/main/packages/devices#creategyroscope)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/devices?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/devices)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/devices?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/devices)|\n|[filesystem](https://github.com/solidjs-community/solid-primitives/tree/main/packages/filesystem#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-0.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createFileSystem](https://github.com/solidjs-community/solid-primitives/tree/main/packages/filesystem#createfilesystem)\u003cbr /\u003e[createSyncFileSystem](https://github.com/solidjs-community/solid-primitives/tree/main/packages/filesystem#createsyncfilesystem)\u003cbr /\u003e[createAsyncFileSystem](https://github.com/solidjs-community/solid-primitives/tree/main/packages/filesystem#createasyncfilesystem)\u003cbr /\u003e[makeNoFileSystem](https://github.com/solidjs-community/solid-primitives/tree/main/packages/filesystem#makenofilesystem)\u003cbr /\u003e[makeNoAsyncFileSystem](https://github.com/solidjs-community/solid-primitives/tree/main/packages/filesystem#makenoasyncfilesystem)\u003cbr /\u003e[makeVirtualFileSystem](https://github.com/solidjs-community/solid-primitives/tree/main/packages/filesystem#makevirtualfilesystem)\u003cbr /\u003e[makeWebAccessFileSystem](https://github.com/solidjs-community/solid-primitives/tree/main/packages/filesystem#makewebaccessfilesystem)\u003cbr /\u003e[makeNodeFileSystem](https://github.com/solidjs-community/solid-primitives/tree/main/packages/filesystem#makenodefilesystem)\u003cbr /\u003e[makeTauriFileSystem](https://github.com/solidjs-community/solid-primitives/tree/main/packages/filesystem#maketaurifilesystem)\u003cbr /\u003e[makeChokidarWatcher](https://github.com/solidjs-community/solid-primitives/tree/main/packages/filesystem#makechokidarwatcher)\u003cbr /\u003e[rsync](https://github.com/solidjs-community/solid-primitives/tree/main/packages/filesystem#rsync)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/filesystem?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/filesystem)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/filesystem?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/filesystem)|\n|[idle](https://github.com/solidjs-community/solid-primitives/tree/main/packages/idle#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-0.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createIdleTimer](https://github.com/solidjs-community/solid-primitives/tree/main/packages/idle#createidletimer)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/idle?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/idle)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/idle?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/idle)|\n|[intersection-observer](https://github.com/solidjs-community/solid-primitives/tree/main/packages/intersection-observer#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-3.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createIntersectionObserver](https://github.com/solidjs-community/solid-primitives/tree/main/packages/intersection-observer#createintersectionobserver)\u003cbr /\u003e[createViewportObserver](https://github.com/solidjs-community/solid-primitives/tree/main/packages/intersection-observer#createviewportobserver)\u003cbr /\u003e[createVisibilityObserver](https://github.com/solidjs-community/solid-primitives/tree/main/packages/intersection-observer#createvisibilityobserver)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/intersection-observer?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/intersection-observer)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/intersection-observer?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/intersection-observer)|\n|[media](https://github.com/solidjs-community/solid-primitives/tree/main/packages/media#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-3.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[makeMediaQueryListener](https://github.com/solidjs-community/solid-primitives/tree/main/packages/media#makemediaquerylistener)\u003cbr /\u003e[createMediaQuery](https://github.com/solidjs-community/solid-primitives/tree/main/packages/media#createmediaquery)\u003cbr /\u003e[createBreakpoints](https://github.com/solidjs-community/solid-primitives/tree/main/packages/media#createbreakpoints)\u003cbr /\u003e[usePrefersDark](https://github.com/solidjs-community/solid-primitives/tree/main/packages/media#useprefersdark)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/media?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/media)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/media?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/media)|\n|[page-visibility](https://github.com/solidjs-community/solid-primitives/tree/main/packages/page-visibility#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-3.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createPageVisibility](https://github.com/solidjs-community/solid-primitives/tree/main/packages/page-visibility#createpagevisibility)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/page-visibility?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/page-visibility)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/page-visibility?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/page-visibility)|\n|[resize-observer](https://github.com/solidjs-community/solid-primitives/tree/main/packages/resize-observer#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-3.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createResizeObserver](https://github.com/solidjs-community/solid-primitives/tree/main/packages/resize-observer#createresizeobserver)\u003cbr /\u003e[createWindowSize](https://github.com/solidjs-community/solid-primitives/tree/main/packages/resize-observer#createwindowsize)\u003cbr /\u003e[createElementSize](https://github.com/solidjs-community/solid-primitives/tree/main/packages/resize-observer#createelementsize)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/resize-observer?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/resize-observer)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/resize-observer?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/resize-observer)|\n|[styles](https://github.com/solidjs-community/solid-primitives/tree/main/packages/styles#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-0.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createRemSize](https://github.com/solidjs-community/solid-primitives/tree/main/packages/styles#createremsize)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/styles?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/styles)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/styles?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/styles)|\n|\u003ch4\u003e*Browser APIs*\u003c/h4\u003e|\n|[broadcast-channel](https://github.com/solidjs-community/solid-primitives/tree/main/packages/broadcast-channel#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-0.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[makeBroadcastChannel](https://github.com/solidjs-community/solid-primitives/tree/main/packages/broadcast-channel#makebroadcastchannel)\u003cbr /\u003e[createBroadcastChannel](https://github.com/solidjs-community/solid-primitives/tree/main/packages/broadcast-channel#createbroadcastchannel)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/broadcast-channel?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/broadcast-channel)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/broadcast-channel?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/broadcast-channel)|\n|[clipboard](https://github.com/solidjs-community/solid-primitives/tree/main/packages/clipboard#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-3.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[copyClipboard](https://github.com/solidjs-community/solid-primitives/tree/main/packages/clipboard#copyclipboard)\u003cbr /\u003e[writeClipboard](https://github.com/solidjs-community/solid-primitives/tree/main/packages/clipboard#writeclipboard)\u003cbr /\u003e[createClipboard](https://github.com/solidjs-community/solid-primitives/tree/main/packages/clipboard#createclipboard)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/clipboard?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/clipboard)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/clipboard?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/clipboard)|\n|[event-listener](https://github.com/solidjs-community/solid-primitives/tree/main/packages/event-listener#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-3.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createEventListener](https://github.com/solidjs-community/solid-primitives/tree/main/packages/event-listener#createeventlistener)\u003cbr /\u003e[createEventSignal](https://github.com/solidjs-community/solid-primitives/tree/main/packages/event-listener#createeventsignal)\u003cbr /\u003e[createEventListenerMap](https://github.com/solidjs-community/solid-primitives/tree/main/packages/event-listener#createeventlistenermap)\u003cbr /\u003e[WindowEventListener](https://github.com/solidjs-community/solid-primitives/tree/main/packages/event-listener#windoweventlistener)\u003cbr /\u003e[DocumentEventListener](https://github.com/solidjs-community/solid-primitives/tree/main/packages/event-listener#documenteventlistener)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/event-listener?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/event-listener)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/event-listener?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/event-listener)|\n|[event-props](https://github.com/solidjs-community/solid-primitives/tree/main/packages/event-props#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-2.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createEventProps](https://github.com/solidjs-community/solid-primitives/tree/main/packages/event-props#createeventprops)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/event-props?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/event-props)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/event-props?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/event-props)|\n|[fullscreen](https://github.com/solidjs-community/solid-primitives/tree/main/packages/fullscreen#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-3.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createFullscreen](https://github.com/solidjs-community/solid-primitives/tree/main/packages/fullscreen#createfullscreen)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/fullscreen?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/fullscreen)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/fullscreen?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/fullscreen)|\n|[geolocation](https://github.com/solidjs-community/solid-primitives/tree/main/packages/geolocation#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-3.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createGeolocation](https://github.com/solidjs-community/solid-primitives/tree/main/packages/geolocation#creategeolocation)\u003cbr /\u003e[createGeolocationWatcher](https://github.com/solidjs-community/solid-primitives/tree/main/packages/geolocation#creategeolocationwatcher)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/geolocation?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/geolocation)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/geolocation?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/geolocation)|\n|[mutation-observer](https://github.com/solidjs-community/solid-primitives/tree/main/packages/mutation-observer#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-3.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createMutationObserver](https://github.com/solidjs-community/solid-primitives/tree/main/packages/mutation-observer#createmutationobserver)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/mutation-observer?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/mutation-observer)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/mutation-observer?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/mutation-observer)|\n|[permission](https://github.com/solidjs-community/solid-primitives/tree/main/packages/permission#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-3.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createPermission](https://github.com/solidjs-community/solid-primitives/tree/main/packages/permission#createpermission)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/permission?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/permission)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/permission?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/permission)|\n|[storage](https://github.com/solidjs-community/solid-primitives/tree/main/packages/storage#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-3.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[makePersisted](https://github.com/solidjs-community/solid-primitives/tree/main/packages/storage#makepersisted)\u003cbr /\u003e[cookieStorage](https://github.com/solidjs-community/solid-primitives/tree/main/packages/storage#cookiestorage)\u003cbr /\u003e[tauriStorage](https://github.com/solidjs-community/solid-primitives/tree/main/packages/storage#tauristorage)\u003cbr /\u003e[multiplexStorage](https://github.com/solidjs-community/solid-primitives/tree/main/packages/storage#multiplexstorage)\u003cbr /\u003e[storageSync](https://github.com/solidjs-community/solid-primitives/tree/main/packages/storage#storagesync)\u003cbr /\u003e[messageSync](https://github.com/solidjs-community/solid-primitives/tree/main/packages/storage#messagesync)\u003cbr /\u003e[wsSync](https://github.com/solidjs-community/solid-primitives/tree/main/packages/storage#wssync)\u003cbr /\u003e[multiplexSync](https://github.com/solidjs-community/solid-primitives/tree/main/packages/storage#multiplexsync)\u003cbr /\u003e[addClearMethod](https://github.com/solidjs-community/solid-primitives/tree/main/packages/storage#addclearmethod)\u003cbr /\u003e[addWithOptionsMethod](https://github.com/solidjs-community/solid-primitives/tree/main/packages/storage#addwithoptionsmethod)\u003cbr /\u003e[makeObjectStorage](https://github.com/solidjs-community/solid-primitives/tree/main/packages/storage#makeobjectstorage)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/storage?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/storage)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/storage?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/storage)|\n|[timer](https://github.com/solidjs-community/solid-primitives/tree/main/packages/timer#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-3.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[makeTimer](https://github.com/solidjs-community/solid-primitives/tree/main/packages/timer#maketimer)\u003cbr /\u003e[createTimer](https://github.com/solidjs-community/solid-primitives/tree/main/packages/timer#createtimer)\u003cbr /\u003e[createTimeoutLoop](https://github.com/solidjs-community/solid-primitives/tree/main/packages/timer#createtimeoutloop)\u003cbr /\u003e[createPolled](https://github.com/solidjs-community/solid-primitives/tree/main/packages/timer#createpolled)\u003cbr /\u003e[createIntervalCounter](https://github.com/solidjs-community/solid-primitives/tree/main/packages/timer#createintervalcounter)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/timer?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/timer)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/timer?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/timer)|\n|[upload](https://github.com/solidjs-community/solid-primitives/tree/main/packages/upload#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-0.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createFileUploader](https://github.com/solidjs-community/solid-primitives/tree/main/packages/upload#createfileuploader)\u003cbr /\u003e[createDropzone](https://github.com/solidjs-community/solid-primitives/tree/main/packages/upload#createdropzone)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/upload?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/upload)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/upload?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/upload)|\n|[workers](https://github.com/solidjs-community/solid-primitives/tree/main/packages/workers#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-0.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createWorker](https://github.com/solidjs-community/solid-primitives/tree/main/packages/workers#createworker)\u003cbr /\u003e[createWorkerPool](https://github.com/solidjs-community/solid-primitives/tree/main/packages/workers#createworkerpool)\u003cbr /\u003e[createSignaledWorker](https://github.com/solidjs-community/solid-primitives/tree/main/packages/workers#createsignaledworker)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/workers?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/workers)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/workers?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/workers)|\n|\u003ch4\u003e*Network*\u003c/h4\u003e|\n|[connectivity](https://github.com/solidjs-community/solid-primitives/tree/main/packages/connectivity#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-2.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createConnectivitySignal](https://github.com/solidjs-community/solid-primitives/tree/main/packages/connectivity#createconnectivitysignal)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/connectivity?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/connectivity)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/connectivity?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/connectivity)|\n|[cookies](https://github.com/solidjs-community/solid-primitives/tree/main/packages/cookies#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-0.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createServerCookie](https://github.com/solidjs-community/solid-primitives/tree/main/packages/cookies#createservercookie)\u003cbr /\u003e[createUserTheme](https://github.com/solidjs-community/solid-primitives/tree/main/packages/cookies#createusertheme)\u003cbr /\u003e[getCookiesString](https://github.com/solidjs-community/solid-primitives/tree/main/packages/cookies#getcookiesstring)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/cookies?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/cookies)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/cookies?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/cookies)|\n|[fetch](https://github.com/solidjs-community/solid-primitives/tree/main/packages/fetch#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-3.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createFetch](https://github.com/solidjs-community/solid-primitives/tree/main/packages/fetch#createfetch)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/fetch?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/fetch)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/fetch?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/fetch)|\n|[graphql](https://github.com/solidjs-community/solid-primitives/tree/main/packages/graphql#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-3.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createGraphQLClient](https://github.com/solidjs-community/solid-primitives/tree/main/packages/graphql#creategraphqlclient)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/graphql?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/graphql)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/graphql?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/graphql)|\n|[stream](https://github.com/solidjs-community/solid-primitives/tree/main/packages/stream#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-3.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createStream](https://github.com/solidjs-community/solid-primitives/tree/main/packages/stream#createstream)\u003cbr /\u003e[createAmplitudeStream](https://github.com/solidjs-community/solid-primitives/tree/main/packages/stream#createamplitudestream)\u003cbr /\u003e[createMediaPermissionRequest](https://github.com/solidjs-community/solid-primitives/tree/main/packages/stream#createmediapermissionrequest)\u003cbr /\u003e[createAmplitudeFromStream](https://github.com/solidjs-community/solid-primitives/tree/main/packages/stream#createamplitudefromstream)\u003cbr /\u003e[createScreen](https://github.com/solidjs-community/solid-primitives/tree/main/packages/stream#createscreen)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/stream?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/stream)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/stream?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/stream)|\n|[websocket](https://github.com/solidjs-community/solid-primitives/tree/main/packages/websocket#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-0.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[makeWS](https://github.com/solidjs-community/solid-primitives/tree/main/packages/websocket#makews)\u003cbr /\u003e[createWS](https://github.com/solidjs-community/solid-primitives/tree/main/packages/websocket#createws)\u003cbr /\u003e[createWSState](https://github.com/solidjs-community/solid-primitives/tree/main/packages/websocket#createwsstate)\u003cbr /\u003e[makeReconnectingWS](https://github.com/solidjs-community/solid-primitives/tree/main/packages/websocket#makereconnectingws)\u003cbr /\u003e[createReconnectingWS](https://github.com/solidjs-community/solid-primitives/tree/main/packages/websocket#createreconnectingws)\u003cbr /\u003e[makeHeartbeatWS](https://github.com/solidjs-community/solid-primitives/tree/main/packages/websocket#makeheartbeatws)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/websocket?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/websocket)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/websocket?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/websocket)|\n|\u003ch4\u003e*Control Flow*\u003c/h4\u003e|\n|[context](https://github.com/solidjs-community/solid-primitives/tree/main/packages/context#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-2.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createContextProvider](https://github.com/solidjs-community/solid-primitives/tree/main/packages/context#createcontextprovider)\u003cbr /\u003e[MultiProvider](https://github.com/solidjs-community/solid-primitives/tree/main/packages/context#multiprovider)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/context?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/context)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/context?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/context)|\n|[jsx-tokenizer](https://github.com/solidjs-community/solid-primitives/tree/main/packages/jsx-tokenizer#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-2.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createTokenizer](https://github.com/solidjs-community/solid-primitives/tree/main/packages/jsx-tokenizer#createtokenizer)\u003cbr /\u003e[createToken](https://github.com/solidjs-community/solid-primitives/tree/main/packages/jsx-tokenizer#createtoken)\u003cbr /\u003e[resolveTokens](https://github.com/solidjs-community/solid-primitives/tree/main/packages/jsx-tokenizer#resolvetokens)\u003cbr /\u003e[isToken](https://github.com/solidjs-community/solid-primitives/tree/main/packages/jsx-tokenizer#istoken)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/jsx-tokenizer?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/jsx-tokenizer)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/jsx-tokenizer?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/jsx-tokenizer)|\n|[keyed](https://github.com/solidjs-community/solid-primitives/tree/main/packages/keyed#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-3.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[keyArray](https://github.com/solidjs-community/solid-primitives/tree/main/packages/keyed#keyarray)\u003cbr /\u003e[Key](https://github.com/solidjs-community/solid-primitives/tree/main/packages/keyed#key)\u003cbr /\u003e[Entries](https://github.com/solidjs-community/solid-primitives/tree/main/packages/keyed#entries)\u003cbr /\u003e[MapEntries](https://github.com/solidjs-community/solid-primitives/tree/main/packages/keyed#mapentries)\u003cbr /\u003e[SetValues](https://github.com/solidjs-community/solid-primitives/tree/main/packages/keyed#setvalues)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/keyed?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/keyed)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/keyed?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/keyed)|\n|[list](https://github.com/solidjs-community/solid-primitives/tree/main/packages/list#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-0.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[listArray](https://github.com/solidjs-community/solid-primitives/tree/main/packages/list#listarray)\u003cbr /\u003e[List](https://github.com/solidjs-community/solid-primitives/tree/main/packages/list#list)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/list?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/list)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/list?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/list)|\n|[match](https://github.com/solidjs-community/solid-primitives/tree/main/packages/match#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-0.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[MatchTag](https://github.com/solidjs-community/solid-primitives/tree/main/packages/match#matchtag)\u003cbr /\u003e[MatchValue](https://github.com/solidjs-community/solid-primitives/tree/main/packages/match#matchvalue)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/match?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/match)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/match?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/match)|\n|[range](https://github.com/solidjs-community/solid-primitives/tree/main/packages/range#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-1.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[repeat](https://github.com/solidjs-community/solid-primitives/tree/main/packages/range#repeat)\u003cbr /\u003e[mapRange](https://github.com/solidjs-community/solid-primitives/tree/main/packages/range#maprange)\u003cbr /\u003e[indexRange](https://github.com/solidjs-community/solid-primitives/tree/main/packages/range#indexrange)\u003cbr /\u003e[Repeat](https://github.com/solidjs-community/solid-primitives/tree/main/packages/range#repeat)\u003cbr /\u003e[Range](https://github.com/solidjs-community/solid-primitives/tree/main/packages/range#range)\u003cbr /\u003e[IndexRange](https://github.com/solidjs-community/solid-primitives/tree/main/packages/range#indexrange)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/range?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/range)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/range?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/range)|\n|[refs](https://github.com/solidjs-community/solid-primitives/tree/main/packages/refs#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-2.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[mergeRefs](https://github.com/solidjs-community/solid-primitives/tree/main/packages/refs#mergerefs)\u003cbr /\u003e[resolveElements](https://github.com/solidjs-community/solid-primitives/tree/main/packages/refs#resolveelements)\u003cbr /\u003e[resolveFirst](https://github.com/solidjs-community/solid-primitives/tree/main/packages/refs#resolvefirst)\u003cbr /\u003e[Ref](https://github.com/solidjs-community/solid-primitives/tree/main/packages/refs#ref)\u003cbr /\u003e[Refs](https://github.com/solidjs-community/solid-primitives/tree/main/packages/refs#refs)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/refs?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/refs)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/refs?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/refs)|\n|\u003ch4\u003e*Utilities*\u003c/h4\u003e|\n|[controlled-props](https://github.com/solidjs-community/solid-primitives/tree/main/packages/controlled-props#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-3.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createControlledProp](https://github.com/solidjs-community/solid-primitives/tree/main/packages/controlled-props#createcontrolledprop)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/controlled-props?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/controlled-props)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/controlled-props?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/controlled-props)|\n|[cursor](https://github.com/solidjs-community/solid-primitives/tree/main/packages/cursor#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-0.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createElementCursor](https://github.com/solidjs-community/solid-primitives/tree/main/packages/cursor#createelementcursor)\u003cbr /\u003e[createBodyCursor](https://github.com/solidjs-community/solid-primitives/tree/main/packages/cursor#createbodycursor)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/cursor?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/cursor)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/cursor?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/cursor)|\n|[date](https://github.com/solidjs-community/solid-primitives/tree/main/packages/date#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-3.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createDate](https://github.com/solidjs-community/solid-primitives/tree/main/packages/date#createdate)\u003cbr /\u003e[createDateNow](https://github.com/solidjs-community/solid-primitives/tree/main/packages/date#createdatenow)\u003cbr /\u003e[createTimeDifference](https://github.com/solidjs-community/solid-primitives/tree/main/packages/date#createtimedifference)\u003cbr /\u003e[createTimeDifferenceFromNow](https://github.com/solidjs-community/solid-primitives/tree/main/packages/date#createtimedifferencefromnow)\u003cbr /\u003e[createTimeAgo](https://github.com/solidjs-community/solid-primitives/tree/main/packages/date#createtimeago)\u003cbr /\u003e[createCountdown](https://github.com/solidjs-community/solid-primitives/tree/main/packages/date#createcountdown)\u003cbr /\u003e[createCountdownFromNow](https://github.com/solidjs-community/solid-primitives/tree/main/packages/date#createcountdownfromnow)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/date?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/date)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/date?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/date)|\n|[event-bus](https://github.com/solidjs-community/solid-primitives/tree/main/packages/event-bus#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-2.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createEventBus](https://github.com/solidjs-community/solid-primitives/tree/main/packages/event-bus#createeventbus)\u003cbr /\u003e[createEmitter](https://github.com/solidjs-community/solid-primitives/tree/main/packages/event-bus#createemitter)\u003cbr /\u003e[createEventHub](https://github.com/solidjs-community/solid-primitives/tree/main/packages/event-bus#createeventhub)\u003cbr /\u003e[createEventStack](https://github.com/solidjs-community/solid-primitives/tree/main/packages/event-bus#createeventstack)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/event-bus?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/event-bus)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/event-bus?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/event-bus)|\n|[event-dispatcher](https://github.com/solidjs-community/solid-primitives/tree/main/packages/event-dispatcher#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-0.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createEventDispatcher](https://github.com/solidjs-community/solid-primitives/tree/main/packages/event-dispatcher#createeventdispatcher)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/event-dispatcher?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/event-dispatcher)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/event-dispatcher?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/event-dispatcher)|\n|[flux-store](https://github.com/solidjs-community/solid-primitives/tree/main/packages/flux-store#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-0.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createFluxStore](https://github.com/solidjs-community/solid-primitives/tree/main/packages/flux-store#createfluxstore)\u003cbr /\u003e[createFluxFactory](https://github.com/solidjs-community/solid-primitives/tree/main/packages/flux-store#createfluxfactory)\u003cbr /\u003e[createActions](https://github.com/solidjs-community/solid-primitives/tree/main/packages/flux-store#createactions)\u003cbr /\u003e[createAction](https://github.com/solidjs-community/solid-primitives/tree/main/packages/flux-store#createaction)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/flux-store?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/flux-store)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/flux-store?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/flux-store)|\n|[history](https://github.com/solidjs-community/solid-primitives/tree/main/packages/history#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-0.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createUndoHistory](https://github.com/solidjs-community/solid-primitives/tree/main/packages/history#createundohistory)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/history?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/history)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/history?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/history)|\n|[i18n](https://github.com/solidjs-community/solid-primitives/tree/main/packages/i18n#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-3.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[flatten](https://github.com/solidjs-community/solid-primitives/tree/main/packages/i18n#flatten)\u003cbr /\u003e[resolveTemplate](https://github.com/solidjs-community/solid-primitives/tree/main/packages/i18n#resolvetemplate)\u003cbr /\u003e[translator](https://github.com/solidjs-community/solid-primitives/tree/main/packages/i18n#translator)\u003cbr /\u003e[scopedTranslator](https://github.com/solidjs-community/solid-primitives/tree/main/packages/i18n#scopedtranslator)\u003cbr /\u003e[chainedTranslator](https://github.com/solidjs-community/solid-primitives/tree/main/packages/i18n#chainedtranslator)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/i18n?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/i18n)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/i18n?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/i18n)|\n|[platform](https://github.com/solidjs-community/solid-primitives/tree/main/packages/platform#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-1.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[List of variables](https://github.com/solidjs-community/solid-primitives/tree/main/packages/platform#list-of-variables)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/platform?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/platform)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/platform?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/platform)|\n|[promise](https://github.com/solidjs-community/solid-primitives/tree/main/packages/promise#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-3.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[promiseTimeout](https://github.com/solidjs-community/solid-primitives/tree/main/packages/promise#promisetimeout)\u003cbr /\u003e[raceTimeout](https://github.com/solidjs-community/solid-primitives/tree/main/packages/promise#racetimeout)\u003cbr /\u003e[until](https://github.com/solidjs-community/solid-primitives/tree/main/packages/promise#until)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/promise?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/promise)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/promise?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/promise)|\n|[props](https://github.com/solidjs-community/solid-primitives/tree/main/packages/props#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-3.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[combineProps](https://github.com/solidjs-community/solid-primitives/tree/main/packages/props#combineprops)\u003cbr /\u003e[filterProps](https://github.com/solidjs-community/solid-primitives/tree/main/packages/props#filterprops)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/props?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/props)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/props?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/props)|\n|[scheduled](https://github.com/solidjs-community/solid-primitives/tree/main/packages/scheduled#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-3.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[debounce](https://github.com/solidjs-community/solid-primitives/tree/main/packages/scheduled#debounce)\u003cbr /\u003e[throttle](https://github.com/solidjs-community/solid-primitives/tree/main/packages/scheduled#throttle)\u003cbr /\u003e[scheduleIdle](https://github.com/solidjs-community/solid-primitives/tree/main/packages/scheduled#scheduleidle)\u003cbr /\u003e[leading](https://github.com/solidjs-community/solid-primitives/tree/main/packages/scheduled#leading)\u003cbr /\u003e[createScheduled](https://github.com/solidjs-community/solid-primitives/tree/main/packages/scheduled#createscheduled)\u003cbr /\u003e[leadingAndTrailing](https://github.com/solidjs-community/solid-primitives/tree/main/packages/scheduled#leadingandtrailing)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/scheduled?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/scheduled)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/scheduled?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/scheduled)|\n|[script-loader](https://github.com/solidjs-community/solid-primitives/tree/main/packages/script-loader#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-3.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createScriptLoader](https://github.com/solidjs-community/solid-primitives/tree/main/packages/script-loader#createscriptloader)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/script-loader?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/script-loader)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/script-loader?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/script-loader)|\n|[share](https://github.com/solidjs-community/solid-primitives/tree/main/packages/share#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-3.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createSocialShare](https://github.com/solidjs-community/solid-primitives/tree/main/packages/share#createsocialshare)\u003cbr /\u003e[createWebShare](https://github.com/solidjs-community/solid-primitives/tree/main/packages/share#createwebshare)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/share?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/share)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/share?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/share)|\n|\u003ch4\u003e*Reactivity*\u003c/h4\u003e|\n|[db-store](https://github.com/solidjs-community/solid-primitives/tree/main/packages/db-store#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-0.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createDbStore](https://github.com/solidjs-community/solid-primitives/tree/main/packages/db-store#createdbstore)\u003cbr /\u003e[supabaseAdapter](https://github.com/solidjs-community/solid-primitives/tree/main/packages/db-store#supabaseadapter)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/db-store?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/db-store)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/db-store?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/db-store)|\n|[deep](https://github.com/solidjs-community/solid-primitives/tree/main/packages/deep#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-1.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[trackDeep](https://github.com/solidjs-community/solid-primitives/tree/main/packages/deep#trackdeep)\u003cbr /\u003e[trackStore](https://github.com/solidjs-community/solid-primitives/tree/main/packages/deep#trackstore)\u003cbr /\u003e[captureStoreUpdates](https://github.com/solidjs-community/solid-primitives/tree/main/packages/deep#capturestoreupdates)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/deep?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/deep)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/deep?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/deep)|\n|[destructure](https://github.com/solidjs-community/solid-primitives/tree/main/packages/destructure#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-2.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[destructure](https://github.com/solidjs-community/solid-primitives/tree/main/packages/destructure#destructure)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/destructure?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/destructure)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/destructure?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/destructure)|\n|[immutable](https://github.com/solidjs-community/solid-primitives/tree/main/packages/immutable#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-1.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createImmutable](https://github.com/solidjs-community/solid-primitives/tree/main/packages/immutable#createimmutable)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/immutable?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/immutable)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/immutable?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/immutable)|\n|[lifecycle](https://github.com/solidjs-community/solid-primitives/tree/main/packages/lifecycle#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-0.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createIsMounted](https://github.com/solidjs-community/solid-primitives/tree/main/packages/lifecycle#createismounted)\u003cbr /\u003e[isHydrated](https://github.com/solidjs-community/solid-primitives/tree/main/packages/lifecycle#ishydrated)\u003cbr /\u003e[onElementConnect](https://github.com/solidjs-community/solid-primitives/tree/main/packages/lifecycle#onelementconnect)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/lifecycle?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/lifecycle)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/lifecycle?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/lifecycle)|\n|[map](https://github.com/solidjs-community/solid-primitives/tree/main/packages/map#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-2.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[ReactiveMap](https://github.com/solidjs-community/solid-primitives/tree/main/packages/map#reactivemap)\u003cbr /\u003e[ReactiveWeakMap](https://github.com/solidjs-community/solid-primitives/tree/main/packages/map#reactiveweakmap)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/map?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/map)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/map?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/map)|\n|[memo](https://github.com/solidjs-community/solid-primitives/tree/main/packages/memo#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-3.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createLatest](https://github.com/solidjs-community/solid-primitives/tree/main/packages/memo#createlatest)\u003cbr /\u003e[createLatestMany](https://github.com/solidjs-community/solid-primitives/tree/main/packages/memo#createlatestmany)\u003cbr /\u003e[createWritableMemo](https://github.com/solidjs-community/solid-primitives/tree/main/packages/memo#createwritablememo)\u003cbr /\u003e[createLazyMemo](https://github.com/solidjs-community/solid-primitives/tree/main/packages/memo#createlazymemo)\u003cbr /\u003e[createPureReaction](https://github.com/solidjs-community/solid-primitives/tree/main/packages/memo#createpurereaction)\u003cbr /\u003e[createMemoCache](https://github.com/solidjs-community/solid-primitives/tree/main/packages/memo#creatememocache)\u003cbr /\u003e[createReducer](https://github.com/solidjs-community/solid-primitives/tree/main/packages/memo#createreducer)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/memo?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/memo)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/memo?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/memo)|\n|[mutable](https://github.com/solidjs-community/solid-primitives/tree/main/packages/mutable#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-3.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createMutable](https://github.com/solidjs-community/solid-primitives/tree/main/packages/mutable#createmutable)\u003cbr /\u003e[modifyMutable](https://github.com/solidjs-community/solid-primitives/tree/main/packages/mutable#modifymutable)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/mutable?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/mutable)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/mutable?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/mutable)|\n|[resource](https://github.com/solidjs-community/solid-primitives/tree/main/packages/resource#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-2.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createAggregated](https://github.com/solidjs-community/solid-primitives/tree/main/packages/resource#createaggregated)\u003cbr /\u003e[createDeepSignal](https://github.com/solidjs-community/solid-primitives/tree/main/packages/resource#createdeepsignal)\u003cbr /\u003e[makeAbortable](https://github.com/solidjs-community/solid-primitives/tree/main/packages/resource#makeabortable)\u003cbr /\u003e[createAbortable](https://github.com/solidjs-community/solid-primitives/tree/main/packages/resource#createabortable)\u003cbr /\u003e[makeCache](https://github.com/solidjs-community/solid-primitives/tree/main/packages/resource#makecache)\u003cbr /\u003e[makeRetrying](https://github.com/solidjs-community/solid-primitives/tree/main/packages/resource#makeretrying)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/resource?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/resource)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/resource?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/resource)|\n|[rootless](https://github.com/solidjs-community/solid-primitives/tree/main/packages/rootless#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-2.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createSubRoot](https://github.com/solidjs-community/solid-primitives/tree/main/packages/rootless#createsubroot)\u003cbr /\u003e[createCallback](https://github.com/solidjs-community/solid-primitives/tree/main/packages/rootless#createcallback)\u003cbr /\u003e[createDisposable](https://github.com/solidjs-community/solid-primitives/tree/main/packages/rootless#createdisposable)\u003cbr /\u003e[createSharedRoot](https://github.com/solidjs-community/solid-primitives/tree/main/packages/rootless#createsharedroot)\u003cbr /\u003e[createRootPool](https://github.com/solidjs-community/solid-primitives/tree/main/packages/rootless#createrootpool)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/rootless?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/rootless)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/rootless?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/rootless)|\n|[set](https://github.com/solidjs-community/solid-primitives/tree/main/packages/set#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-2.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[ReactiveSet](https://github.com/solidjs-community/solid-primitives/tree/main/packages/set#reactiveset)\u003cbr /\u003e[ReactiveWeakSet](https://github.com/solidjs-community/solid-primitives/tree/main/packages/set#reactiveweakset)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/set?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/set)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/set?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/set)|\n|[signal-builders](https://github.com/solidjs-community/solid-primitives/tree/main/packages/signal-builders#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-2.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[List of builders](https://github.com/solidjs-community/solid-primitives/tree/main/packages/signal-builders#list-of-builders)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/signal-builders?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/signal-builders)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/signal-builders?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/signal-builders)|\n|[state-machine](https://github.com/solidjs-community/solid-primitives/tree/main/packages/state-machine#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-0.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createMachine](https://github.com/solidjs-community/solid-primitives/tree/main/packages/state-machine#createmachine)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/state-machine?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/state-machine)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/state-machine?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/state-machine)|\n|[static-store](https://github.com/solidjs-community/solid-primitives/tree/main/packages/static-store#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-2.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createStaticStore](https://github.com/solidjs-community/solid-primitives/tree/main/packages/static-store#createstaticstore)\u003cbr /\u003e[createDerivedStaticStore](https://github.com/solidjs-community/solid-primitives/tree/main/packages/static-store#createderivedstaticstore)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/static-store?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/static-store)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/static-store?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/static-store)|\n|[trigger](https://github.com/solidjs-community/solid-primitives/tree/main/packages/trigger#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-1.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createTrigger](https://github.com/solidjs-community/solid-primitives/tree/main/packages/trigger#createtrigger)\u003cbr /\u003e[createTriggerCache](https://github.com/solidjs-community/solid-primitives/tree/main/packages/trigger#createtriggercache)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/trigger?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/trigger)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/trigger?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/trigger)|\n|\u003ch4\u003e*UI Patterns*\u003c/h4\u003e|\n|[marker](https://github.com/solidjs-community/solid-primitives/tree/main/packages/marker#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-1.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createMarker](https://github.com/solidjs-community/solid-primitives/tree/main/packages/marker#createmarker)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/marker?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/marker)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/marker?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/marker)|\n|[masonry](https://github.com/solidjs-community/solid-primitives/tree/main/packages/masonry#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-0.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createMasonry](https://github.com/solidjs-community/solid-primitives/tree/main/packages/masonry#createmasonry)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/masonry?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/masonry)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/masonry?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/masonry)|\n|[pagination](https://github.com/solidjs-community/solid-primitives/tree/main/packages/pagination#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-0.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createPagination](https://github.com/solidjs-community/solid-primitives/tree/main/packages/pagination#createpagination)\u003cbr /\u003e[createSegment](https://github.com/solidjs-community/solid-primitives/tree/main/packages/pagination#createsegment)\u003cbr /\u003e[createInfiniteScroll](https://github.com/solidjs-community/solid-primitives/tree/main/packages/pagination#createinfinitescroll)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/pagination?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/pagination)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/pagination?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/pagination)|\n|[virtual](https://github.com/solidjs-community/solid-primitives/tree/main/packages/virtual#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-0.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createVirutalList](https://github.com/solidjs-community/solid-primitives/tree/main/packages/virtual#createvirutallist)\u003cbr /\u003e[VirtualList](https://github.com/solidjs-community/solid-primitives/tree/main/packages/virtual#virtuallist)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/virtual?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/virtual)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/virtual?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/virtual)|\n|\u003ch4\u003e*Animation*\u003c/h4\u003e|\n|[presence](https://github.com/solidjs-community/solid-primitives/tree/main/packages/presence#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-0.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createPresence](https://github.com/solidjs-community/solid-primitives/tree/main/packages/presence#createpresence)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/presence?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/presence)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/presence?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/presence)|\n|[raf](https://github.com/solidjs-community/solid-primitives/tree/main/packages/raf#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-3.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createRAF](https://github.com/solidjs-community/solid-primitives/tree/main/packages/raf#createraf)\u003cbr /\u003e[createMs](https://github.com/solidjs-community/solid-primitives/tree/main/packages/raf#createms)\u003cbr /\u003e[targetFPS](https://github.com/solidjs-community/solid-primitives/tree/main/packages/raf#targetfps)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/raf?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/raf)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/raf?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/raf)|\n|[spring](https://github.com/solidjs-community/solid-primitives/tree/main/packages/spring#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-0.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createSpring](https://github.com/solidjs-community/solid-primitives/tree/main/packages/spring#createspring)\u003cbr /\u003e[createDerivedSpring](https://github.com/solidjs-community/solid-primitives/tree/main/packages/spring#createderivedspring)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/spring?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/spring)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/spring?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/spring)|\n|[transition-group](https://github.com/solidjs-community/solid-primitives/tree/main/packages/transition-group#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-2.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createSwitchTransition](https://github.com/solidjs-community/solid-primitives/tree/main/packages/transition-group#createswitchtransition)\u003cbr /\u003e[createListTransition](https://github.com/solidjs-community/solid-primitives/tree/main/packages/transition-group#createlisttransition)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/transition-group?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/transition-group)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/transition-group?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/transition-group)|\n|[tween](https://github.com/solidjs-community/solid-primitives/tree/main/packages/tween#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge\u0026label=\u0026url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-3.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createTween](https://github.com/solidjs-community/solid-primitives/tree/main/packages/tween#createtween)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/tween?style=for-the-badge\u0026label=)](https://bundlephobia.com/package/@solid-primitives/tween)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/tween?style=for-the-badge\u0026label=)](https://www.npmjs.com/package/@solid-primitives/tween)|\n\n\u003c!-- INSERT-PRIMITIVES-TABLE:END --\u003e\n","funding_links":[],"categories":["TypeScript"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsolidjs-community%2Fsolid-primitives","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsolidjs-community%2Fsolid-primitives","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsolidjs-community%2Fsolid-primitives/lists"}