Nuxt Aos
A Nuxt module for adding animate on scroll to your application.
Features
- ⛰ Easily add animate on scroll library to your nuxt app
Quick Setup
- Add
nuxt-aos
dependency to your project
# Using pnpm
pnpm add -D nuxt-aos
# Using yarn
yarn add --dev nuxt-aos
# Using npm
npm install --save-dev nuxt-aos
- Add
nuxt-aos
to themodules
section ofnuxt.config.ts
export default defineNuxtConfig({
modules: [
'nuxt-aos'
]
})
That's it! You can now use Aos in your Nuxt app on every page ✨
For example:
<div data-aos="fade-up"></div>
To see all the different animations, visit https://michalsnik.github.io/aos/
Development
# Install dependencies
npm install
# Generate type stubs
npm run dev:prepare
# Develop with the playground
npm run dev
# Build the playground
npm run dev:build
# Run ESLint
npm run lint
# Run Vitest
npm run test
npm run test:watch
# Release new version
npm run release
Configuration
You can configure nuxt-aos in nuxt.config.js
with the aos
export default defineNuxtConfig({
aos: {
// Global settings:
disable: false, // accepts following values: 'phone', 'tablet', 'mobile', boolean, expression or function
startEvent: 'DOMContentLoaded', // name of the event dispatched on the document, that AOS should initialize on
initClassName: 'aos-init', // class applied after initialization
animatedClassName: 'aos-animate', // class applied on animation
useClassNames: false, // if true, will add content of `data-aos` as classes on scroll
disableMutationObserver: false, // disables automatic mutations' detections (advanced)
debounceDelay: 50, // the delay on debounce used while resizing window (advanced)
throttleDelay: 99, // the delay on throttle used while scrolling the page (advanced)
// Settings that can be overridden on per-element basis, by `data-aos-*` attributes:
offset: 120, // offset (in px) from the original trigger point
delay: 0, // values from 0 to 3000, with step 50ms
duration: 400, // values from 0 to 3000, with step 50ms
easing: 'ease', // default easing for AOS animations
once: false, // whether animation should happen only once - while scrolling down
mirror: false, // whether elements should animate out while scrolling past them
anchorPlacement: 'top-bottom', // defines which position of the element regarding to window should trigger the animation
}
})