{
  "measured": "2026-09-28",
  "astro": "7.3.2",
  "toolchain": {
    "astro": "7.3.2",
    "vite": "8.3.1",
    "lightningcss": "1.33.0",
    "npm": "11.19.0",
    "node": "v24.20.0"
  },
  "browsers": {
    "chromium": "153.0.8010.12",
    "firefox": "155.0",
    "webkit": "26.6"
  },
  "method": [
    "We built one Astro 7.3.2 project per setup, with static output, and installed each with npm 11.19.0 and `--ignore-scripts --legacy-peer-deps`.",
    "Moonarc 0.1.0 was packed from its repository, because it is not on npm yet.",
    "A library that needs a script gets it in a component every page includes, the way a layout holds a site-wide script.",
    "Bytes count every script and stylesheet the built page loads. Each file is gzipped on its own; the inline scripts are gzipped together, in page order, as they travel inside the HTML. 1 kB gzip is 1024 B gzip.",
    "A browser at 1280 × 800 waits 3 s after the page loads or swaps, longer than any fallback timer here. It then wheels down in 120 px steps until the heading is 40 % down the viewport, and reads it for 2 s.",
    "Each read takes the heading's effective opacity and its vertical offset.",
    "We read each setup on a page without ClientRouter, on a first page with it and after two navigations, under reduced motion, and with JavaScript off."
  ],
  "libraries": [
    {
      "id": "moonarc",
      "name": "Moonarc",
      "package": "@moonarc/core",
      "version": "0.1.0",
      "released": null,
      "published": false,
      "sources": [
        "packages/core/src/components/Reveal.astro",
        "packages/core/src/lib/runtime.ts",
        "packages/core/src/index.js",
        "packages/core/src/styles/base.css"
      ],
      "sourceHash": "0683df8dd81e2311",
      "peerDependencies": {
        "astro": ">=5",
        "gsap": ">=3.12",
        "lenis": ">=1.1"
      },
      "measured": "2026-09-28",
      "browsers": {
        "chromium": "153.0.8010.12",
        "firefox": "155.0",
        "webkit": "26.6"
      },
      "toolchain": {
        "astro": "7.3.2",
        "vite": "8.3.1",
        "lightningcss": "1.33.0",
        "npm": "11.19.0",
        "node": "v24.20.0"
      },
      "one": {
        "js": {
          "raw": 2874,
          "gzip": 1275
        },
        "css": {
          "raw": 6796,
          "gzip": 1735
        }
      },
      "ten": {
        "js": {
          "raw": 2874,
          "gzip": 1275
        },
        "css": {
          "raw": 6796,
          "gzip": 1735
        }
      },
      "withoutRouter": {
        "chromium": "moves",
        "firefox": "moves",
        "webkit": "moves"
      },
      "first": {
        "chromium": "moves",
        "firefox": "moves",
        "webkit": "moves"
      },
      "afterNavigation": {
        "chromium": "moves",
        "firefox": "moves",
        "webkit": "moves"
      },
      "afterSecondNavigation": {
        "chromium": "moves",
        "firefox": "moves",
        "webkit": "moves"
      },
      "reducedMotion": {
        "chromium": "fades",
        "firefox": "fades",
        "webkit": "fades"
      },
      "noJavaScript": {
        "chromium": "visible",
        "firefox": "visible",
        "webkit": "visible"
      },
      "setup": [
        {
          "file": "astro.config.mjs",
          "lang": "js",
          "code": "import moonarc from 'moonarc';\nexport default { integrations: [moonarc()] };"
        },
        {
          "file": "src/pages/index.astro",
          "lang": "astro",
          "code": "---\nimport Reveal from '@moonarc/core/Reveal';\n---\n<Reveal><h2>Heading</h2><p>…</p></Reveal>"
        }
      ]
    },
    {
      "id": "astroanimate",
      "name": "AstroAnimate",
      "package": "@astroanimate/core",
      "version": "0.1.2",
      "released": "2026-05-23",
      "peerDependencies": {
        "astro": "^4.0.0 || ^5.0.0 || ^6.0.0"
      },
      "measured": "2026-09-28",
      "browsers": {
        "chromium": "153.0.8010.12",
        "firefox": "155.0",
        "webkit": "26.6"
      },
      "toolchain": {
        "astro": "7.3.2",
        "vite": "8.3.1",
        "lightningcss": "1.33.0",
        "npm": "11.19.0",
        "node": "v24.20.0"
      },
      "one": {
        "js": {
          "raw": 3996,
          "gzip": 1570
        },
        "css": {
          "raw": 1434,
          "gzip": 343
        }
      },
      "ten": {
        "js": {
          "raw": 39960,
          "gzip": 1920
        },
        "css": {
          "raw": 1434,
          "gzip": 343
        }
      },
      "withoutRouter": {
        "chromium": "moves",
        "firefox": "moves",
        "webkit": "moves"
      },
      "first": {
        "chromium": "moves",
        "firefox": "moves",
        "webkit": "moves"
      },
      "afterNavigation": {
        "chromium": "appears",
        "firefox": "appears",
        "webkit": "appears"
      },
      "afterSecondNavigation": {
        "chromium": "appears",
        "firefox": "appears",
        "webkit": "appears"
      },
      "reducedMotion": {
        "chromium": "appears",
        "firefox": "appears",
        "webkit": "appears"
      },
      "noJavaScript": {
        "chromium": "visible",
        "firefox": "visible",
        "webkit": "visible"
      },
      "npmInstall": {
        "command": "npm install astro@7.3.2 @astroanimate/core@0.1.2",
        "result": "ERESOLVE"
      },
      "setup": [
        {
          "file": "src/pages/index.astro",
          "lang": "astro",
          "code": "---\nimport FadeInText from '@astroanimate/core/FadeInText';\n---\n<FadeInText enhance><h2>Heading</h2><p>…</p></FadeInText>"
        }
      ]
    },
    {
      "id": "astro-reveal",
      "name": "astro-reveal (default mode)",
      "package": "astro-reveal",
      "version": "0.3.1",
      "released": "2026-07-01",
      "peerDependencies": {
        "astro": ">=4.0.0"
      },
      "measured": "2026-09-28",
      "browsers": {
        "chromium": "153.0.8010.12",
        "firefox": "155.0",
        "webkit": "26.6"
      },
      "toolchain": {
        "astro": "7.3.2",
        "vite": "8.3.1",
        "lightningcss": "1.33.0",
        "npm": "11.19.0",
        "node": "v24.20.0"
      },
      "one": {
        "js": {
          "raw": 0,
          "gzip": 0
        },
        "css": {
          "raw": 3323,
          "gzip": 766
        }
      },
      "ten": {
        "js": {
          "raw": 0,
          "gzip": 0
        },
        "css": {
          "raw": 3323,
          "gzip": 766
        }
      },
      "evidence": ":where(html:not(.reveal-js)) [data-reveal]{animation:none;animation-range:entry calc(15% + var(--reveal-index) * 4%) cover calc(50% + var(--reveal-index) * 4%)}",
      "withoutRouter": {
        "chromium": "appears",
        "firefox": "appears",
        "webkit": "appears"
      },
      "first": {
        "chromium": "appears",
        "firefox": "appears",
        "webkit": "appears"
      },
      "afterNavigation": {
        "chromium": "appears",
        "firefox": "appears",
        "webkit": "appears"
      },
      "afterSecondNavigation": {
        "chromium": "appears",
        "firefox": "appears",
        "webkit": "appears"
      },
      "reducedMotion": {
        "chromium": "appears",
        "firefox": "appears",
        "webkit": "appears"
      },
      "noJavaScript": {
        "chromium": "visible",
        "firefox": "visible",
        "webkit": "visible"
      },
      "setup": [
        {
          "file": "astro.config.mjs",
          "lang": "js",
          "code": "import reveal from 'astro-reveal';\nexport default { integrations: [reveal()] };"
        },
        {
          "file": "src/pages/index.astro",
          "lang": "astro",
          "code": "---\nimport Reveal from 'astro-reveal/Reveal.astro';\n---\n<Reveal animation=\"up\"><h2>Heading</h2><p>…</p></Reveal>"
        }
      ]
    },
    {
      "id": "astro-reveal-observer",
      "name": "astro-reveal (observer mode)",
      "package": "astro-reveal",
      "version": "0.3.1",
      "released": "2026-07-01",
      "peerDependencies": {
        "astro": ">=4.0.0"
      },
      "measured": "2026-09-28",
      "browsers": {
        "chromium": "153.0.8010.12",
        "firefox": "155.0",
        "webkit": "26.6"
      },
      "toolchain": {
        "astro": "7.3.2",
        "vite": "8.3.1",
        "lightningcss": "1.33.0",
        "npm": "11.19.0",
        "node": "v24.20.0"
      },
      "one": {
        "js": {
          "raw": 1551,
          "gzip": 880
        },
        "css": {
          "raw": 3323,
          "gzip": 766
        }
      },
      "ten": {
        "js": {
          "raw": 1551,
          "gzip": 880
        },
        "css": {
          "raw": 3323,
          "gzip": 766
        }
      },
      "withoutRouter": {
        "chromium": "moves",
        "firefox": "moves",
        "webkit": "moves"
      },
      "first": {
        "chromium": "hidden",
        "firefox": "hidden",
        "webkit": "hidden"
      },
      "afterNavigation": {
        "chromium": "appears",
        "firefox": "appears",
        "webkit": "appears"
      },
      "afterSecondNavigation": {
        "chromium": "appears",
        "firefox": "appears",
        "webkit": "appears"
      },
      "reducedMotion": {
        "chromium": "appears",
        "firefox": "appears",
        "webkit": "appears"
      },
      "noJavaScript": {
        "chromium": "visible",
        "firefox": "visible",
        "webkit": "visible"
      },
      "setup": [
        {
          "file": "astro.config.mjs",
          "lang": "js",
          "code": "import reveal from 'astro-reveal';\nexport default { integrations: [reveal({ mode: 'observer' })] };"
        },
        {
          "file": "src/pages/index.astro",
          "lang": "astro",
          "code": "---\nimport Reveal from 'astro-reveal/Reveal.astro';\n---\n<Reveal animation=\"up\"><h2>Heading</h2><p>…</p></Reveal>"
        }
      ]
    },
    {
      "id": "aos",
      "name": "AOS",
      "package": "aos",
      "version": "2.3.4",
      "released": "2018-10-03",
      "peerDependencies": {},
      "measured": "2026-09-28",
      "browsers": {
        "chromium": "153.0.8010.12",
        "firefox": "155.0",
        "webkit": "26.6"
      },
      "toolchain": {
        "astro": "7.3.2",
        "vite": "8.3.1",
        "lightningcss": "1.33.0",
        "npm": "11.19.0",
        "node": "v24.20.0"
      },
      "one": {
        "js": {
          "raw": 14872,
          "gzip": 4880
        },
        "css": {
          "raw": 25933,
          "gzip": 2221
        }
      },
      "ten": {
        "js": {
          "raw": 14872,
          "gzip": 4880
        },
        "css": {
          "raw": 25933,
          "gzip": 2221
        }
      },
      "withoutRouter": {
        "chromium": "moves",
        "firefox": "moves",
        "webkit": "moves"
      },
      "first": {
        "chromium": "moves",
        "firefox": "moves",
        "webkit": "moves"
      },
      "afterNavigation": {
        "chromium": "appears",
        "firefox": "appears",
        "webkit": "appears"
      },
      "afterSecondNavigation": {
        "chromium": "appears",
        "firefox": "appears",
        "webkit": "appears"
      },
      "reducedMotion": {
        "chromium": "moves",
        "firefox": "moves",
        "webkit": "moves"
      },
      "noJavaScript": {
        "chromium": "hidden",
        "firefox": "hidden",
        "webkit": "hidden"
      },
      "setup": [
        {
          "file": "src/components/Setup.astro",
          "lang": "astro",
          "code": "<script>\n  import AOS from 'aos';\n  import 'aos/dist/aos.css';\n  AOS.init();\n</script>"
        },
        {
          "file": "src/pages/index.astro",
          "lang": "astro",
          "code": "---\nimport Setup from '../components/Setup.astro';\n---\n<div data-aos=\"fade-up\"><h2>Heading</h2><p>…</p></div>\n<Setup />"
        }
      ]
    },
    {
      "id": "gsap",
      "name": "GSAP with ScrollTrigger",
      "package": "gsap",
      "version": "3.15.0",
      "released": "2026-04-13",
      "peerDependencies": {},
      "measured": "2026-09-28",
      "browsers": {
        "chromium": "153.0.8010.12",
        "firefox": "155.0",
        "webkit": "26.6"
      },
      "toolchain": {
        "astro": "7.3.2",
        "vite": "8.3.1",
        "lightningcss": "1.33.0",
        "npm": "11.19.0",
        "node": "v24.20.0"
      },
      "one": {
        "js": {
          "raw": 112952,
          "gzip": 44002
        },
        "css": {
          "raw": 0,
          "gzip": 0
        }
      },
      "ten": {
        "js": {
          "raw": 112952,
          "gzip": 44002
        },
        "css": {
          "raw": 0,
          "gzip": 0
        }
      },
      "withoutRouter": {
        "chromium": "moves",
        "firefox": "moves",
        "webkit": "moves"
      },
      "first": {
        "chromium": "moves",
        "firefox": "moves",
        "webkit": "moves"
      },
      "afterNavigation": {
        "chromium": "appears",
        "firefox": "appears",
        "webkit": "appears"
      },
      "afterSecondNavigation": {
        "chromium": "appears",
        "firefox": "appears",
        "webkit": "appears"
      },
      "reducedMotion": {
        "chromium": "moves",
        "firefox": "moves",
        "webkit": "moves"
      },
      "noJavaScript": {
        "chromium": "visible",
        "firefox": "visible",
        "webkit": "visible"
      },
      "setup": [
        {
          "file": "src/components/Setup.astro",
          "lang": "astro",
          "code": "<script>\n  import { gsap } from 'gsap';\n  import { ScrollTrigger } from 'gsap/ScrollTrigger';\n  gsap.registerPlugin(ScrollTrigger);\n  gsap.utils.toArray('.reveal').forEach((el) => {\n    gsap.from(el, { opacity: 0, y: 24, duration: 0.6, scrollTrigger: { trigger: el, start: 'top 85%' } });\n  });\n</script>"
        },
        {
          "file": "src/pages/index.astro",
          "lang": "astro",
          "code": "---\nimport Setup from '../components/Setup.astro';\n---\n<div class=\"reveal\"><h2>Heading</h2><p>…</p></div>\n<Setup />"
        }
      ]
    },
    {
      "id": "motion",
      "name": "Motion",
      "package": "motion",
      "version": "13.4.4",
      "released": "2026-09-25",
      "peerDependencies": {
        "react": "^18.0.0 || ^19.0.0",
        "react-dom": "^18.0.0 || ^19.0.0"
      },
      "measured": "2026-09-28",
      "browsers": {
        "chromium": "153.0.8010.12",
        "firefox": "155.0",
        "webkit": "26.6"
      },
      "toolchain": {
        "astro": "7.3.2",
        "vite": "8.3.1",
        "lightningcss": "1.33.0",
        "npm": "11.19.0",
        "node": "v24.20.0"
      },
      "one": {
        "js": {
          "raw": 53444,
          "gzip": 19165
        },
        "css": {
          "raw": 46,
          "gzip": 62
        }
      },
      "ten": {
        "js": {
          "raw": 53444,
          "gzip": 19165
        },
        "css": {
          "raw": 46,
          "gzip": 62
        }
      },
      "withoutRouter": {
        "chromium": "moves",
        "firefox": "moves",
        "webkit": "moves"
      },
      "first": {
        "chromium": "moves",
        "firefox": "moves",
        "webkit": "moves"
      },
      "afterNavigation": {
        "chromium": "hidden",
        "firefox": "hidden",
        "webkit": "hidden"
      },
      "afterSecondNavigation": {
        "chromium": "hidden",
        "firefox": "hidden",
        "webkit": "hidden"
      },
      "reducedMotion": {
        "chromium": "moves",
        "firefox": "moves",
        "webkit": "moves"
      },
      "noJavaScript": {
        "chromium": "hidden",
        "firefox": "hidden",
        "webkit": "hidden"
      },
      "setup": [
        {
          "file": "src/components/Setup.astro",
          "lang": "astro",
          "code": "<style is:global>\n  .reveal { opacity: 0; transform: translateY(24px); }\n</style>\n<script>\n  import { animate, inView } from 'motion';\n  inView('.reveal', (el) => {\n    animate(el, { opacity: 1, transform: 'none' }, { duration: 0.6 });\n  });\n</script>"
        },
        {
          "file": "src/pages/index.astro",
          "lang": "astro",
          "code": "---\nimport Setup from '../components/Setup.astro';\n---\n<div class=\"reveal\"><h2>Heading</h2><p>…</p></div>\n<Setup />"
        }
      ]
    },
    {
      "id": "motion-mini",
      "name": "Motion (mini animate)",
      "package": "motion",
      "version": "13.4.4",
      "released": "2026-09-25",
      "peerDependencies": {
        "react": "^18.0.0 || ^19.0.0",
        "react-dom": "^18.0.0 || ^19.0.0"
      },
      "measured": "2026-09-28",
      "browsers": {
        "chromium": "153.0.8010.12",
        "firefox": "155.0",
        "webkit": "26.6"
      },
      "toolchain": {
        "astro": "7.3.2",
        "vite": "8.3.1",
        "lightningcss": "1.33.0",
        "npm": "11.19.0",
        "node": "v24.20.0"
      },
      "one": {
        "js": {
          "raw": 9840,
          "gzip": 3882
        },
        "css": {
          "raw": 46,
          "gzip": 62
        }
      },
      "ten": {
        "js": {
          "raw": 9840,
          "gzip": 3882
        },
        "css": {
          "raw": 46,
          "gzip": 62
        }
      },
      "withoutRouter": {
        "chromium": "moves",
        "firefox": "moves",
        "webkit": "moves"
      },
      "first": {
        "chromium": "moves",
        "firefox": "moves",
        "webkit": "moves"
      },
      "afterNavigation": {
        "chromium": "hidden",
        "firefox": "hidden",
        "webkit": "hidden"
      },
      "afterSecondNavigation": {
        "chromium": "hidden",
        "firefox": "hidden",
        "webkit": "hidden"
      },
      "reducedMotion": {
        "chromium": "moves",
        "firefox": "moves",
        "webkit": "moves"
      },
      "noJavaScript": {
        "chromium": "hidden",
        "firefox": "hidden",
        "webkit": "hidden"
      },
      "setup": [
        {
          "file": "src/components/Setup.astro",
          "lang": "astro",
          "code": "<style is:global>\n  .reveal { opacity: 0; transform: translateY(24px); }\n</style>\n<script>\n  import { inView } from 'motion';\n  import { animate } from 'motion/mini';\n  inView('.reveal', (el) => {\n    animate(el, { opacity: 1, transform: 'none' }, { duration: 0.6 });\n  });\n</script>"
        },
        {
          "file": "src/pages/index.astro",
          "lang": "astro",
          "code": "---\nimport Setup from '../components/Setup.astro';\n---\n<div class=\"reveal\"><h2>Heading</h2><p>…</p></div>\n<Setup />"
        }
      ]
    },
    {
      "id": "react-motion",
      "name": "Motion for React in a React island",
      "package": "motion",
      "version": "13.4.4",
      "released": "2026-09-25",
      "peerDependencies": {
        "react": "^18.0.0 || ^19.0.0",
        "react-dom": "^18.0.0 || ^19.0.0"
      },
      "measured": "2026-09-28",
      "browsers": {
        "chromium": "153.0.8010.12",
        "firefox": "155.0",
        "webkit": "26.6"
      },
      "toolchain": {
        "astro": "7.3.2",
        "vite": "8.3.1",
        "lightningcss": "1.33.0",
        "npm": "11.19.0",
        "node": "v24.20.0"
      },
      "one": {
        "js": {
          "raw": 349939,
          "gzip": 110816
        },
        "css": {
          "raw": 59,
          "gzip": 66
        }
      },
      "ten": {
        "js": {
          "raw": 349939,
          "gzip": 110816
        },
        "css": {
          "raw": 59,
          "gzip": 66
        }
      },
      "withoutRouter": {
        "chromium": "moves",
        "firefox": "moves",
        "webkit": "moves"
      },
      "first": {
        "chromium": "moves",
        "firefox": "moves",
        "webkit": "moves"
      },
      "afterNavigation": {
        "chromium": "moves",
        "firefox": "moves",
        "webkit": "moves"
      },
      "afterSecondNavigation": {
        "chromium": "moves",
        "firefox": "moves",
        "webkit": "moves"
      },
      "reducedMotion": {
        "chromium": "moves",
        "firefox": "moves",
        "webkit": "moves"
      },
      "noJavaScript": {
        "chromium": "hidden",
        "firefox": "hidden",
        "webkit": "hidden"
      },
      "setup": [
        {
          "file": "astro.config.mjs",
          "lang": "js",
          "code": "import react from '@astrojs/react';\nexport default { integrations: [react()] };"
        },
        {
          "file": "src/components/RevealIsland.jsx",
          "lang": "jsx",
          "code": "import { motion } from 'motion/react';\n\nexport default function RevealIsland({ children }) {\n  return (\n    <motion.div initial={{ opacity: 0, y: 24 }} whileInView={{ opacity: 1, y: 0 }} viewport={{ once: true }} transition={{ duration: 0.6 }}>\n      {children}\n    </motion.div>\n  );\n}"
        },
        {
          "file": "src/pages/index.astro",
          "lang": "astro",
          "code": "---\nimport RevealIsland from '../components/RevealIsland.jsx';\n---\n<RevealIsland client:load><h2>Heading</h2><p>…</p></RevealIsland>"
        }
      ]
    },
    {
      "id": "astro-reveal-esbuild",
      "variantOf": "astro-reveal",
      "name": "astro-reveal (default mode) with esbuild minifying the CSS",
      "package": "astro-reveal",
      "version": "0.3.1",
      "released": "2026-07-01",
      "peerDependencies": {
        "astro": ">=4.0.0"
      },
      "measured": "2026-09-28",
      "browsers": {
        "chromium": "153.0.8010.12",
        "firefox": "155.0",
        "webkit": "26.6"
      },
      "toolchain": {
        "astro": "7.3.2",
        "vite": "8.3.1",
        "lightningcss": "1.33.0",
        "npm": "11.19.0",
        "node": "v24.20.0"
      },
      "one": {
        "js": {
          "raw": 0,
          "gzip": 0
        },
        "css": {
          "raw": 3426,
          "gzip": 776
        }
      },
      "ten": {
        "js": {
          "raw": 0,
          "gzip": 0
        },
        "css": {
          "raw": 3426,
          "gzip": 776
        }
      },
      "evidence": ":where(html:not(.reveal-js)) [data-reveal]{animation:linear both;animation-timeline:view();animation-range:entry calc(15% + var(--reveal-index) * 4%) cover calc(50% + var(--reveal-index) * 4%)}",
      "withoutRouter": {
        "chromium": "moves",
        "firefox": "appears",
        "webkit": "moves"
      },
      "first": {
        "chromium": "moves",
        "firefox": "appears",
        "webkit": "moves"
      },
      "afterNavigation": {
        "chromium": "moves",
        "firefox": "appears",
        "webkit": "moves"
      },
      "afterSecondNavigation": {
        "chromium": "moves",
        "firefox": "appears",
        "webkit": "moves"
      },
      "reducedMotion": {
        "chromium": "appears",
        "firefox": "appears",
        "webkit": "appears"
      },
      "noJavaScript": {
        "chromium": "partial",
        "firefox": "visible",
        "webkit": "partial"
      },
      "setup": [
        {
          "file": "astro.config.mjs",
          "lang": "js",
          "code": "import reveal from 'astro-reveal';\nexport default { integrations: [reveal()], vite: { build: { cssMinify: 'esbuild' } } };"
        },
        {
          "file": "src/pages/index.astro",
          "lang": "astro",
          "code": "---\nimport Reveal from 'astro-reveal/Reveal.astro';\n---\n<Reveal animation=\"up\"><h2>Heading</h2><p>…</p></Reveal>"
        }
      ]
    },
    {
      "id": "aos-body-attrs",
      "variantOf": "aos",
      "name": "AOS with its body attributes in the layout",
      "package": "aos",
      "version": "2.3.4",
      "released": "2018-10-03",
      "peerDependencies": {},
      "measured": "2026-09-28",
      "browsers": {
        "chromium": "153.0.8010.12",
        "firefox": "155.0",
        "webkit": "26.6"
      },
      "toolchain": {
        "astro": "7.3.2",
        "vite": "8.3.1",
        "lightningcss": "1.33.0",
        "npm": "11.19.0",
        "node": "v24.20.0"
      },
      "one": {
        "js": {
          "raw": 14872,
          "gzip": 4880
        },
        "css": {
          "raw": 25933,
          "gzip": 2221
        }
      },
      "ten": {
        "js": {
          "raw": 14872,
          "gzip": 4880
        },
        "css": {
          "raw": 25933,
          "gzip": 2221
        }
      },
      "withoutRouter": {
        "chromium": "moves",
        "firefox": "moves",
        "webkit": "moves"
      },
      "first": {
        "chromium": "moves",
        "firefox": "moves",
        "webkit": "moves"
      },
      "afterNavigation": {
        "chromium": "moves",
        "firefox": "moves",
        "webkit": "moves"
      },
      "afterSecondNavigation": {
        "chromium": "moves",
        "firefox": "moves",
        "webkit": "moves"
      },
      "reducedMotion": {
        "chromium": "moves",
        "firefox": "moves",
        "webkit": "moves"
      },
      "noJavaScript": {
        "chromium": "hidden",
        "firefox": "hidden",
        "webkit": "hidden"
      },
      "setup": [
        {
          "file": "src/components/Setup.astro",
          "lang": "astro",
          "code": "<script>\n  import AOS from 'aos';\n  import 'aos/dist/aos.css';\n  AOS.init();\n</script>"
        },
        {
          "file": "src/pages/index.astro",
          "lang": "astro",
          "code": "---\nimport Setup from '../components/Setup.astro';\n---\n<body data-aos-easing=\"ease\" data-aos-duration=\"400\" data-aos-delay=\"0\">\n<div data-aos=\"fade-up\"><h2>Heading</h2><p>…</p></div>\n<Setup />"
        }
      ]
    },
    {
      "id": "aos-per-page",
      "variantOf": "aos",
      "perPage": true,
      "name": "AOS set up per page",
      "package": "aos",
      "version": "2.3.4",
      "released": "2018-10-03",
      "peerDependencies": {},
      "measured": "2026-09-28",
      "browsers": {
        "chromium": "153.0.8010.12",
        "firefox": "155.0",
        "webkit": "26.6"
      },
      "toolchain": {
        "astro": "7.3.2",
        "vite": "8.3.1",
        "lightningcss": "1.33.0",
        "npm": "11.19.0",
        "node": "v24.20.0"
      },
      "one": {
        "js": {
          "raw": 14925,
          "gzip": 4900
        },
        "css": {
          "raw": 25933,
          "gzip": 2221
        }
      },
      "ten": {
        "js": {
          "raw": 14925,
          "gzip": 4900
        },
        "css": {
          "raw": 25933,
          "gzip": 2221
        }
      },
      "withoutRouter": null,
      "first": {
        "chromium": "moves",
        "firefox": "moves",
        "webkit": "moves"
      },
      "afterNavigation": {
        "chromium": "moves",
        "firefox": "moves",
        "webkit": "moves"
      },
      "afterSecondNavigation": {
        "chromium": "moves",
        "firefox": "moves",
        "webkit": "moves"
      },
      "reducedMotion": null,
      "noJavaScript": null,
      "setup": [
        {
          "file": "src/components/Setup.astro",
          "lang": "astro",
          "code": "<script>\n  import AOS from 'aos';\n  import 'aos/dist/aos.css';\n  document.addEventListener('astro:page-load', () => AOS.init());\n</script>"
        },
        {
          "file": "src/pages/index.astro",
          "lang": "astro",
          "code": "---\nimport Setup from '../components/Setup.astro';\n---\n<div data-aos=\"fade-up\"><h2>Heading</h2><p>…</p></div>\n<Setup />"
        }
      ]
    },
    {
      "id": "gsap-per-page",
      "variantOf": "gsap",
      "perPage": true,
      "name": "GSAP set up per page",
      "package": "gsap",
      "version": "3.15.0",
      "released": "2026-04-13",
      "peerDependencies": {},
      "measured": "2026-09-28",
      "browsers": {
        "chromium": "153.0.8010.12",
        "firefox": "155.0",
        "webkit": "26.6"
      },
      "toolchain": {
        "astro": "7.3.2",
        "vite": "8.3.1",
        "lightningcss": "1.33.0",
        "npm": "11.19.0",
        "node": "v24.20.0"
      },
      "one": {
        "js": {
          "raw": 113095,
          "gzip": 44053
        },
        "css": {
          "raw": 0,
          "gzip": 0
        }
      },
      "ten": {
        "js": {
          "raw": 113095,
          "gzip": 44053
        },
        "css": {
          "raw": 0,
          "gzip": 0
        }
      },
      "withoutRouter": null,
      "first": {
        "chromium": "moves",
        "firefox": "moves",
        "webkit": "moves"
      },
      "afterNavigation": {
        "chromium": "moves",
        "firefox": "moves",
        "webkit": "moves"
      },
      "afterSecondNavigation": {
        "chromium": "moves",
        "firefox": "moves",
        "webkit": "moves"
      },
      "reducedMotion": null,
      "noJavaScript": null,
      "setup": [
        {
          "file": "src/components/Setup.astro",
          "lang": "astro",
          "code": "<script>\n  import { gsap } from 'gsap';\n  import { ScrollTrigger } from 'gsap/ScrollTrigger';\n  gsap.registerPlugin(ScrollTrigger);\n  let ctx;\n  document.addEventListener('astro:page-load', () => {\n    ctx = gsap.context(() => {\n  gsap.utils.toArray('.reveal').forEach((el) => {\n    gsap.from(el, { opacity: 0, y: 24, duration: 0.6, scrollTrigger: { trigger: el, start: 'top 85%' } });\n  });\n    });\n  });\n  document.addEventListener('astro:before-swap', () => ctx?.revert());\n</script>"
        },
        {
          "file": "src/pages/index.astro",
          "lang": "astro",
          "code": "---\nimport Setup from '../components/Setup.astro';\n---\n<div class=\"reveal\"><h2>Heading</h2><p>…</p></div>\n<Setup />"
        }
      ]
    },
    {
      "id": "motion-per-page",
      "variantOf": "motion",
      "perPage": true,
      "name": "Motion set up per page",
      "package": "motion",
      "version": "13.4.4",
      "released": "2026-09-25",
      "peerDependencies": {
        "react": "^18.0.0 || ^19.0.0",
        "react-dom": "^18.0.0 || ^19.0.0"
      },
      "measured": "2026-09-28",
      "browsers": {
        "chromium": "153.0.8010.12",
        "firefox": "155.0",
        "webkit": "26.6"
      },
      "toolchain": {
        "astro": "7.3.2",
        "vite": "8.3.1",
        "lightningcss": "1.33.0",
        "npm": "11.19.0",
        "node": "v24.20.0"
      },
      "one": {
        "js": {
          "raw": 53563,
          "gzip": 19216
        },
        "css": {
          "raw": 46,
          "gzip": 62
        }
      },
      "ten": {
        "js": {
          "raw": 53563,
          "gzip": 19216
        },
        "css": {
          "raw": 46,
          "gzip": 62
        }
      },
      "withoutRouter": null,
      "first": {
        "chromium": "moves",
        "firefox": "moves",
        "webkit": "moves"
      },
      "afterNavigation": {
        "chromium": "moves",
        "firefox": "moves",
        "webkit": "moves"
      },
      "afterSecondNavigation": {
        "chromium": "moves",
        "firefox": "moves",
        "webkit": "moves"
      },
      "reducedMotion": null,
      "noJavaScript": null,
      "setup": [
        {
          "file": "src/components/Setup.astro",
          "lang": "astro",
          "code": "<style is:global>\n  .reveal { opacity: 0; transform: translateY(24px); }\n</style>\n<script>\n  import { animate, inView } from 'motion';\n  let stop;\n  document.addEventListener('astro:page-load', () => {\n    stop = inView('.reveal', (el) => {\n    animate(el, { opacity: 1, transform: 'none' }, { duration: 0.6 });\n  });\n  });\n  document.addEventListener('astro:before-swap', () => stop?.());\n</script>"
        },
        {
          "file": "src/pages/index.astro",
          "lang": "astro",
          "code": "---\nimport Setup from '../components/Setup.astro';\n---\n<div class=\"reveal\"><h2>Heading</h2><p>…</p></div>\n<Setup />"
        }
      ]
    }
  ]
}
