Examples
Complete example appโ
The example-svelte repository contains a working Svelte + Vite app with the Screeb SDK integrated.
Install provider with autoInitโ
<!-- App.svelte -->
<script lang="ts">
import { setScreebContext } from "@screeb/sdk-svelte";
setScreebContext({
websiteId: "<YOUR-CHANNEL-ID>",
autoInit: true,
userId: "user-123",
userProperties: {
plan: "pro",
authenticated: true,
},
hooks: {
version: "1.0.0",
onReady: () => console.log("Screeb ready"),
},
});
</script>
Identify after loginโ
<!-- App.svelte -->
<script lang="ts">
import { setScreebContext } from "@screeb/sdk-svelte";
setScreebContext({
websiteId: "<YOUR-CHANNEL-ID>",
autoInit: true,
});
</script>
<script lang="ts">
import { useScreeb } from "@screeb/sdk-svelte";
const { identity } = useScreeb();
async function onLogin(userId: string, email: string) {
await identity(userId, { email });
}
</script>
Track eventsโ
<script lang="ts">
import { useScreeb } from "@screeb/sdk-svelte";
const { eventTrack } = useScreeb();
</script>
<button on:click={() => eventTrack("button-clicked", { page: "home" })}>
Click me
</button>
Trigger a survey on button clickโ
<script lang="ts">
import { useScreeb } from "@screeb/sdk-svelte";
const { surveyStart } = useScreeb();
</script>
<button on:click={() => surveyStart("<survey-id>")}>Give feedback</button>