{"_id":"@blinn-motion/svelte","_rev":"4-2b4691e623579c383b4c719ffedf25ca","name":"@blinn-motion/svelte","dist-tags":{"latest":"0.1.3"},"versions":{"0.1.0":{"name":"@blinn-motion/svelte","version":"0.1.0","license":"MIT","_id":"@blinn-motion/svelte@0.1.0","maintainers":[{"name":"gron371","email":"ismailyagci371@gmail.com"}],"homepage":"https://blinnmotion.com","bugs":{"url":"https://github.com/ismailyagci/blinn-motion/issues"},"dist":{"shasum":"ce3dfb1db1f6ca189a7d9d9004e3605c2d0e6588","tarball":"https://registry.npmjs.org/@blinn-motion/svelte/-/svelte-0.1.0.tgz","fileCount":7,"integrity":"sha512-B+K/JUyI9u83fISkYPFWCw/dl8teyVaBTa5Es7OaC1WpeemPPZaEV+FEh5xoEmvEu9uMcJWCL8J5RtRfh0USJA==","signatures":[{"sig":"MEUCIQCQmAtoOO5zF/6EkSZyCn2qRCXDJvPwM4qJscjDMEXIwwIgSF7WjMq949D84p5XuouaRBrR+VfmAfg/gktuFyUoQoY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@blinn-motion%2fsvelte@0.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":31868},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"2532aab4276d43f115627973bcd29cfcd0f95600","scripts":{"dev":"tsup --watch","build":"tsup","typecheck":"tsc --noEmit"},"_npmUser":{"name":"gron371","email":"ismailyagci371@gmail.com"},"repository":{"url":"git+https://github.com/ismailyagci/blinn-motion.git","type":"git"},"_npmVersion":"10.9.8","description":"Blinn Motion Svelte adapter — use:blinnMotion action and attachBlinnMotion() for DOM/Canvas backends.","directories":{},"sideEffects":false,"_nodeVersion":"22.23.1","dependencies":{"@blinn-motion/dom":"^0.1.0","@blinn-motion/core":"^0.1.0","@blinn-motion/canvas":"^0.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"svelte":"^5.16.0"},"peerDependencies":{"svelte":">=4"},"_npmOperationalInternal":{"tmp":"tmp/svelte_0.1.0_1784220077540_0.4057090881778369","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@blinn-motion/svelte","version":"0.1.1","license":"MIT","_id":"@blinn-motion/svelte@0.1.1","maintainers":[{"name":"gron371","email":"ismailyagci371@gmail.com"}],"homepage":"https://blinnmotion.com","bugs":{"url":"https://github.com/ismailyagci/blinn-motion/issues"},"dist":{"shasum":"b9d1ca5b28481dfe20423bf851e1cf498903bbff","tarball":"https://registry.npmjs.org/@blinn-motion/svelte/-/svelte-0.1.1.tgz","fileCount":7,"integrity":"sha512-AHxXusETZarM6c1RZiG8VxQrrSXyDq5PqYCejUlSj0dlxmysFklmr8jNt2TMNngT5Qa4XvamPQ13hBMAjzWSNQ==","signatures":[{"sig":"MEUCIGWWjtIu1YWuFfrBq/qs0Q7a96Wfk8inHhe0N1LN2CJuAiEA0KuMR7pyZHvJO6pbxduNrzlVVPGyDHG14QVpjAsuHps=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@blinn-motion%2fsvelte@0.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":31868},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"befca5fac3e3f011f219a040b6cf69eff138bdf4","scripts":{"dev":"tsup --watch","build":"tsup","typecheck":"tsc --noEmit"},"_npmUser":{"name":"gron371","email":"ismailyagci371@gmail.com"},"repository":{"url":"git+https://github.com/ismailyagci/blinn-motion.git","type":"git"},"_npmVersion":"10.9.8","description":"Blinn Motion Svelte adapter — use:blinnMotion action and attachBlinnMotion() for DOM/Canvas backends.","directories":{},"sideEffects":false,"_nodeVersion":"22.23.1","dependencies":{"@blinn-motion/dom":"^0.1.1","@blinn-motion/core":"^0.1.1","@blinn-motion/canvas":"^0.1.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"svelte":"^5.16.0"},"peerDependencies":{"svelte":">=4"},"_npmOperationalInternal":{"tmp":"tmp/svelte_0.1.1_1784223396544_0.8111754240439291","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@blinn-motion/svelte","version":"0.1.2","license":"MIT","_id":"@blinn-motion/svelte@0.1.2","maintainers":[{"name":"gron371","email":"ismailyagci371@gmail.com"}],"homepage":"https://blinnmotion.com","bugs":{"url":"https://github.com/ismailyagci/blinn-motion/issues"},"dist":{"shasum":"b26151186b2cc362a403180b80ea138467b428c7","tarball":"https://registry.npmjs.org/@blinn-motion/svelte/-/svelte-0.1.2.tgz","fileCount":7,"integrity":"sha512-j3N5U0ZhW9O880k7PbMGTZV9SaUUkPBsqvL6VYDr2JI0Brg/spVboX7RLNg3n/9vg15/Jk1r2bZ8PeFyqGrxYA==","signatures":[{"sig":"MEQCIFNRDij9/05W5EOwjAbQK6oC/RpwazecGTZsjMYjxZaqAiBq/acxK6qxLvvv/ilk/w3h+JZ4ZDrrNl49S0+h8UAiFg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@blinn-motion%2fsvelte@0.1.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":31868},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"58f09492a6476c188e3c5b91676df6c6464a13d8","scripts":{"dev":"tsup --watch","build":"tsup","typecheck":"tsc --noEmit"},"_npmUser":{"name":"gron371","email":"ismailyagci371@gmail.com"},"repository":{"url":"git+https://github.com/ismailyagci/blinn-motion.git","type":"git"},"_npmVersion":"10.9.8","description":"Blinn Motion Svelte adapter — use:blinnMotion action and attachBlinnMotion() for DOM/Canvas backends.","directories":{},"sideEffects":false,"_nodeVersion":"22.23.1","dependencies":{"@blinn-motion/dom":"^0.1.2","@blinn-motion/core":"^0.1.2","@blinn-motion/canvas":"^0.1.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"svelte":"^5.16.0"},"peerDependencies":{"svelte":">=4"},"_npmOperationalInternal":{"tmp":"tmp/svelte_0.1.2_1784225029628_0.5621219473911763","host":"s3://npm-registry-packages-npm-production"}},"0.1.3":{"name":"@blinn-motion/svelte","version":"0.1.3","description":"Blinn Motion Svelte adapter — use:blinnMotion action and attachBlinnMotion() for DOM/Canvas backends.","license":"MIT","type":"module","sideEffects":false,"main":"./dist/index.cjs","module":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"scripts":{"build":"tsup","dev":"tsup --watch","typecheck":"tsc --noEmit"},"peerDependencies":{"svelte":">=4"},"dependencies":{"@blinn-motion/core":"^0.1.3","@blinn-motion/dom":"^0.1.3","@blinn-motion/canvas":"^0.1.3"},"devDependencies":{"svelte":"^5.16.0"},"publishConfig":{"access":"public"},"repository":{"type":"git","url":"git+https://github.com/ismailyagci/blinn-motion.git","directory":"packages/svelte"},"homepage":"https://docs.blinnmotion.com/adapters/svelte","bugs":{"url":"https://github.com/ismailyagci/blinn-motion/issues"},"keywords":["blinn-motion","figma","figma-motion","motiondoc","animation","motion","timeline","svelte","svelte5","action","adapter"],"_id":"@blinn-motion/svelte@0.1.3","gitHead":"199359afa1ba483192cdd327730a411279238893","_nodeVersion":"22.23.1","_npmVersion":"10.9.8","dist":{"integrity":"sha512-G3EMj1qGw/CnnuWPidoml+uRD7/gv8N1l7MZX10ULc6QJ9kuqz3FlmEAW1eckMLsK08PBxw75Djic49efPSqJQ==","shasum":"d13a04e29498b6f70ade79678a36c4f2d8d4cfa9","tarball":"https://registry.npmjs.org/@blinn-motion/svelte/-/svelte-0.1.3.tgz","fileCount":8,"unpackedSize":34707,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@blinn-motion%2fsvelte@0.1.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQCXNRmPa49nNEilHZ+0Vt+tMiqyqzn5ix7VWDykoohoIAIhAP3J3KPvLHnl2fO18dG9gBZcM6Bz9S9115qc3M2+Dm8g"}]},"_npmUser":{"name":"gron371","email":"ismailyagci371@gmail.com"},"directories":{},"maintainers":[{"name":"gron371","email":"ismailyagci371@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/svelte_0.1.3_1784231270663_0.4221880851229176"},"_hasShrinkwrap":false}},"time":{"created":"2026-07-16T16:41:17.426Z","modified":"2026-07-16T19:47:51.113Z","0.1.0":"2026-07-16T16:41:17.683Z","0.1.1":"2026-07-16T17:36:36.674Z","0.1.2":"2026-07-16T18:03:49.777Z","0.1.3":"2026-07-16T19:47:50.786Z"},"bugs":{"url":"https://github.com/ismailyagci/blinn-motion/issues"},"license":"MIT","homepage":"https://docs.blinnmotion.com/adapters/svelte","repository":{"type":"git","url":"git+https://github.com/ismailyagci/blinn-motion.git","directory":"packages/svelte"},"description":"Blinn Motion Svelte adapter — use:blinnMotion action and attachBlinnMotion() for DOM/Canvas backends.","maintainers":[{"name":"gron371","email":"ismailyagci371@gmail.com"}],"readme":"# @blinn-motion/svelte\n\n[![npm](https://img.shields.io/npm/v/@blinn-motion/svelte.svg)](https://www.npmjs.com/package/@blinn-motion/svelte)\n[![license](https://img.shields.io/npm/l/@blinn-motion/svelte.svg)](https://github.com/ismailyagci/blinn-motion/blob/main/LICENSE)\n\n**Svelte adapter for [Blinn Motion](https://blinnmotion.com)** — idiomatic `use:blinnMotion` action plus a pure attach helper. Same MotionDoc engine as every other adapter.\n\nWorks with **Svelte 4 and 5**.\n\n## Install\n\n```bash\nnpm install @blinn-motion/svelte\n# peer: svelte\n```\n\n## Quick start\n\n```svelte\n<script lang=\"ts\">\n  import { blinnMotion } from \"@blinn-motion/svelte\";\n  import doc from \"./card.motion.json\";\n</script>\n\n<div\n  use:blinnMotion={{\n    doc,\n    renderer: \"dom\",\n    loop: true,\n    autoplay: true,\n  }}\n  style=\"width:375px;height:600px\"\n></div>\n```\n\n## Live demo\n\n[svelte.blinnmotion.com](https://svelte.blinnmotion.com)\n\n## Action params\n\n```ts\ntype BlinnMotionActionParams = {\n  doc: MotionDoc;\n  renderer?: \"dom\" | \"canvas\"; // default \"dom\"\n  loop?: boolean;\n  autoplay?: boolean;\n  rate?: number;\n  /** Controlled 0…1 — disables clock autoplay while set */\n  progress?: number;\n  onFrame?: (time: number, fraction: number) => void;\n};\n```\n\nUpdate params reactively; the action remounts/updates as needed.\n\n### Controlled progress\n\n```svelte\n<script>\n  import { blinnMotion } from \"@blinn-motion/svelte\";\n  import doc from \"./card.motion.json\";\n  let progress = $state(0);\n</script>\n\n<div use:blinnMotion={{ doc, progress }} style=\"width:375px;height:600px\"></div>\n<input type=\"range\" min=\"0\" max=\"1\" step=\"0.001\" bind:value={progress} />\n```\n\n## Imperative handle\n\n```svelte\n<script lang=\"ts\">\n  import { blinnMotion, getBlinnHandle } from \"@blinn-motion/svelte\";\n  import doc from \"./card.motion.json\";\n\n  let el: HTMLDivElement;\n\n  function play() {\n    getBlinnHandle(el)?.play();\n  }\n</script>\n\n<div bind:this={el} use:blinnMotion={{ doc, autoplay: false }}></div>\n<button on:click={play}>Play</button>\n```\n\nHandle: `play` · `pause` · `stop` · `toggle` · `seek` · `seekFraction` · `setProgress` · `setRate`\n\n## `attachBlinnMotion`\n\n```ts\nimport { attachBlinnMotion } from \"@blinn-motion/svelte\";\n\nconst attached = attachBlinnMotion(node, { doc, renderer: \"canvas\" });\nattached.setControlledProgress(0.4);\nattached.dispose();\n```\n\n## Docs\n\n- [Svelte adapter](https://docs.blinnmotion.com/adapters/svelte)\n- [Playback](https://docs.blinnmotion.com/guides/playback)\n- [GitHub](https://github.com/ismailyagci/blinn-motion)\n\n## License\n\nMIT © Blinn Motion\n","readmeFilename":"README.md","keywords":["blinn-motion","figma","figma-motion","motiondoc","animation","motion","timeline","svelte","svelte5","action","adapter"]}