Lightweight Carousel based on CSS Scroll Snap
npm install vue-snap> 🌿 Modern, lightweight Vue 3 Carousel powered by CSS Scroll Snap.


!npm bundle size

- Lightweight – up to 5–10× smaller than other libraries
- No calculations or heavy logic – performance-first approach
- Fully responsive – most customization is handled via CSS (e.g. number of visible slides)
- ESM bundle with tree-shaking – dead code is automatically eliminated
- SSR support – works with frameworks like Nuxt.js 🎉 More here
- Vue 3 support 🎉 More here
- Modern browser support – compatible with all common browsers More here
``terminal`
pnpm add vue-snap
yarn add vue-snap
npm install vue-snap
`js
import { createApp } from 'vue'
import App from './App.vue'
import VueSnap from 'vue-snap'
import 'vue-snap/dist/vue-snap.css'
const myApp = createApp(App)
myApp.use(VueSnap)
myApp.mount('#app')
`
`js
import { Carousel, Slide } from 'vue-snap'
import 'vue-snap/dist/vue-snap.css'
export default {
components: {
Carousel,
Slide
}
}
``