### Start Development Server Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/README.md Runs the development server to preview your Docus site locally. ```bash yarn dev ``` -------------------------------- ### Manually Install v-gsap-nuxt (npm) Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/1.installation/1.getting-started.md Install the v-gsap-nuxt package using npm. This is the first step for manual installation. ```bash npm i v-gsap-nuxt ``` -------------------------------- ### Install Dependencies Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/README.md Installs project dependencies using Yarn. ```bash yarn install ``` -------------------------------- ### v-gsap.fromTo Example Source: https://context7.com/holux-design/v-gsap-nuxt/llms.txt Define explicit start and end states for animations. The directive value must be an array of two tween-vars objects. ```vue ``` -------------------------------- ### v-gsap.from, .to, .set Examples Source: https://context7.com/holux-design/v-gsap-nuxt/llms.txt Animate elements from a state, to a state, or set properties instantly. Use these directives for basic element animations on mount. ```vue ``` -------------------------------- ### Install v-gsap-nuxt for Vue (standalone) Source: https://context7.com/holux-design/v-gsap-nuxt/llms.txt Install the package using npm. Then, register the `vGsapVue` directive in your main Vue application file. ```bash npm i v-gsap-nuxt ``` ```typescript // main.ts import { createApp } from 'vue' import App from './App.vue' import { vGsapVue } from 'v-gsap-nuxt/vue' const app = createApp(App) app.directive('gsap', vGsapVue({ presets: [], breakpoint: 768, scroller: '', })) app.mount('#app') ``` -------------------------------- ### Local Development Commands Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/README.md Commands for setting up local development, including installing dependencies, preparing types, running the playground or docs, building the playground, checking code quality, and releasing new versions. ```bash # Install dependencies npm install # Generate type stubs npm run dev:prepare # Develop with the playground npm run dev:playground # OR # Develop with the Docs npm run dev:docs # Build the playground npm run dev:build # Run ESLint npm run dev:check # Release new version npm run release ``` -------------------------------- ### Full GSAPTransition Example with Custom Properties Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/7.v-if.md Demonstrates a comprehensive usage of GSAPTransition with custom duration, delay, appear animation, ease, and hidden properties. ```vue
Hello World
``` -------------------------------- ### Advanced SplitText Customization Example Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/8.splittext.md Demonstrates advanced SplitText configuration with custom class names and specifying the HTML tag for split words. ```vue

Advanced Configuration Example

``` -------------------------------- ### v-gsap Inline Animation Syntax Example Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/1.installation/3.Philosophy.md Demonstrates the readable and writeable inline format for defining animations with v-gsap. This syntax aims to break down everyday animations into a comfortable structure. ```javascript v-gsap.whenVisible.stagger.once.from=... ``` -------------------------------- ### Manually Install v-gsap-nuxt (nuxt.config.ts) Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/1.installation/1.getting-started.md Add 'v-gsap-nuxt' to the modules array in your nuxt.config.ts file to enable the module. ```typescript modules: [ 'v-gsap-nuxt' ] ``` -------------------------------- ### Entrance with Custom Start/End Points Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/2.examples.md Define custom scroll trigger start and end points for entrance animations using `start` and `end` properties. ```vue
``` -------------------------------- ### Pinned Timeline Animation Configuration Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/5.timeline.md Configure pinned timelines using 'start' and 'end' properties to control when the animation is pinned and for how long. ```vue
``` -------------------------------- ### Using the `useGSAP()` Composable for Scripted Animations Source: https://context7.com/holux-design/v-gsap-nuxt/llms.txt Access the shared GSAP instance within ` ``` -------------------------------- ### v-gsap.whenVisible Examples Source: https://context7.com/holux-design/v-gsap-nuxt/llms.txt Trigger animations when an element scrolls into view, automatically wrapping GSAP's ScrollTrigger. Options include `once`, `fromInvisible`, `reversible`, custom `start`/`end`, `scrub`, and `markers`. ```vue ``` -------------------------------- ### Add v-gsap-nuxt Module Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/0.index.md Install the v-gsap-nuxt module using npx to add GSAP animation capabilities to your Nuxt.js project. ```bash npx nuxi module add v-gsap-nuxt ``` -------------------------------- ### Add opacity: 0 and opacity: 1 states with v-gsap.fromInvisible Source: https://context7.com/holux-design/v-gsap-nuxt/llms.txt Use `.fromInvisible` to set the hidden state to `opacity: 0` and the visible state to `opacity: 1`. This prevents content from flashing before the animation starts. It's particularly useful for hero elements that appear above the fold. ```vue ``` -------------------------------- ### Initialize Docus Project Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/README.md Use this command to initialize a new Docus project from the themes/docus template. ```bash npx nuxi init -t themes/docus ``` -------------------------------- ### Build for Edge Side Rendering Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/README.md Builds the application for deployment to serverless environments like Vercel Functions or Netlify Functions. ```bash yarn build ``` -------------------------------- ### Preview Static Build Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/README.md Locally previews the static build generated by the `yarn generate` command. ```bash yarn preview ``` -------------------------------- ### Build for Static Generation Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/README.md Generates static HTML files for deployment to any static hosting provider. The output is placed in the .output/public directory. ```bash yarn generate ``` -------------------------------- ### Entrance Animation with `.entrance` Preset Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/2.examples.md Utilize the `.entrance` modifier with a preset like `slide-left` for a predefined entrance animation. ```vue
``` -------------------------------- ### Predefined Entrance Animations Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/3.modifiers.md Use the `.entrance` modifier with predefined animations like `.slide-left`, `.fade`, or `.scale`. These modifiers apply common entrance effects and utilize `.whenVisible.once` internally. ```html
...
...
...
``` -------------------------------- ### Entrance Animations with .fromInvisible Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/3.modifiers.md Use .fromInvisible to add an initial opacity: 0 state and opacity: 1 to the target state, preventing elements from being visible before animation. ```typescript v-gsap.fromInvisible.to={...} ``` -------------------------------- ### Basic Fade-In Entrance Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/2.examples.md Use `.whenVisible.from` to create a simple fade-in animation from the left when an element enters the viewport. ```vue
``` -------------------------------- ### Create sequenced timelines with v-gsap.timeline and v-gsap.add Source: https://context7.com/holux-design/v-gsap-nuxt/llms.txt Compose multi-step animation timelines directly in the template using `.timeline` and `.add`. Animations are applied in DOM order by default. Use `.withPrevious` for parallel animations or `.order-N` to specify a custom sequence. ```vue ``` -------------------------------- ### Use built-in entrance presets with v-gsap.entrance Source: https://context7.com/holux-design/v-gsap-nuxt/llms.txt Leverage `.entrance` for pre-defined scroll-triggered animations. These presets internally use `.whenVisible.once`. Available presets include slide animations (left, right, top, bottom), fade, scale, and scale-full. ```vue ``` -------------------------------- ### Basic Animation Types in v-gsap Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/3.modifiers.md Use .from, .to, .fromTo for animating between states, and .call for executing functions. .call with .whenVisible acts like .once. ```typescript v-gsap.from={...} v-gsap.to={...} v-gsap.fromTo=[{...},{...}] v-gsap.call(() => {...}) v-gsap.whenVisible.call(() => {...}) ``` -------------------------------- ### Staggered Entrance Animation for List Items Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/2.examples.md Animate multiple list items sequentially as they enter the viewport using the `.stagger` modifier. ```html ``` -------------------------------- ### Parallel Animation Steps in a Timeline Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/5.timeline.md Use the .withPrevious modifier to run an animation step concurrently with the preceding animation step in the timeline. ```html

This runs at the

same time

``` -------------------------------- ### Timeline Animation Triggered on Visibility Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/5.timeline.md Combine .timeline with .whenVisible to create entrance animations that play only when the element becomes visible in the viewport. ```html

Hello World

They see me animating
``` -------------------------------- ### Debug Entrance Animations with Markers Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/2.examples.md Enable scroll trigger markers for debugging entrance animations by adding the `.markers` modifier. ```vue
``` -------------------------------- ### Create hover animations with v-gsap.whileHover Source: https://context7.com/holux-design/v-gsap-nuxt/llms.txt Use the `.whileHover` directive to play an animation when the mouse enters an element and reverse it when the mouse leaves. Use `.noReverse` to prevent the animation from reversing on mouse leave, keeping the element in its final state. ```vue ``` -------------------------------- ### Basic Timeline Animation Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/5.timeline.md Use .timeline on a parent element to group animations on its children. Animations are added using .add. ```html

Hello World

They see me animating
``` -------------------------------- ### Hover Animation (Basic) Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/2.examples.md Animate an element to a target state when hovered using `.whileHover.to`. ```html
``` -------------------------------- ### Cursor Attraction with `.magnetic` Source: https://context7.com/holux-design/v-gsap-nuxt/llms.txt Make elements magnetically follow the cursor when it's nearby using the `.magnetic` directive. Strength modifiers like `.weak`, `.weaker`, `.stronger`, and `.strong` allow you to control the attraction force. ```vue ``` -------------------------------- ### Infinite Swaying Text Animation Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/8.splittext.md Create an infinite animation where text sways up and down using `yoyo` and `repeat` with a character split. ```vue

Swaying text

``` -------------------------------- ### Desktop-Only Animation Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/2.examples.md Apply an animation that only runs on desktop devices, with infinite repetition. ```html
``` -------------------------------- ### Using useGSAP() Composable in Vue Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/6.composable.md Use the `useGSAP()` composable within `onMounted` to perform GSAP animations from your script section. This is an alternative when the directive approach is not feasible. ```vue ``` -------------------------------- ### Differing Mobile/Desktop Animations Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/2.examples.md Apply different animations for desktop and mobile devices to the same element. ```html
``` -------------------------------- ### One-Time Entrance Animation Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/2.examples.md Use the `.once` modifier to ensure an entrance animation plays only a single time when the element becomes visible. ```vue
``` -------------------------------- ### Add Presets Option to nuxt.config.ts Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/4.presets.md To enable presets, add the `presets` array to the `vgsap` configuration in your `nuxt.config.ts` file. This array will hold your custom preset definitions. ```typescript vgsap: { presets: [] } ``` -------------------------------- ### Responsive Text Animation with SplitText Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/8.splittext.md Apply different SplitText animations based on screen size using .mobile and .desktop modifiers. Ensure the base element has the v-gsap directive. ```vue

Different behavior on mobile and desktop

``` -------------------------------- ### Per-Character/Word/Line Animations with `.splitText` Source: https://context7.com/holux-design/v-gsap-nuxt/llms.txt Utilize GSAP's SplitText plugin with the `.splitText` directive for granular animations on characters, words, or lines. Modifiers like `.chars`, `.words`, `.lines`, and `.stagger` allow for complex effects. Custom SplitText options and callbacks can also be configured. ```vue ``` -------------------------------- ### Custom SplitText Configuration Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/8.splittext.md Configure SplitText behavior by passing a 'splitText' object with options like 'reduceWhiteSpace', 'wordDelimiter', and CSS class names for split elements. ```vue
Text with custom configuration
``` -------------------------------- ### Smooth Animation with Custom Fonts Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/8.splittext.md Ensure accurate text measurements and smooth animations when using custom web fonts by setting `splitText.waitForFonts` to `true`. ```vue

Smooth with custom fonts

``` -------------------------------- ### Animate Text with Custom Scroll Trigger and Value Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/2.examples.md Configure custom scroll trigger points and the text content for the `.animateText` animation. ```html
``` -------------------------------- ### Register Custom GSAP Plugin Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/3.Information/1.gsap-plugins.md Register a custom GSAP plugin, such as RoughEase from EasePack, using the useGSAP composable before the component mounts. This ensures the plugin is available for GSAP animations. ```vue ``` -------------------------------- ### Multiple Animation Steps on a Single Element Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/5.timeline.md Apply multiple animation steps to a single element within a timeline by using multiple v-gsap directives on that element. ```html

Hello World

``` -------------------------------- ### Defining Reusable Animation Presets in `nuxt.config.ts` Source: https://context7.com/holux-design/v-gsap-nuxt/llms.txt Create custom animation shortcuts in your Nuxt configuration file for easy reuse across your application. Presets can define modifiers and animation values. ```typescript // nuxt.config.ts export default defineNuxtConfig({ modules: ['v-gsap-nuxt'], vgsap: { presets: [ { name: 'stagger-right', modifiers: 'whenVisible.stagger.once.from', value: { autoAlpha: 0, x: -32 }, }, { name: 'pop-in', modifiers: 'whenVisible.once.fromTo', value: [{ scale: 0, opacity: 0 }, { scale: 1, opacity: 1, duration: 0.5 }], }, ], }, }) ``` -------------------------------- ### Define a New Preset Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/4.presets.md Define a preset by specifying its `name`, `modifiers`, and `value`. The `modifiers` string should include the directive parts that follow `v-gsap.`, and `value` is the animation configuration object. ```typescript vgsap: { presets: [ { name: 'stagger-right', modifiers: 'whenVisible.stagger.once.from', value: { autoAlpha: 0, x: -32 } } ] } ``` -------------------------------- ### SplitText Line Animation Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/2.examples.md Animate multi-line text line by line when it enters the viewport, with a stagger effect and playing only once. ```vue
This is a multi-line text that animates line by line when it enters the viewport
``` -------------------------------- ### Viewport-Conditional Animations with `.mobile` / `.desktop` Source: https://context7.com/holux-design/v-gsap-nuxt/llms.txt Restrict animations to specific viewport widths. The default breakpoint is 768px, but it can be configured. Use `.whenVisible` to combine with visibility. ```vue ``` -------------------------------- ### Listen for Split Event Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/8.splittext.md Handle text splitting events using `addEventListener` for the 'vgsap:split' DOM event, allowing external JavaScript to react to split instances. ```javascript el.addEventListener('vgsap:split', (e) => { const { el, split } = e.detail // do something }) ``` -------------------------------- ### State-Driven Animations with `.onState` Source: https://context7.com/holux-design/v-gsap-nuxt/llms.txt Trigger animations when a data attribute changes to a specific value. Ensure the data attribute is reactive and correctly bound. ```vue ``` -------------------------------- ### Single Playback with .once Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/3.modifiers.md Ensure animations play only once when scrolling down and remain in their final state when scrolling back up. ```typescript v-gsap.whenVisible.once.to={...} ``` -------------------------------- ### Timeline with SplitText Animations Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/2.examples.md Combine multiple SplitText animations within a GSAP timeline, animating titles and subtitles sequentially. ```vue

Main Title

Subtitle that follows

``` -------------------------------- ### Parallax Effect (Faster with Custom Speed) Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/2.examples.md Apply a faster parallax effect with a custom speed multiplier using `.parallax.faster-N`. ```html
Lorem Ipsum...
``` -------------------------------- ### Hover Animations with .whileHover Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/3.modifiers.md Define animations that play when the user hovers over an element. By default, these animations reverse when the hover ends. ```typescript v-gsap.whileHover.to={...} ``` -------------------------------- ### Basic v-if Animation with GSAPTransition Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/7.v-if.md Wrap an element with v-if in GSAPTransition to apply default opacity animations when it appears or disappears. The default duration is 0.5s. ```vue
Hello World
``` -------------------------------- ### Debugging Animations with .markers Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/3.modifiers.md Add visual markers to your animations for easier debugging during development. ```typescript v-gsap.whenVisible.markers.to={...} ``` -------------------------------- ### Import and Register Vue Directive Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/1.installation/4.vue.only.md Import the `vGsapVue` directive from `v-gsap-nuxt/vue` and register it with your Vue application instance in `main.ts`. Ensure this is done after app initialization and before mounting. ```typescript import { vGsapVue } from 'v-gsap-nuxt/vue'; // const app = createApp(App); app.directive('gsap', vGsapVue()); // app.mount('#app'); ``` -------------------------------- ### Configure v-gsap-nuxt Options Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/1.installation/2.configuration.md Define custom presets, breakpoints, scrollers, and composable behavior in your nuxt.config.ts file. This allows for advanced customization of GSAP animations within your Nuxt.js project. ```typescript vgsap: { presets: [], breakpoint: 768, scroller: '', composable: true } ``` -------------------------------- ### Viewport Specific Animations Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/3.modifiers.md Control animations based on viewport size using `.mobile` or `.desktop` modifiers. The breakpoint is 768px, and window resizing is handled automatically. Both can be used on the same element. ```html
...
...
...
``` -------------------------------- ### Staggered Group Transitions Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/7.v-if.md Enable staggered animations for group transitions by setting the 'stagger' prop and adding ':data-index="idx"' to each element. A default stagger of 0.1s is applied. ```vue
  • {{ item.name }}
  • ``` -------------------------------- ### Nuxt Configuration for v-gsap-nuxt Source: https://context7.com/holux-design/v-gsap-nuxt/llms.txt Configure v-gsap-nuxt in nuxt.config.ts. Options include presets, breakpoint, scroller, and composable auto-import. ```typescript // nuxt.config.ts – manual registration export default defineNuxtConfig({ modules: ['v-gsap-nuxt'], vgsap: { presets: [], // reusable animation presets breakpoint: 768, // px breakpoint for .mobile / .desktop modifiers scroller: '', // CSS selector for a custom scroll container composable: true, // auto-import useGSAP() composable (default true) }, }) ``` -------------------------------- ### Split Text into Lines Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/8.splittext.md Use the `.lines` split type to animate text line by line. This is ideal for multi-line text where each line should animate independently. ```vue
    This is a long text that spans across multiple lines and each line animates separately from the others
    ``` -------------------------------- ### Complex SplitText Animations Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/8.splittext.md Create complex animations using SplitText by providing an array of from-to animation objects, including stagger and easing. ```vue

    Complex animation

    ``` -------------------------------- ### Split Text Animation - Lines Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/3.modifiers.md Animate multi-line text line by line using the `.splitText.lines` modifier. Ensure text is structured with line breaks for this to work effectively. ```html
    Multi-line text animates line by line
    ``` -------------------------------- ### Reversible Animations with .once.reversible Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/3.modifiers.md Allows animations to reverse when scrolling back up, enabling them to play again when scrolling down. This was the default behavior before. ```typescript v-gsap.whenVisible.once.reversible.to={...} ``` -------------------------------- ### SplitText Word Animation with Reveal Mask Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/2.examples.md Animate words with a reveal effect using a mask as they enter the viewport, with a stagger delay. ```vue

    Words appearing with reveal effect

    ``` -------------------------------- ### Fast Stagger Animation Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/8.splittext.md Achieve a rapid sequential animation by setting a small `stagger` value for character animations. ```vue
    Fast animation
    ``` -------------------------------- ### Custom Ordering of Timeline Steps Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/5.timeline.md Use the .order-N modifier to define a custom sequence for animation steps within a timeline, overriding the default HTML order. ```html

    Hello World

    They see me animating They see me animating

    Still here

    ``` -------------------------------- ### SplitText Integration in Timelines Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/8.splittext.md Incorporate SplitText animations within GSAP timelines using the .timeline and .add directives. Different split types can be used per element within the same timeline. ```vue

    Main title

    Subtitle that follows

    ``` -------------------------------- ### Using Reusable Animation Presets in Vue Components Source: https://context7.com/holux-design/v-gsap-nuxt/llms.txt Reference custom animation presets defined in `nuxt.config.ts` by their name using the `v-gsap.preset` directive. This simplifies applying common animation patterns. ```vue ``` -------------------------------- ### Adding Multiple Animation Steps to a Timeline Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/5.timeline.md Add individual animation steps to a timeline using the .add modifier on child elements. Steps are ordered by their appearance in the HTML by default. ```html

    Hello World

    Still here

    ``` -------------------------------- ### Timeline Callback for Update Events Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/5.timeline.md Attach callbacks like .onUpdate to a timeline to execute custom logic during the animation's progress. The callback receives a timeline snapshot. ```vue
    ...
    ``` -------------------------------- ### Character Masks for Reveal Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/8.splittext.md Use the `.mask.chars` modifier to create a reveal effect where each character is masked and animates into view. ```vue

    Text with character masks

    ``` -------------------------------- ### Split Text into Words Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/8.splittext.md Use the `.words` split type to animate text word by word. This is useful for sentence-level reveals. ```vue

    This sentence animates word by word

    ``` -------------------------------- ### Configure v-gsap-nuxt Directive in Vue Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/1.installation/4.vue.only.md Configure the `vGsapVue` directive with custom settings directly during initialization in `main.ts`. This allows for global configuration of presets, breakpoints, scrollers, and composable behavior within your Vue app. ```typescript app.directive('gsap', vGsapVue({ presets: [], breakpoint: 768, scroller: '', composable: true })); ``` -------------------------------- ### Line Masks with Stagger Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/8.splittext.md Combine line masking with a stagger effect to reveal each line sequentially from below. ```vue
    Each line appears from below with a very elegant mask effect
    ``` -------------------------------- ### Animating Elements with `` Component Source: https://context7.com/holux-design/v-gsap-nuxt/llms.txt Wrap elements controlled by `v-if` or `v-show` to animate their enter and exit transitions using GSAP. Supports various props for customization like `hidden`, `duration`, `ease`, and `appear`. ```vue ``` -------------------------------- ### Animate Text using Value Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/2.examples.md Provide the text content directly as a string value to the `.animateText` modifier. ```html
    ``` -------------------------------- ### Callback on Split Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/8.splittext.md Execute a function after text is split using the `splitText.onSplit` callback. Access the SplitText instance and the element for custom logic. ```vue

    Inspect words after split

    ``` -------------------------------- ### Split Text Animation - Characters Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/3.modifiers.md Animate text character by character using the `.splitText.chars` modifier. This requires GSAP SplitText functionality. ```html

    Hello World

    ``` -------------------------------- ### Infinite Animations with .infinitely Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/3.modifiers.md Set the animation timeline to repeat indefinitely by using the .infinitely modifier. ```typescript v-gsap.infinitely.to={...} ``` -------------------------------- ### Word Masks with Visibility Trigger Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/8.splittext.md Apply a mask to words and trigger the animation only when the element becomes visible in the viewport. ```vue

    Reveal effect for words

    ``` -------------------------------- ### Typewriter Effect Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/8.splittext.md Simulate a typewriter effect by animating characters with a small stagger, making them appear one after another. ```vue

    This text appears as if being typed

    ``` -------------------------------- ### Split Text into Characters Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/8.splittext.md Use the `.chars` split type to animate text letter by letter. This is the default behavior if no split type is specified. ```vue

    Character by character animation

    ``` -------------------------------- ### Split Text with Custom Options Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/3.modifiers.md Pass custom options to SplitText, such as `waitForFonts` or `onSplit`, directly within the directive value. This allows fine-grained control over font loading and callbacks. ```html

    Hello World

    ``` -------------------------------- ### Slow Stagger Animation Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/8.splittext.md Create a deliberate, slow sequential animation by setting a larger `stagger` value for character animations. ```vue
    Slow animation
    ``` -------------------------------- ### Group Transitions with v-for and v-if Source: https://github.com/holux-design/v-gsap-nuxt/blob/main/docs/content/2.usage/7.v-if.md Use the 'group' flag on GSAPTransition to animate multiple elements, typically used with v-for and v-if. This leverages Vue's TransitionGroup component. ```vue
  • {{ item.name }}
  • ```