Skip to content

mellanslag-de/sveltekit-sse

 
 

Repository files navigation

SvelteKit SSE

This library provides an easy way to produce and consume server sent events.

Install with:

npm i -D sveltekit-server-sent-events

Create your server sent event with:

// src/routes/event/+sever.js
import { event } from 'sveltekit-server-sent-events'

/**
 * @param {number} milliseconds
 * @returns
 */
const delay = milliseconds => new Promise(r => setTimeout(r, milliseconds))

export function GET() {
	return event(async emit => {
		while (true) {
			emit(Date.now())
			await delay(1000)
		}
	}).toResponse()
}

and consume it on your client with:

<script>
	// src/routes/+page.svelte
	import { source } from 'sveltekit-server-sent-events'
	const value = source('/event').onError(error => console.error({ error }))
</script>
{$value}

About

Server Sent Events with SvelteKit

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 91.3%
  • HTML 6.0%
  • Svelte 2.7%