@svelte-put

a collection of useful svelte actions, components, and utilities extracted from real world projects.

Packages

@svelte-put includes several packages with self-managed release cycles, listed below. Check out their corresponding documentation page for more details.

ID

Description

Version

Status

avatar

component & utilities for building avatars

stable

clickoutside

event for clicking outside node

stable

cloudflare-turnstile

action for rendering Cloudflare turnstile into HTML node

dev

copy

action & utilities to copy text to clipboard

stable

dragscroll

action to add "drag-to-scroll" behavior

stable

inline-svg

solution for inlining SVGs in svelte land

stable

intersect

svelte action that wraps for IntersectionObserver

stable

lockscroll

locking scroll and hide scrollbar within an HTML element

stable

modal

type-safe async modal builder

stable

movable

move node on mousedown

stable

noti

type-safe and headless async notification builder

stable

preprocess-auto-slug

svelte preprocessor to add id attribute and anchor tag

stable

preprocess-inline-svg

svelte preprocessor to inline static svg at build time

stable

qr

render QR as img or svg, optionally with logo

stable

resize

svelte action that wraps for ResizeObserver

stable

select

type-safe and extensible select

dev

shortcut

add keyboard shortcuts to node

stable

toc

action and utilities for building table of contents

stable

tooltip

over-engineered, type-safe, headless, and extensible tooltip builder via Svelte action

stable

Inspiration & Acknowledgement

This is a collection of useful svelte utilities extracted from my real world projects that might be helpful for yours too.

There is already a great pool of svelte actions collected by Shawn and other contributors that you should check out. There might be some duplication here and there. However:

  • Shawn's project aims to be a source for RFCs into svelte; I believe stuff I am putting here should stay in user land.
  • I prefer having separate packages for their dedicated purposes (instead of one package that exports everything).
  • I want to incrementally include more than just actions in this collection.

For those reasons, a monorepo seems like a good fit, hence this project.

Happy coding! 👨‍💻

Edit this page on GitHub