{
  "name": "@dong-gri/kineto",
  "version": "0.8.105",
  "description": "Interactive web motion effects with live controls and copy-ready code — 52 modules for JavaScript, React, Vue, and jQuery. Zero required dependencies.",
  "type": "module",
  "keywords": [
    "web-animation",
    "ui-animation",
    "motion-effects",
    "javascript-animation",
    "react-animation",
    "vue-animation",
    "jquery-animation",
    "scroll-animation",
    "text-animation",
    "image-effects",
    "lightbox",
    "skeleton-loader",
    "cursor",
    "marquee",
    "counter",
    "parallax",
    "interactive-playground",
    "animation-library",
    "vanilla-js",
    "frontend"
  ],
  "homepage": "https://kineto.dongri.me",
  "repository": {
    "type": "git",
    "url": "git+https://github.com/catgarret/kineto.git"
  },
  "bugs": {
    "url": "https://github.com/catgarret/kineto/issues"
  },
  "publishConfig": {
    "access": "public"
  },
  "main": "./dist/kineto.umd.cjs",
  "module": "./dist/kineto.min.js",
  "browser": "./dist/kineto.umd.cjs",
  "types": "./types/index.d.ts",
  "unpkg": "./dist/kineto.umd.min.js",
  "jsdelivr": "./dist/kineto.umd.min.js",
  "exports": {
    ".": {
      "types": "./types/index.d.ts",
      "import": "./dist/kineto.min.js",
      "require": "./dist/kineto.umd.cjs",
      "default": "./dist/kineto.min.js"
    },
    "./min": "./dist/kineto.min.js",
    "./umd": "./dist/kineto.umd.min.js",
    "./core": {
      "types": "./types/core.d.ts",
      "default": "./dist/modular/core.js"
    },
    "./states": {
      "types": "./types/states.d.ts",
      "default": "./dist/modular/states.js"
    },
    "./presence": {
      "types": "./types/presence.d.ts",
      "default": "./dist/modular/presence.js"
    },
    "./modules/*": {
      "types": "./types/module.d.ts",
      "default": "./dist/modular/modules/*.js"
    },
    "./react": {
      "types": "./types/react.d.ts",
      "default": "./src/adapters/react.js"
    },
    "./vue": {
      "types": "./types/vue.d.ts",
      "default": "./src/adapters/vue.js"
    },
    "./jquery": {
      "types": "./types/jquery.d.ts",
      "default": "./src/adapters/jquery.js"
    },
    "./style.css": "./dist/kineto.min.css",
    "./package.json": "./package.json"
  },
  "files": [
    "dist/kineto.min.js",
    "dist/kineto.umd.cjs",
    "dist/kineto.umd.min.js",
    "dist/kineto.min.css",
    "dist/modular",
    "src/adapters",
    "types",
    "assets/logo.svg"
  ],
  "sideEffects": [
    "**/*.css"
  ],
  "scripts": {
    "dev": "vite",
    "lint": "eslint src tests/*.js tests/*.mjs demo/*.js",
    "build:esm": "vite build",
    "build:umd": "vite build --config vite.config.umd.js && node scripts/copy-umd.mjs",
    "build:min": "node scripts/build-min.mjs",
    "build:modular": "node scripts/build-modular.mjs",
    "build": "npm run build:esm && npm run build:umd && npm run build:min && npm run build:modular && npm run derive:variant-options && npm run sync:options && npm run demo:cdn",
    "demo:cdn": "node scripts/build-demo-cdn.mjs",
    "purge": "node scripts/purge-cdn.mjs",
    "test:contract": "node tests/feature-contract.mjs",
    "test:browser": "node tests/browser/b1_version.mjs && node tests/browser/b2_navigation.mjs && node tests/retry-browser-test.mjs tests/browser/measure.mjs && node tests/browser/loader-core.mjs && node tests/browser/loading-indicator.mjs && node tests/browser/feedback-components.mjs && node tests/browser/states.mjs && node tests/browser/presence.mjs && node tests/browser/demo-polish.mjs && node tests/browser/nav-parity.mjs && node tests/browser/drawer-layout.mjs",
    "test:browser:cross": "node tests/browser-smoke.mjs",
    "test:package": "node tests/package-check.mjs",
    "test:types": "tsc --noEmit --strict --module NodeNext --moduleResolution NodeNext --target ES2022 --lib ES2022,DOM,DOM.Iterable tests/types.ts",
    "test": "npm run test:utils && npm run test:contract && npm run test:requirements && npm run test:docs && npm run test:docs-navigation && npm run test:roadmap-readiness && npm run test:demo && npm run test:package",
    "test:parity": "node tests/nav-parity.mjs",
    "test:structure": "node tests/demo-structure.mjs",
    "test:copy": "node tests/copy-i18n.mjs",
    "test:lazy": "node tests/playground-lazy.mjs",
    "test:perf": "node tests/perf-hygiene.mjs",
    "test:deps": "node tests/deps-boundary.mjs",
    "test:engine": "node tests/engine-loader.mjs",
    "test:sequence-sources": "node tests/scroll-sequence-sources.mjs",
    "test:regressions": "node tests/motion-regressions.mjs",
    "test:size": "node scripts/bundle-size.mjs --check",
    "size": "node scripts/bundle-size.mjs",
    "size:md": "node scripts/bundle-size.mjs --md",
    "test:node": "npm run test:utils && npm run test:diagnostics && npm run test:states && npm run test:presence && npm run test:contract && npm run test:requirements && npm run test:docs && npm run test:docs-navigation && npm run test:roadmap-readiness && npm run test:module-metadata && npm run test:module-status && npm run test:mobile-device-manifest && npm run test:package && npm run test:types && npm run test:package-size && npm run test:package-tarball && npm run test:consumer-bundles && npm run test:framework && npm run test:parity && npm run test:structure && npm run test:copy && npm run test:lazy && npm run test:options && npm run test:variants && npm run test:help && npm run test:inline && npm run test:defaults && npm run test:variant-options && npm run test:variant-distinctness && npm run test:easings && npm run test:reduced && npm run test:update && npm run test:audit && npm run test:leak && npm run test:perf && npm run test:deps && npm run test:engine && npm run test:sequence-sources && npm run test:regressions && npm run test:site && npm run test:release && npm run test:size",
    "test:all": "npm run lint && npm run build && npm run test:node && npm run test:demo && npm run test:browser && npm pack --dry-run",
    "ci": "npm run test:all",
    "verify": "npm run test:all && npm audit --audit-level=low",
    "verify:quick": "npm run lint && npm run build && npm run test:node && npm pack --dry-run",
    "preview": "vite preview",
    "test:utils": "node tests/utils.mjs",
    "test:diagnostics": "node tests/diagnostics.mjs",
    "test:states": "node tests/states.mjs",
    "test:presence": "node tests/presence.mjs",
    "docs:contract": "node scripts/generate-contract-doc.mjs",
    "test:docs": "node scripts/generate-contract-doc.mjs --check",
    "test:docs-navigation": "node tests/docs-navigation.mjs",
    "test:roadmap-readiness": "node tests/roadmap-readiness.mjs",
    "test:module-metadata": "node scripts/generate-module-metadata.mjs --check && node tests/module-metadata.mjs",
    "test:module-status": "node tests/module-status.mjs",
    "test:mobile-device-manifest": "node tests/mobile-device-manifest.mjs",
    "test:requirements": "node tests/owner-requirements.mjs",
    "test:demo": "node tests/retry-browser-test.mjs tests/demo-qa.mjs",
    "test:animated-media": "node tests/retry-browser-test.mjs tests/animated-media-qa.mjs",
    "sync:options": "node scripts/sync-playground-options.mjs",
    "test:options": "node scripts/sync-playground-options.mjs --check && node tests/options-sync.mjs",
    "test:easings": "node tests/easings.mjs",
    "test:reduced": "node tests/reduced-motion.mjs",
    "test:leak": "node tests/leak.mjs",
    "test:update": "node tests/update-model.mjs",
    "test:audit": "node tests/audit-extra.mjs",
    "test:site": "node tests/site-deploy.mjs",
    "test:live-site": "node scripts/verify-live-site.mjs",
    "test:release": "node tests/release-automation.mjs",
    "test:package-size": "node scripts/package-size.mjs --check",
    "test:package-tarball": "node tests/package-tarball.mjs",
    "test:consumer-bundles": "node scripts/npm-ci-retry.mjs tests/consumer-bundles && npm --prefix tests/consumer-bundles run measure && npm --prefix tests/consumer-bundles run measure:rolldown",
    "test:framework": "node scripts/npm-ci-retry.mjs tests/framework-qa && npm --prefix tests/framework-qa run qa",
    "release:prepare": "node scripts/prepare-release.mjs",
    "release:check": "node scripts/check-release.mjs",
    "release:ship": "node scripts/ship-release.mjs",
    "test:variants": "node tests/variant-capabilities.mjs",
    "test:help": "node tests/help-coverage.mjs",
    "test:inline": "node tests/no-inline-styles.mjs",
    "test:defaults": "node tests/option-defaults.mjs",
    "derive:variant-options": "node scripts/derive-variant-options.mjs",
    "test:variant-options": "node tests/variant-options.mjs",
    "test:variant-distinctness": "node tests/variant-distinctness.mjs"
  },
  "author": {
    "name": "dongri",
    "url": "https://dongri.me"
  },
  "license": "MIT",
  "peerDependencies": {
    "gsap": "^3.13.0",
    "jquery": ">=3.6.0",
    "lenis": "^1.1.0",
    "react": ">=18.0.0",
    "vue": ">=3.3.0"
  },
  "peerDependenciesMeta": {
    "jquery": {
      "optional": true
    },
    "react": {
      "optional": true
    },
    "vue": {
      "optional": true
    },
    "gsap": {
      "optional": true
    },
    "lenis": {
      "optional": true
    }
  },
  "devDependencies": {
    "eslint": "^10.8.0",
    "gsap": "^3.15.0",
    "jsdom": "^29.1.1",
    "lenis": "^1.3.25",
    "playwright": "^1.62.0",
    "playwright-core": "^1.61.1",
    "typescript": "^6.0.3",
    "vite": "^8.1.5"
  },
  "engines": {
    "node": "^20.19.0 || >=22.12.0"
  },
  "typesVersions": {
    "*": {
      "modules/*": [
        "types/module.d.ts"
      ]
    }
  }
}
