Added smooth scroll using lenis

This commit is contained in:
K K Haridev 2026-02-02 22:39:44 +05:30
commit de4b44f9fa
2 changed files with 26 additions and 0 deletions

20
src/lib/lenis.js Normal file
View file

@ -0,0 +1,20 @@
import Lenis from 'lenis';
let lenisInstance = null;
export const lenisScrollInstance = () => {
if (!lenisInstance) {
const lenis = new Lenis();
function raf(time) {
lenis.raf(time);
requestAnimationFrame(raf);
}
requestAnimationFrame(raf);
lenisInstance = lenis;
}
return lenisInstance;
};

View file

@ -3,8 +3,14 @@
import Footer from '$lib/components/footer.svelte';
import './layout.css';
import favicon from '$lib/assets/favicon.svg';
import { onMount } from 'svelte';
import 'lenis/dist/lenis.css';
import { lenisScrollInstance } from '$lib/lenis';
let { children } = $props();
onMount(() => {
lenisScrollInstance();
});
</script>
<svelte:head><link rel="icon" href={favicon} /></svelte:head>