{"_id":"@altpsyche/maths","_rev":"22-314511d7d5b7e75129b32cca646ee523","name":"@altpsyche/maths","dist-tags":{"latest":"2.0.0"},"versions":{"0.2.0":{"name":"@altpsyche/maths","version":"0.2.0","keywords":["maths","animation","easing","keyframes","vector","matrix"],"author":{"name":"Siva"},"license":"MIT","_id":"@altpsyche/maths@0.2.0","maintainers":[{"name":"altpsyche","email":"v.sivavadlamani@gmail.com"}],"homepage":"https://github.com/altpsyche/altpsyche-maths","bugs":{"url":"https://github.com/altpsyche/altpsyche-maths/issues"},"dist":{"shasum":"6f55e7cd16b7109f93e044eec61cd673a85b41ca","tarball":"https://registry.npmjs.org/@altpsyche/maths/-/maths-0.2.0.tgz","fileCount":43,"integrity":"sha512-kVlZWI6LNUThV8fRgxMi5RH3l6WZnRbH3gKSz2soC3dnUN+VaEhaXDM0+S1R4GOBtdWtwLHK2zn3NET87W6+Ww==","signatures":[{"sig":"MEUCIFtXQdtOtrKgkvZz7mduCmrLTW7JunCQ+YJhXaHOHavyAiEAhQcwZT7uQWExfc6SdVAsWAsn9IN2s1buL9LWkXH7mls=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":98170},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"gitHead":"b76b51694ded21acfa739037228b94f631bc4db1","scripts":{"test":"vitest run","build":"tsc -p tsconfig.build.json","prepack":"npm run build","type-check":"tsc --noEmit -p tsconfig.json"},"_npmUser":{"name":"altpsyche","email":"v.sivavadlamani@gmail.com"},"repository":{"url":"git+https://github.com/altpsyche/altpsyche-maths.git","type":"git"},"_npmVersion":"12.0.2","description":"The mathematics AltPsyche's figures are drawn from: vectors, matrices, curves, and a value walked over time.","directories":{},"sideEffects":false,"_nodeVersion":"26.8.1","_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.0.17","typescript":"^5.9.3","@types/node":"^20.19.43"},"_npmOperationalInternal":{"tmp":"tmp/maths_0.2.0_1788724764161_0.6635703992336874","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"@altpsyche/maths","version":"0.2.1","keywords":["maths","animation","easing","keyframes","vector","matrix"],"author":{"name":"Siva"},"license":"MIT","_id":"@altpsyche/maths@0.2.1","maintainers":[{"name":"altpsyche","email":"v.sivavadlamani@gmail.com"}],"homepage":"https://github.com/altpsyche/altpsyche-maths","bugs":{"url":"https://github.com/altpsyche/altpsyche-maths/issues"},"dist":{"shasum":"5ce95b0071b19eecde061dd658149a05b8e540d3","tarball":"https://registry.npmjs.org/@altpsyche/maths/-/maths-0.2.1.tgz","fileCount":43,"integrity":"sha512-1RUnKEqI9DLx1SILoQwLwkIXIHRfpTGbqRC416Y147f6f5r7OguyNp1iT3aqbs0YhgYCRvtRbn55qzG3Dq1G5w==","signatures":[{"sig":"MEYCIQD9WBwDalGgSPpwD8apXkyIy039dWhulZlY3SuKCYwRMQIhAKukRtUyCltrzK7I0wXx2Jq/jHYKHjNnyXDrhMcpmx/K","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":98948},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"gitHead":"bdb4863aeddc524277d97b481b70a6b62f020469","scripts":{"test":"vitest run","build":"tsc -p tsconfig.build.json","prepack":"npm run build","type-check":"tsc --noEmit -p tsconfig.json"},"_npmUser":{"name":"altpsyche","email":"v.sivavadlamani@gmail.com"},"repository":{"url":"git+https://github.com/altpsyche/altpsyche-maths.git","type":"git"},"_npmVersion":"12.0.2","description":"The mathematics AltPsyche's figures are drawn from: vectors, matrices, curves, and a value walked over time.","directories":{},"sideEffects":false,"_nodeVersion":"26.8.1","_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.0.17","typescript":"^5.9.3","@types/node":"^20.19.43"},"_npmOperationalInternal":{"tmp":"tmp/maths_0.2.1_1788731228359_0.861460023265006","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@altpsyche/maths","version":"0.3.0","keywords":["maths","animation","easing","keyframes","vector","matrix"],"author":{"name":"Siva"},"license":"MIT","_id":"@altpsyche/maths@0.3.0","maintainers":[{"name":"altpsyche","email":"v.sivavadlamani@gmail.com"}],"homepage":"https://github.com/altpsyche/altpsyche-maths","bugs":{"url":"https://github.com/altpsyche/altpsyche-maths/issues"},"dist":{"shasum":"3dd5edf752a0192a9a543986461af6d8e0b54faf","tarball":"https://registry.npmjs.org/@altpsyche/maths/-/maths-0.3.0.tgz","fileCount":45,"integrity":"sha512-A6P7Bl5MlbWK3WEhrwgOmtUk0ywhrt9IbWqHNj9z/uN1Mkax80Tq0SfmNw6Rfui1XnsQHIFtOORp76OvBGHJ7w==","signatures":[{"sig":"MEUCIQCYwEabhXNJhaU60s33PqCa6fcWyVjFGtrmk71+NzgaOwIgMTduGOG1+HKaws+EuFi4SoStpmQ/PrZTC4+tsmQ/Pag=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":113829},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"gitHead":"aa6f5a899b15032f9a700856473f52896f582cc0","scripts":{"test":"vitest run","build":"tsc -p tsconfig.build.json","prepack":"npm run build","type-check":"tsc --noEmit -p tsconfig.json"},"_npmUser":{"name":"altpsyche","email":"v.sivavadlamani@gmail.com"},"repository":{"url":"git+https://github.com/altpsyche/altpsyche-maths.git","type":"git"},"_npmVersion":"12.0.2","description":"The mathematics AltPsyche's figures are drawn from: vectors, matrices, curves, and a value walked over time.","directories":{},"sideEffects":false,"_nodeVersion":"26.8.1","_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.0.17","typescript":"^5.9.3","@types/node":"^20.19.43"},"_npmOperationalInternal":{"tmp":"tmp/maths_0.3.0_1788777723530_0.5348591846668058","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@altpsyche/maths","version":"0.4.0","keywords":["maths","animation","easing","keyframes","vector","matrix"],"author":{"name":"Siva"},"license":"MIT","_id":"@altpsyche/maths@0.4.0","maintainers":[{"name":"altpsyche","email":"v.sivavadlamani@gmail.com"}],"homepage":"https://github.com/altpsyche/altpsyche-maths","bugs":{"url":"https://github.com/altpsyche/altpsyche-maths/issues"},"dist":{"shasum":"578581c86578d87326176eaf895a953ed992e5a0","tarball":"https://registry.npmjs.org/@altpsyche/maths/-/maths-0.4.0.tgz","fileCount":55,"integrity":"sha512-h+HNkrAn4CHWXJKPqwQK1Dk5JpAfMOevCnip8jqX7QHLsnC00MTN74v+t/m4QTr+k9iFpZdHQ4KhyjOUIGmZDQ==","signatures":[{"sig":"MEUCIEd257e742eLAWLf2o4DnY3lGdQO4bSxzxIpd7iYB4ZFAiEAnhwMOnN5ooqLU606OU+PKCo517A/gZJTt/Og5xIvk1g=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":156519},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"gitHead":"b77d5925bd5290732e3c4843f54b80008eddf7b0","scripts":{"test":"vitest run","build":"tsc -p tsconfig.build.json","demos":"tsc -p tsconfig.demos.json && node .demos/demos/write.js","prepack":"npm run build","type-check":"tsc --noEmit -p tsconfig.json"},"_npmUser":{"name":"altpsyche","email":"v.sivavadlamani@gmail.com"},"repository":{"url":"git+https://github.com/altpsyche/altpsyche-maths.git","type":"git"},"_npmVersion":"12.0.2","description":"The mathematics AltPsyche's figures are drawn from: vectors, matrices, curves, and a value walked over time.","directories":{},"sideEffects":false,"_nodeVersion":"26.8.1","_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.0.17","typescript":"^5.9.3","@types/node":"^20.19.43"},"_npmOperationalInternal":{"tmp":"tmp/maths_0.4.0_1788783295372_0.009570531052921938","host":"s3://npm-registry-packages-npm-production"}},"0.4.1":{"name":"@altpsyche/maths","version":"0.4.1","keywords":["maths","animation","easing","keyframes","vector","matrix"],"author":{"name":"Siva"},"license":"MIT","_id":"@altpsyche/maths@0.4.1","maintainers":[{"name":"altpsyche","email":"v.sivavadlamani@gmail.com"}],"homepage":"https://github.com/altpsyche/altpsyche-maths","bugs":{"url":"https://github.com/altpsyche/altpsyche-maths/issues"},"dist":{"shasum":"67bffb459d7bc150e45bd64de837c6e66c9cb641","tarball":"https://registry.npmjs.org/@altpsyche/maths/-/maths-0.4.1.tgz","fileCount":55,"integrity":"sha512-UhpwPNAh0OVTOIoooB/M+e5ybWZ6Y1j9/2KRz8D0AC9dmZMw9HwluDR0P2KVfqtiXA1EUHmbrSnlXBIPSl0/fQ==","signatures":[{"sig":"MEUCIQCGF1Fm1ekDbv1OHsxg6i43EZv+/xaq0wkSVBgkTL7Q+gIgflmanfxe606l+P/GwMF9m8Wsw2DBW63Za156oak3LK0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":156785},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"gitHead":"b7c0eef75c031e9b0b717f81c2f5d4d5a6b1d6a3","scripts":{"test":"vitest run","build":"tsc -p tsconfig.build.json","demos":"tsc -p tsconfig.demos.json && node .demos/demos/write.js","prepack":"npm run build","type-check":"tsc --noEmit -p tsconfig.json"},"_npmUser":{"name":"altpsyche","email":"v.sivavadlamani@gmail.com"},"repository":{"url":"git+https://github.com/altpsyche/altpsyche-maths.git","type":"git"},"_npmVersion":"12.0.2","description":"The mathematics AltPsyche's figures are drawn from: vectors, matrices, curves, and a value walked over time.","directories":{},"sideEffects":false,"_nodeVersion":"26.8.1","_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.0.17","typescript":"^5.9.3","@types/node":"^20.19.43"},"_npmOperationalInternal":{"tmp":"tmp/maths_0.4.1_1788784135924_0.998111030239605","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"name":"@altpsyche/maths","version":"0.5.0","keywords":["maths","animation","easing","keyframes","vector","matrix"],"author":{"name":"Siva"},"license":"MIT","_id":"@altpsyche/maths@0.5.0","maintainers":[{"name":"altpsyche","email":"v.sivavadlamani@gmail.com"}],"homepage":"https://github.com/altpsyche/altpsyche-maths","bugs":{"url":"https://github.com/altpsyche/altpsyche-maths/issues"},"dist":{"shasum":"d5ef2a3e1d057dcb44741c273ec04225dd19acac","tarball":"https://registry.npmjs.org/@altpsyche/maths/-/maths-0.5.0.tgz","fileCount":59,"integrity":"sha512-c/ykK2vUp85Mwp6eNgHZSyyVBAuRfY3snUdhM6wznpjEBFukkscR42OAloatVnevD67ZH3nyqgzkCuaS+1wXWA==","signatures":[{"sig":"MEUCIGXKoOV3guI/fu4Nqm9Fw35xzn4q53YNOxyP+BUFAxLwAiEAhQ9l82hBoqhU8DBLBKSwnBX4ZlwcihM+3Aq4DBOD6Ro=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":185600},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"gitHead":"b1b64b0a5eb7aea2447c53a79d91244edb1ad7f3","scripts":{"test":"vitest run","build":"tsc -p tsconfig.build.json","demos":"tsc -p tsconfig.demos.json && node .demos/demos/write.js","prepack":"npm run build","type-check":"tsc --noEmit -p tsconfig.json"},"_npmUser":{"name":"altpsyche","email":"v.sivavadlamani@gmail.com"},"repository":{"url":"git+https://github.com/altpsyche/altpsyche-maths.git","type":"git"},"_npmVersion":"12.0.2","description":"The mathematics AltPsyche's figures are drawn from: vectors, matrices, curves, and a value walked over time.","directories":{},"sideEffects":false,"_nodeVersion":"26.8.1","_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.0.17","typescript":"^5.9.3","@types/node":"^20.19.43"},"_npmOperationalInternal":{"tmp":"tmp/maths_0.5.0_1788786231356_0.11251473648351484","host":"s3://npm-registry-packages-npm-production"}},"0.6.0":{"name":"@altpsyche/maths","version":"0.6.0","keywords":["maths","animation","easing","keyframes","vector","matrix"],"author":{"name":"Siva"},"license":"MIT","_id":"@altpsyche/maths@0.6.0","maintainers":[{"name":"altpsyche","email":"v.sivavadlamani@gmail.com"}],"homepage":"https://github.com/altpsyche/altpsyche-maths","bugs":{"url":"https://github.com/altpsyche/altpsyche-maths/issues"},"dist":{"shasum":"2d2f2e85db862bb6d9d6515d329fc254f570ba85","tarball":"https://registry.npmjs.org/@altpsyche/maths/-/maths-0.6.0.tgz","fileCount":63,"integrity":"sha512-eE9LKgOYuQN84zHe+rgUIjAMC9V7smezWOlUiPMsRtK0f2DK24N09zlHlLmjfaUhW2YyfYaUb+rF1bgiYu6nsw==","signatures":[{"sig":"MEUCIF3InCMpTlD1yADXBLPpgNCqIFlLKwSuZgc13M00/G/9AiEAmpKju7qBz95T++zMWHUaiqi+AhEVKc+sm4kvFQp8mqM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":200654},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"gitHead":"25ca9fb9b6b79806ebc07b03896e507dbcb5ed2d","scripts":{"test":"vitest run","build":"tsc -p tsconfig.build.json","demos":"tsc -p tsconfig.demos.json && node .demos/demos/write.js","prepack":"npm run build","type-check":"tsc --noEmit -p tsconfig.json"},"_npmUser":{"name":"altpsyche","email":"v.sivavadlamani@gmail.com"},"repository":{"url":"git+https://github.com/altpsyche/altpsyche-maths.git","type":"git"},"_npmVersion":"12.0.2","description":"The mathematics AltPsyche's figures are drawn from: vectors, matrices, curves, and a value walked over time.","directories":{},"sideEffects":false,"_nodeVersion":"26.8.1","dependencies":{"mathjax-full":"^3.2.1"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.0.17","typescript":"^5.9.3","@types/node":"^20.19.43"},"_npmOperationalInternal":{"tmp":"tmp/maths_0.6.0_1788791297978_0.14628529531932388","host":"s3://npm-registry-packages-npm-production"}},"0.7.0":{"name":"@altpsyche/maths","version":"0.7.0","keywords":["maths","animation","easing","keyframes","vector","matrix"],"author":{"name":"Siva"},"license":"MIT","_id":"@altpsyche/maths@0.7.0","maintainers":[{"name":"altpsyche","email":"v.sivavadlamani@gmail.com"}],"homepage":"https://github.com/altpsyche/altpsyche-maths","bugs":{"url":"https://github.com/altpsyche/altpsyche-maths/issues"},"dist":{"shasum":"39e6038593fbbbcb4a6fbf86ff6b6d742662ef7d","tarball":"https://registry.npmjs.org/@altpsyche/maths/-/maths-0.7.0.tgz","fileCount":65,"integrity":"sha512-bZnbLvbcRYiYu6pkodX59f0OxKqs8UfYobB13eJY2oz5eMr9Mv94M3LxYA8MRyYicV2w7x5qCkf5XXLDrVtRyA==","signatures":[{"sig":"MEQCIA1vkLDRgX5SOpnDdZWukX1/z3QIGhmA0LcwOEZBiELAAiA0ijuq4gPbF4wq3NrqyPBuRMwLPaBlzOM4CGncg5EiRQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":210542},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"gitHead":"0ba2bea633bb3ad48758121dd6f1b086b91412e2","scripts":{"test":"vitest run","build":"tsc -p tsconfig.build.json","demos":"tsc -p tsconfig.demos.json && node .demos/demos/write.js","prepack":"npm run build","type-check":"tsc --noEmit -p tsconfig.json"},"_npmUser":{"name":"altpsyche","email":"v.sivavadlamani@gmail.com"},"repository":{"url":"git+https://github.com/altpsyche/altpsyche-maths.git","type":"git"},"_npmVersion":"12.0.2","description":"The mathematics AltPsyche's figures are drawn from: vectors, matrices, curves, and a value walked over time.","directories":{},"sideEffects":false,"_nodeVersion":"26.8.1","dependencies":{"mathjax-full":"^3.2.1"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.0.17","typescript":"^5.9.3","@types/node":"^20.19.43"},"_npmOperationalInternal":{"tmp":"tmp/maths_0.7.0_1788798244269_0.6693312463936518","host":"s3://npm-registry-packages-npm-production"}},"0.8.0":{"name":"@altpsyche/maths","version":"0.8.0","keywords":["maths","animation","easing","keyframes","vector","matrix"],"author":{"name":"Siva"},"license":"MIT","_id":"@altpsyche/maths@0.8.0","maintainers":[{"name":"altpsyche","email":"v.sivavadlamani@gmail.com"}],"homepage":"https://github.com/altpsyche/altpsyche-maths","bugs":{"url":"https://github.com/altpsyche/altpsyche-maths/issues"},"dist":{"shasum":"7e29a3b726f5ec1cc724d6b1da0236426e03d089","tarball":"https://registry.npmjs.org/@altpsyche/maths/-/maths-0.8.0.tgz","fileCount":65,"integrity":"sha512-QaE9cBj6+a/yNUI3CxlgK+yQQHKSoM7agmmhJMjiqsgh+suS597QHjOPZ9I0yZIzo20UREtqCKXhwmQIE2ILgQ==","signatures":[{"sig":"MEQCIEMdkjyWYlZX2zdNB5uLGIkgEYe8A9+l2F5uSRtzWdRqAiAVcI5+8FuFUrMIfhN76ZxFa+WHe9t8IxPuCuE8S5fCxQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":219139},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"gitHead":"87ec525fc6258c2b060998040e8d7e74f96b8130","scripts":{"test":"vitest run","build":"tsc -p tsconfig.build.json","demos":"tsc -p tsconfig.demos.json && node .demos/demos/write.js","prepack":"npm run build","type-check":"tsc --noEmit -p tsconfig.json"},"_npmUser":{"name":"altpsyche","email":"v.sivavadlamani@gmail.com"},"repository":{"url":"git+https://github.com/altpsyche/altpsyche-maths.git","type":"git"},"_npmVersion":"12.0.2","description":"The mathematics AltPsyche's figures are drawn from: vectors, matrices, curves, and a value walked over time.","directories":{},"sideEffects":false,"_nodeVersion":"26.8.1","dependencies":{"mathjax-full":"^3.2.1"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.0.17","typescript":"^5.9.3","@types/node":"^20.19.43"},"_npmOperationalInternal":{"tmp":"tmp/maths_0.8.0_1788802837032_0.28214333699024063","host":"s3://npm-registry-packages-npm-production"}},"0.9.0":{"name":"@altpsyche/maths","version":"0.9.0","keywords":["maths","animation","easing","keyframes","vector","matrix"],"author":{"name":"Siva"},"license":"MIT","_id":"@altpsyche/maths@0.9.0","maintainers":[{"name":"altpsyche","email":"v.sivavadlamani@gmail.com"}],"homepage":"https://github.com/altpsyche/altpsyche-maths","bugs":{"url":"https://github.com/altpsyche/altpsyche-maths/issues"},"dist":{"shasum":"9761afe58a5bbd482330b019692ee5a33cbab04e","tarball":"https://registry.npmjs.org/@altpsyche/maths/-/maths-0.9.0.tgz","fileCount":75,"integrity":"sha512-Ve/kMF4D2GRA+Q2kLJaNdHBoIxekzkVRbnOOv/7/fTfeoa/g5SECuPtWm5Ahxo4dX20FwWLBJLf/a4g7eEpxfQ==","signatures":[{"sig":"MEUCIG93nO3/BL3MOceoowwmZu+kUsyeCcJbnLCI2fMC9NoqAiEA6G5GxrPK+4ZiDnnOw3GOCTa1TC/mqiGPZHfTI6tk1wI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":258585},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"gitHead":"e65d1ffd3f622fc07e223adc08905852a9d275a9","scripts":{"test":"vitest run","build":"tsc -p tsconfig.build.json","demos":"tsc -p tsconfig.demos.json && node .demos/demos/write.js","prepack":"npm run build","type-check":"tsc --noEmit -p tsconfig.json"},"_npmUser":{"name":"altpsyche","email":"v.sivavadlamani@gmail.com"},"repository":{"url":"git+https://github.com/altpsyche/altpsyche-maths.git","type":"git"},"_npmVersion":"12.0.2","description":"The mathematics AltPsyche's figures are drawn from: vectors, matrices, curves, and a value walked over time.","directories":{},"sideEffects":false,"_nodeVersion":"26.8.1","dependencies":{"mathjax-full":"^3.2.1"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.0.17","typescript":"^5.9.3","@types/node":"^20.19.43"},"_npmOperationalInternal":{"tmp":"tmp/maths_0.9.0_1788807404715_0.8045962856763449","host":"s3://npm-registry-packages-npm-production"}},"0.9.1":{"name":"@altpsyche/maths","version":"0.9.1","keywords":["maths","animation","easing","keyframes","vector","matrix"],"author":{"name":"Siva"},"license":"MIT","_id":"@altpsyche/maths@0.9.1","maintainers":[{"name":"altpsyche","email":"v.sivavadlamani@gmail.com"}],"homepage":"https://github.com/altpsyche/altpsyche-maths","bugs":{"url":"https://github.com/altpsyche/altpsyche-maths/issues"},"dist":{"shasum":"44beba27de08faf7b6ac62c697d24c1527edbecd","tarball":"https://registry.npmjs.org/@altpsyche/maths/-/maths-0.9.1.tgz","fileCount":75,"integrity":"sha512-gOIPdahIFbnBA0gS4ixtSQ2bMaHszvAE/RV4KDOR3dKAeGcZXjCwH8mzihlwbAb2BIWdqIiK2m5nNTBE8bbY2g==","signatures":[{"sig":"MEQCIAdm67rbhUL/TTB991NDcAGgzWvcl66zB+b4+bul4MdJAiAFIMyxUiY9m7doF41/qhs27/z8flBA5/WvcAgXkEVwJQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":268539},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"gitHead":"676ba2ce77e690b2bfeff136aaf947e3fe5f0649","scripts":{"test":"vitest run","build":"tsc -p tsconfig.build.json","demos":"tsc -p tsconfig.demos.json && node .demos/demos/write.js","prepack":"npm run build","type-check":"tsc --noEmit -p tsconfig.json"},"_npmUser":{"name":"altpsyche","email":"v.sivavadlamani@gmail.com"},"repository":{"url":"git+https://github.com/altpsyche/altpsyche-maths.git","type":"git"},"_npmVersion":"12.0.2","description":"The mathematics AltPsyche's figures are drawn from: vectors, matrices, curves, and a value walked over time.","directories":{},"sideEffects":false,"_nodeVersion":"26.8.1","dependencies":{"mathjax-full":"^3.2.1"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.0.17","typescript":"^5.9.3","@types/node":"^20.19.43"},"_npmOperationalInternal":{"tmp":"tmp/maths_0.9.1_1788808349692_0.11341732775309121","host":"s3://npm-registry-packages-npm-production"}},"0.9.2":{"name":"@altpsyche/maths","version":"0.9.2","keywords":["maths","animation","easing","keyframes","vector","matrix"],"author":{"name":"Siva"},"license":"MIT","_id":"@altpsyche/maths@0.9.2","maintainers":[{"name":"altpsyche","email":"v.sivavadlamani@gmail.com"}],"homepage":"https://github.com/altpsyche/altpsyche-maths","bugs":{"url":"https://github.com/altpsyche/altpsyche-maths/issues"},"dist":{"shasum":"9b012320a241a7d63a7bb6aab2ecc0e93aecfa7f","tarball":"https://registry.npmjs.org/@altpsyche/maths/-/maths-0.9.2.tgz","fileCount":75,"integrity":"sha512-nNqcqIS8f4bekMZsg5lJypUxYLfiYEzcs7K6pWydWLXamyyih36CMul9EagCuFNbS1aPoguppacagj4kZzminw==","signatures":[{"sig":"MEQCIEZZVrKuTKXor0NJrzzxTuUnuk3ga8Dz/gTNM9t1bs/HAiBTt7b592P/CHQ4C+yq7kHJVQFDn73ZjsXaA0dbsGF9nw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":268539},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"gitHead":"25f4b1119fcfdd75347f9a8198f9b65be3a72fa5","scripts":{"test":"vitest run","build":"tsc -p tsconfig.build.json","demos":"tsc -p tsconfig.demos.json && node .demos/demos/write.js","prepack":"npm run build","type-check":"tsc --noEmit -p tsconfig.json"},"_npmUser":{"name":"altpsyche","email":"v.sivavadlamani@gmail.com"},"repository":{"url":"git+https://github.com/altpsyche/altpsyche-maths.git","type":"git"},"_npmVersion":"12.0.2","description":"The mathematics AltPsyche's figures are drawn from: vectors, matrices, curves, and a value walked over time.","directories":{},"sideEffects":false,"_nodeVersion":"26.8.1","dependencies":{"mathjax-full":"^3.2.1"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.0.17","typescript":"^5.9.3","@types/node":"^20.19.43"},"_npmOperationalInternal":{"tmp":"tmp/maths_0.9.2_1788808404957_0.19755198710706368","host":"s3://npm-registry-packages-npm-production"}},"0.9.3":{"name":"@altpsyche/maths","version":"0.9.3","keywords":["maths","animation","easing","keyframes","vector","matrix"],"author":{"name":"Siva"},"license":"MIT","_id":"@altpsyche/maths@0.9.3","maintainers":[{"name":"altpsyche","email":"v.sivavadlamani@gmail.com"}],"homepage":"https://github.com/altpsyche/altpsyche-maths","bugs":{"url":"https://github.com/altpsyche/altpsyche-maths/issues"},"dist":{"shasum":"fdac2eb4843de9ef3990286e4b8ddfb431465eba","tarball":"https://registry.npmjs.org/@altpsyche/maths/-/maths-0.9.3.tgz","fileCount":77,"integrity":"sha512-AXZT51RRZ87n6elboygNW0qu4TrOUF/DWzBwlbOvmMsIhPDSMXSKqz7KFewNQ84COf8b12Dsth0SM4uYLFiR2Q==","signatures":[{"sig":"MEUCIHaqCKr6z9sQhSz6LP+2Lb1FXEP9oan6heSF0CyUp9zBAiEArRC/GX+DKepawOb0wm5Z6ECVeRZtB5pF5eyQwVFfTc4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":272853},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"gitHead":"2b641802e1f563cd06d69f7bfb193daa9c47da06","scripts":{"test":"vitest run","build":"tsc -p tsconfig.build.json","demos":"tsc -p tsconfig.demos.json && node .demos/demos/write.js","prepack":"npm run build","type-check":"tsc --noEmit -p tsconfig.json"},"_npmUser":{"name":"altpsyche","email":"v.sivavadlamani@gmail.com"},"repository":{"url":"git+https://github.com/altpsyche/altpsyche-maths.git","type":"git"},"_npmVersion":"12.0.2","description":"The mathematics AltPsyche's figures are drawn from: vectors, matrices, curves, and a value walked over time.","directories":{},"sideEffects":false,"_nodeVersion":"26.8.1","dependencies":{"mathjax-full":"^3.2.1"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.0.17","typescript":"^5.9.3","@types/node":"^20.19.43"},"_npmOperationalInternal":{"tmp":"tmp/maths_0.9.3_1788808862663_0.9246418190752017","host":"s3://npm-registry-packages-npm-production"}},"0.9.4":{"name":"@altpsyche/maths","version":"0.9.4","keywords":["maths","animation","easing","keyframes","vector","matrix"],"author":{"name":"Siva"},"license":"MIT","_id":"@altpsyche/maths@0.9.4","maintainers":[{"name":"altpsyche","email":"v.sivavadlamani@gmail.com"}],"homepage":"https://github.com/altpsyche/altpsyche-maths","bugs":{"url":"https://github.com/altpsyche/altpsyche-maths/issues"},"dist":{"shasum":"c304aed1c8bf1209c62a3f7aeb85a72696d37bfb","tarball":"https://registry.npmjs.org/@altpsyche/maths/-/maths-0.9.4.tgz","fileCount":77,"integrity":"sha512-nPD5lh5+w1kt0kf+iTYVIG+A1FkKH9bGjtDlGeT6W9aSMdwCUYhDq2HcN9zsWHnu69skLPTnwoHIig3fikY8wA==","signatures":[{"sig":"MEQCIBBS3hO/3tiWaSIYy99TfBngYpLbp7BSyWqkq5CowI5oAiAsehkHDuD+j6vO9wNxYBPyJtWFPA7Bjrn0GU0tDU269A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":272866},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"gitHead":"3c5af5d3f8cd23d4ad8efc1f083812712bc3f616","scripts":{"test":"vitest run","build":"tsc -p tsconfig.build.json","demos":"tsc -p tsconfig.demos.json && node .demos/demos/write.js","prepack":"npm run build","type-check":"tsc --noEmit -p tsconfig.json"},"_npmUser":{"name":"altpsyche","email":"v.sivavadlamani@gmail.com"},"repository":{"url":"git+https://github.com/altpsyche/altpsyche-maths.git","type":"git"},"_npmVersion":"12.0.2","description":"The mathematics AltPsyche's figures are drawn from: vectors, matrices, curves, and a value walked over time.","directories":{},"sideEffects":false,"_nodeVersion":"26.8.1","dependencies":{"mathjax-full":"^3.2.1"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.0.17","typescript":"^5.9.3","@types/node":"^20.19.43"},"_npmOperationalInternal":{"tmp":"tmp/maths_0.9.4_1788809127046_0.5933331530858987","host":"s3://npm-registry-packages-npm-production"}},"0.9.5":{"name":"@altpsyche/maths","version":"0.9.5","keywords":["maths","animation","easing","keyframes","vector","matrix"],"author":{"name":"Siva"},"license":"MIT","_id":"@altpsyche/maths@0.9.5","maintainers":[{"name":"altpsyche","email":"v.sivavadlamani@gmail.com"}],"homepage":"https://github.com/altpsyche/altpsyche-maths","bugs":{"url":"https://github.com/altpsyche/altpsyche-maths/issues"},"dist":{"shasum":"8e7e74d31c1e88163c14dfa26cf4f71457b5a956","tarball":"https://registry.npmjs.org/@altpsyche/maths/-/maths-0.9.5.tgz","fileCount":77,"integrity":"sha512-6Y2HUdrz8JRXrWHqGfClNUegzb75TJ4k0zWeiG1XaELE6e74i9Bixfmg30tnwcfUq8ucD0EVKPqArpUaRdnhXQ==","signatures":[{"sig":"MEYCIQCBY/3xhBhobS7vlgOOygZuUUgVrPpu0R1jFt+f0TnuEQIhALmQgLLiq6RaQfNHQM/AHhvZQjRDN0+Ae6lup/SHJ561","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":274915},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"gitHead":"804433762fcd0c0fd062a26c3d6d556321edd5ee","scripts":{"test":"vitest run","build":"tsc -p tsconfig.build.json","demos":"tsc -p tsconfig.demos.json && node .demos/demos/write.js","prepack":"npm run build","type-check":"tsc --noEmit -p tsconfig.json"},"_npmUser":{"name":"altpsyche","email":"v.sivavadlamani@gmail.com"},"repository":{"url":"git+https://github.com/altpsyche/altpsyche-maths.git","type":"git"},"_npmVersion":"12.0.2","description":"The mathematics AltPsyche's figures are drawn from: vectors, matrices, curves, and a value walked over time.","directories":{},"sideEffects":false,"_nodeVersion":"26.8.1","dependencies":{"mathjax-full":"^3.2.1"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.0.17","typescript":"^5.9.3","@types/node":"^20.19.43"},"_npmOperationalInternal":{"tmp":"tmp/maths_0.9.5_1788810875715_0.09724697629072998","host":"s3://npm-registry-packages-npm-production"}},"0.10.0":{"name":"@altpsyche/maths","version":"0.10.0","keywords":["maths","animation","easing","keyframes","vector","matrix"],"author":{"name":"Siva"},"license":"MIT","_id":"@altpsyche/maths@0.10.0","maintainers":[{"name":"altpsyche","email":"v.sivavadlamani@gmail.com"}],"homepage":"https://github.com/altpsyche/altpsyche-maths","bugs":{"url":"https://github.com/altpsyche/altpsyche-maths/issues"},"dist":{"shasum":"cb07da0810c7cbff2107997eec747e579ecbc73b","tarball":"https://registry.npmjs.org/@altpsyche/maths/-/maths-0.10.0.tgz","fileCount":87,"integrity":"sha512-Mwe0jcCjf2toMNvwBo+o57SDGhvc8/2rZw0Cr8etM7X5ewW171RZbyKzNUvT294dJ76Fps/6mS80lFn5gOq/ag==","signatures":[{"sig":"MEYCIQDwoytuRhCDrgYf/N1XILVF3bME8YmGphyT8CbQVcpr3QIhAIa0fYC48E+fpTmALP0WXYNVUiA6a/wLEa0VSx9o9gDi","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":327140},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"gitHead":"05dbfa22697aab5f2e70e410083c2df02432ca8e","scripts":{"test":"vitest run","build":"tsc -p tsconfig.build.json","demos":"tsc -p tsconfig.demos.json && node .demos/demos/write.js","prepack":"npm run build","type-check":"tsc --noEmit -p tsconfig.json"},"_npmUser":{"name":"altpsyche","email":"v.sivavadlamani@gmail.com"},"repository":{"url":"git+https://github.com/altpsyche/altpsyche-maths.git","type":"git"},"_npmVersion":"12.0.2","description":"The mathematics AltPsyche's figures are drawn from: vectors, matrices, curves, and a value walked over time.","directories":{},"sideEffects":false,"_nodeVersion":"26.8.1","dependencies":{"mathjax-full":"^3.2.1"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.0.17","typescript":"^5.9.3","@types/node":"^20.19.43"},"_npmOperationalInternal":{"tmp":"tmp/maths_0.10.0_1788813173796_0.29340939445407677","host":"s3://npm-registry-packages-npm-production"}},"0.11.0":{"name":"@altpsyche/maths","version":"0.11.0","keywords":["maths","animation","easing","keyframes","vector","matrix"],"author":{"name":"Siva"},"license":"MIT","_id":"@altpsyche/maths@0.11.0","maintainers":[{"name":"altpsyche","email":"v.sivavadlamani@gmail.com"}],"homepage":"https://github.com/altpsyche/altpsyche-maths","bugs":{"url":"https://github.com/altpsyche/altpsyche-maths/issues"},"dist":{"shasum":"336d14cc9c599e79660457d31cd0cbd118d7724c","tarball":"https://registry.npmjs.org/@altpsyche/maths/-/maths-0.11.0.tgz","fileCount":91,"integrity":"sha512-txlCJMHTdsMmLe1QBPcgDDfuzZXkm8fecODCpmP+NnRu5nNJVQWVzmjI/oUYe+eHG4iGbHIfq8PXby+wq2bOTw==","signatures":[{"sig":"MEUCIQCqAlAw8ulvsC0WgE1Kd4No/OEHPFi/4TP99o9wtcu2cgIgblcTrOolXaO3z+CaR3LaxSEPfpp+yDwKyBMUKlDiBwY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":349506},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"gitHead":"617fe736592c68ea56435f2509201e1545c625da","scripts":{"test":"vitest run","build":"tsc -p tsconfig.build.json","demos":"tsc -p tsconfig.demos.json && node .demos/demos/write.js","prepack":"npm run build","type-check":"tsc --noEmit -p tsconfig.json"},"_npmUser":{"name":"altpsyche","email":"v.sivavadlamani@gmail.com"},"repository":{"url":"git+https://github.com/altpsyche/altpsyche-maths.git","type":"git"},"_npmVersion":"12.0.2","description":"The mathematics AltPsyche's figures are drawn from: vectors, matrices, curves, and a value walked over time.","directories":{},"sideEffects":false,"_nodeVersion":"26.8.1","dependencies":{"mathjax-full":"^3.2.1"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.0.17","typescript":"^5.9.3","@types/node":"^20.19.43"},"_npmOperationalInternal":{"tmp":"tmp/maths_0.11.0_1788815715237_0.8126099194370495","host":"s3://npm-registry-packages-npm-production"}},"0.12.0":{"name":"@altpsyche/maths","version":"0.12.0","keywords":["maths","animation","easing","keyframes","vector","matrix"],"author":{"name":"Siva"},"license":"MIT","_id":"@altpsyche/maths@0.12.0","maintainers":[{"name":"altpsyche","email":"v.sivavadlamani@gmail.com"}],"homepage":"https://github.com/altpsyche/altpsyche-maths","bugs":{"url":"https://github.com/altpsyche/altpsyche-maths/issues"},"dist":{"shasum":"37a4fe6b0226c40768e75ed1739399ba9e6f717c","tarball":"https://registry.npmjs.org/@altpsyche/maths/-/maths-0.12.0.tgz","fileCount":93,"integrity":"sha512-XA86kAl8jDBNf6JoKoPJBDR6M/Ocy1qSu6qjXlYxP9lwaDEUcmGJXruWc5Z6f6cYZxjJkb4OPyzgH+JbGWGFxA==","signatures":[{"sig":"MEUCIFVVIuBNY3S4Qe9BEf/vVyc0cgBMaWlK/oPXM2ioDAOgAiEAz8JK5S1UHOC4FM7Mqw1keDt0lLwkeErkJJKkn+lb0+c=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":355445},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"gitHead":"a3b802b7be9192ee2feb3779b7b14c14fa902970","scripts":{"test":"vitest run","build":"tsc -p tsconfig.build.json","demos":"tsc -p tsconfig.demos.json && node .demos/demos/write.js","prepack":"npm run build","type-check":"tsc --noEmit -p tsconfig.json"},"_npmUser":{"name":"altpsyche","email":"v.sivavadlamani@gmail.com"},"repository":{"url":"git+https://github.com/altpsyche/altpsyche-maths.git","type":"git"},"_npmVersion":"12.0.2","description":"The mathematics AltPsyche's figures are drawn from: vectors, matrices, curves, and a value walked over time.","directories":{},"sideEffects":false,"_nodeVersion":"26.8.1","dependencies":{"mathjax-full":"^3.2.1"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.0.17","typescript":"^5.9.3","@types/node":"^20.19.43"},"_npmOperationalInternal":{"tmp":"tmp/maths_0.12.0_1788816971435_0.9769958042169402","host":"s3://npm-registry-packages-npm-production"}},"0.13.0":{"name":"@altpsyche/maths","version":"0.13.0","keywords":["maths","animation","easing","keyframes","vector","matrix"],"author":{"name":"Siva"},"license":"MIT","_id":"@altpsyche/maths@0.13.0","maintainers":[{"name":"altpsyche","email":"v.sivavadlamani@gmail.com"}],"homepage":"https://github.com/altpsyche/altpsyche-maths","bugs":{"url":"https://github.com/altpsyche/altpsyche-maths/issues"},"dist":{"shasum":"22e6a631aeca01a89f0a8667b04263988648f3fd","tarball":"https://registry.npmjs.org/@altpsyche/maths/-/maths-0.13.0.tgz","fileCount":101,"integrity":"sha512-A5g+pSuprTL08xkD/vC5D7pTFj0q3Mxch+XQQQPzMWk52LnqbgP9rrlxgzkWZRUlLqhxQR8HKMqsMrmqhHQgSg==","signatures":[{"sig":"MEYCIQDi+otHobsVP7qSXG9NHrcE1DzQDVGdgIIEDOIeFl8WMgIhAJh4bGkaeL4el7yk30QudWZ8YU80eVaZiVfldeJA0jii","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":356513},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"gitHead":"caf7809d461018b76f0d4831f32c82bf97944107","scripts":{"test":"vitest run","build":"tsc -p tsconfig.build.json","demos":"tsc -p tsconfig.demos.json && node .demos/demos/write.js","prepack":"npm run build","type-check":"tsc --noEmit -p tsconfig.json"},"_npmUser":{"name":"altpsyche","email":"v.sivavadlamani@gmail.com"},"repository":{"url":"git+https://github.com/altpsyche/altpsyche-maths.git","type":"git"},"_npmVersion":"12.0.2","description":"The mathematics AltPsyche's figures are drawn from: vectors, matrices, curves, and a value walked over time.","directories":{},"sideEffects":false,"_nodeVersion":"26.8.1","dependencies":{"mathjax-full":"^3.2.1"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.0.17","typescript":"^5.9.3","@types/node":"^20.19.43"},"_npmOperationalInternal":{"tmp":"tmp/maths_0.13.0_1788853209828_0.9904009150738562","host":"s3://npm-registry-packages-npm-production"}},"1.0.0":{"name":"@altpsyche/maths","version":"1.0.0","keywords":["maths","animation","easing","keyframes","vector","matrix"],"author":{"name":"Siva"},"license":"MIT","_id":"@altpsyche/maths@1.0.0","maintainers":[{"name":"altpsyche","email":"v.sivavadlamani@gmail.com"}],"homepage":"https://github.com/altpsyche/altpsyche-maths","bugs":{"url":"https://github.com/altpsyche/altpsyche-maths/issues"},"dist":{"shasum":"2114bd27fd8d4247006808e5feab8d998a36190d","tarball":"https://registry.npmjs.org/@altpsyche/maths/-/maths-1.0.0.tgz","fileCount":101,"integrity":"sha512-WrlsIX0rGtlxkx9/tMfPNeIHJSlkD/9MRAc3r7h+3MsaSluJJfa4y6ypYcXNNZcmXf0Ek0JLKO/3ExkeYgsRIQ==","signatures":[{"sig":"MEQCIEJsZrL6gw+mBHmXJAR3UwQb+7kyDXvt0fDq6A7gfBBVAiA/iydA7MFiEIlKQl/Q7GrNHNqDIQ+s+JdMWfL4d57TIg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":357480},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"gitHead":"e4a67d9350f67ed1247c642cf19920a193734303","scripts":{"test":"vitest run","build":"tsc -p tsconfig.build.json","demos":"tsc -p tsconfig.demos.json && node .demos/demos/write.js","prepack":"npm run build","type-check":"tsc --noEmit -p tsconfig.json"},"_npmUser":{"name":"altpsyche","email":"v.sivavadlamani@gmail.com"},"repository":{"url":"git+https://github.com/altpsyche/altpsyche-maths.git","type":"git"},"_npmVersion":"12.0.2","description":"The mathematics AltPsyche's figures are drawn from: vectors, matrices, curves, and a value walked over time.","directories":{},"sideEffects":false,"_nodeVersion":"26.8.1","dependencies":{"mathjax-full":"^3.2.1"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.0.17","typescript":"^5.9.3","@types/node":"^20.19.43"},"_npmOperationalInternal":{"tmp":"tmp/maths_1.0.0_1788855178239_0.43479877597149197","host":"s3://npm-registry-packages-npm-production"}},"1.6.0":{"name":"@altpsyche/maths","version":"1.6.0","keywords":["maths","animation","easing","keyframes","vector","matrix"],"author":{"name":"Siva"},"license":"MIT","_id":"@altpsyche/maths@1.6.0","maintainers":[{"name":"altpsyche","email":"v.sivavadlamani@gmail.com"}],"homepage":"https://github.com/altpsyche/altpsyche-maths","bugs":{"url":"https://github.com/altpsyche/altpsyche-maths/issues"},"dist":{"shasum":"2f38c3ed1d51e2c41ba1ca465b5a2ca88dec78f2","tarball":"https://registry.npmjs.org/@altpsyche/maths/-/maths-1.6.0.tgz","fileCount":113,"integrity":"sha512-BPPo+EMFQ2syIlxPESV6Usg37XlnBQQgtjkVqg/8paUGZK84y6tu5R+T3ovp3v16oOT8fAj92jgIpSpRpulOow==","signatures":[{"sig":"MEQCIA/piDBy0Iaf3zVFG5Kc1MJMtKOgpg4fgEC0pSjHfWbYAiBvM37lJVBYTocWM/ewjApYu1+2xtNvhvv0ake/6iEZ8g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":430926},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"gitHead":"2771808c2fa22c22aa86c6f7a5706ed6eaded4f0","scripts":{"test":"vitest run","build":"tsc -p tsconfig.build.json","demos":"tsc -p tsconfig.demos.json && node .demos/demos/write.js","prepack":"npm run build","type-check":"tsc --noEmit -p tsconfig.json"},"_npmUser":{"name":"altpsyche","email":"v.sivavadlamani@gmail.com"},"repository":{"url":"git+https://github.com/altpsyche/altpsyche-maths.git","type":"git"},"_npmVersion":"12.0.2","description":"The mathematics AltPsyche's figures are drawn from: vectors, matrices, curves, and a value walked over time.","directories":{},"sideEffects":false,"_nodeVersion":"26.8.1","dependencies":{"mathjax-full":"^3.2.1"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.0.17","typescript":"^5.9.3","@types/node":"^20.19.43"},"_npmOperationalInternal":{"tmp":"tmp/maths_1.6.0_1788892934291_0.37588065614616695","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"@altpsyche/maths","version":"2.0.0","description":"The mathematics AltPsyche's figures are drawn from: vectors, matrices, curves, and a value walked over time.","license":"MIT","author":{"name":"Siva"},"repository":{"type":"git","url":"git+https://github.com/altpsyche/altpsyche-maths.git"},"homepage":"https://github.com/altpsyche/altpsyche-maths","bugs":{"url":"https://github.com/altpsyche/altpsyche-maths/issues"},"keywords":["maths","animation","easing","keyframes","vector","matrix"],"type":"module","sideEffects":false,"main":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"scripts":{"build":"tsc -p tsconfig.build.json","test":"vitest run","demos":"tsc -p tsconfig.demos.json && node .demos/demos/write.js","type-check":"tsc --noEmit -p tsconfig.json","prepack":"npm run build"},"devDependencies":{"@types/node":"^20.19.43","typescript":"^5.9.3","vitest":"^4.0.17"},"engines":{"node":">=20"},"dependencies":{"mathjax-full":"^3.2.1"},"gitHead":"2c60157149807dcb5d811fe5eaf540f2092433d3","_id":"@altpsyche/maths@2.0.0","_nodeVersion":"26.8.1","_npmVersion":"12.0.2","dist":{"integrity":"sha512-NAdmYe7JKsKtPyw8GKp+Y+kNNTF4z9eFOWZfZAdlhA31YX3MkhNCCKwnl7cGDrmzrHYDjCyBQ9eSB9pnflJe4Q==","shasum":"012cba027a059833308469752c54d8f3fa696680","tarball":"https://registry.npmjs.org/@altpsyche/maths/-/maths-2.0.0.tgz","fileCount":133,"unpackedSize":566031,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIEh7whqfko+GMUCpVt5ilDMtMR0juqqiHHPpf5RwVFh1AiAEYAdtk/hf1R1xls04ZmxA7tLOJgYnA20smkCP4OWK4Q=="}]},"_npmUser":{"name":"altpsyche","email":"v.sivavadlamani@gmail.com"},"directories":{},"maintainers":[{"name":"altpsyche","email":"v.sivavadlamani@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/maths_2.0.0_1788955240026_0.8124054505270444"},"_hasShrinkwrap":false}},"time":{"created":"2026-09-06T19:59:23.918Z","modified":"2026-09-09T12:00:40.330Z","0.2.0":"2026-09-06T19:59:24.289Z","0.2.1":"2026-09-06T21:47:08.505Z","0.3.0":"2026-09-07T10:42:03.783Z","0.4.0":"2026-09-07T12:14:55.530Z","0.4.1":"2026-09-07T12:28:56.088Z","0.5.0":"2026-09-07T13:03:51.492Z","0.6.0":"2026-09-07T14:28:18.132Z","0.7.0":"2026-09-07T16:24:04.400Z","0.8.0":"2026-09-07T17:40:37.173Z","0.9.0":"2026-09-07T18:56:44.956Z","0.9.1":"2026-09-07T19:12:29.836Z","0.9.2":"2026-09-07T19:13:25.101Z","0.9.3":"2026-09-07T19:21:02.811Z","0.9.4":"2026-09-07T19:25:27.194Z","0.9.5":"2026-09-07T19:54:35.858Z","0.10.0":"2026-09-07T20:32:53.929Z","0.11.0":"2026-09-07T21:15:15.397Z","0.12.0":"2026-09-07T21:36:11.575Z","0.13.0":"2026-09-08T07:40:09.965Z","1.0.0":"2026-09-08T08:12:58.381Z","1.6.0":"2026-09-08T18:42:14.440Z","2.0.0":"2026-09-09T12:00:40.161Z"},"bugs":{"url":"https://github.com/altpsyche/altpsyche-maths/issues"},"author":{"name":"Siva"},"license":"MIT","homepage":"https://github.com/altpsyche/altpsyche-maths","keywords":["maths","animation","easing","keyframes","vector","matrix"],"repository":{"type":"git","url":"git+https://github.com/altpsyche/altpsyche-maths.git"},"description":"The mathematics AltPsyche's figures are drawn from: vectors, matrices, curves, and a value walked over time.","maintainers":[{"name":"altpsyche","email":"v.sivavadlamani@gmail.com"}],"readme":"# @altpsyche/maths\n\nThe mathematics behind the figures on [altpsyche.dev](https://altpsyche.dev).\n\n## The model\n\nA **figure** is a description of a picture over time. It carries an **extent** and a **scene**. The\nextent is a width and a height in the figure's own units. The scene is a tree of nodes holding\npaths, text, transforms and styles. A figure has no canvas, no clock and no state.\n\nEvaluating a figure at time t yields a flat array of **marks**. A mark is one drawn item: an outline\nwith a fill, a stroke, or both, or a piece of text. Its geometry is expressed in figure units with\nevery transform already applied, and its style is resolved rather than inherited. A mark holds no\nreference to an output device.\n\n```ts\nmarksAt(figure, t): readonly Mark[]\n```\n\n`marksAt` is a pure function of t. Two evaluations at one time produce identical arrays. A page\nplaying forward, a reader dragging a scrub bar backward and a recorder stepping at a fixed rate\ntherefore read one figure.\n\nA **painter** consumes marks. `viewMatrix` builds the single affine transform taking figure units to\na surface of a given size. It inverts the y axis, since a figure counts upward and both painters\ncount downward from the top. No conversion to device units occurs anywhere else.\n\n<img src=\"https://raw.githubusercontent.com/altpsyche/altpsyche-maths/master/docs/tangent.svg\" width=\"720\" alt=\"A parabola on a labelled grid over a field of small blue arrows, the region under it shaded to a point on the curve, the tangent at that point drawn, and the slope written as a number under the typeset rule it comes from.\">\n\nThe figure above is evaluated at t = 7.86 s of a 10.25 s duration. Its extent is 10.8 by 6 units and\nits marks number 181 there, counting the inset it draws.\n\nA figure is also data. Every part of one has a written form: a node is a record of a kind and its\nparameters, a parameter a track drives is an expression, and a timeline is its spans. `writeFigure`\nhands the whole of it back as the text of a file and `readFigure` reads that text into a figure, so a\npicture crosses a machine rather than a process. The four figures on this page are committed as\nfiles beside their pictures, in `demos/tangent.figure.json`, `demos/boolean.figure.json`,\n`demos/rotate.figure.json` and `demos/surface.figure.json`, and a gate reads each one back and holds\nits marks against what the demo draws.\n\n## Install\n\n```sh\nnpm install @altpsyche/maths\n```\n\nNode 20 or newer, ESM, `sideEffects: false`. The single runtime dependency is MathJax, reached by a\ndynamic import inside `typesetElement`, so a figure containing no equations never loads its 41 MB.\n\n## A complete figure\n\n```ts\nimport { Timeline, circle, colourFrom, draw, group, marksAt, shape, svgMarkup, vec2, viewAt } from '@altpsyche/maths';\n\nconst figure = {\n  extent: { width: 16, height: 9 },\n  still: 1,\n  scene: group('fig', [shape('ring', circle(vec2(0, 0), 3), { stroke: { colour: colourFrom('#fff'), width: 0.05 } })]),\n  timeline: Timeline.empty().play(draw('fig/ring'), 1),\n};\n\nsvgMarkup(marksAt(figure, 0.5), viewAt(figure, 0.5, 640, 360), 640, 360);\n```\n\nAt t = 0.5 the timeline has applied `draw` at half its span, and the mark carries half the ring's\narc length. `svgMarkup` returns a complete SVG document as a string, with a view box and no width or\nheight of its own.\n\n## Geometry\n\nAll geometry is cubic Bézier. A **path** is a sequence of subpaths; a subpath is a start point\nfollowed by cubic segments, closed or open. A segment stores its two control points and its endpoint\nand not its start, which is why the functions evaluating one take that start as an argument.\n\n`circle` and `arc` emit segments spanning at most a quarter turn. For a segment of angle θ the\ncontrol distance is (4/3)·tan(θ/4). That bounds the radial error at 2.7 × 10⁻⁴ times the radius, and\nthe suite holds the drawn edge between 2.6 × 10⁻⁴ and 2.8 × 10⁻⁴. `splitCurve` subdivides by de\nCasteljau's construction and `pathFromData` reads the elliptical arc form of an SVG `d` attribute by\nthe conversion the specification itself gives.\n\n<img src=\"https://raw.githubusercontent.com/altpsyche/altpsyche-maths/master/docs/boolean.svg\" width=\"720\" alt=\"Two discs drawn three times side by side: everything either one covers, only what both cover, and the first with the second taken out of it.\">\n\n`unionOf`, `intersectionOf` and `differenceOf` operate on closed loops of cubics. Crossings are\nlocated per segment pair and refined by Newton's method, the surviving pieces are stitched, and the\nresult may contain a hole neither operand had. When the kept pieces fail to close, the call throws\nand the message states the piece count and the distance between the two open ends. Proximity is a\ndistance in figure units, `TOLERANCE = 1e-6` by default, rather than a fraction of anything.\n\n`areaOf` returns the signed area, positive for anticlockwise winding, summed over subpaths.\n`containsPoint` flattens to polylines and applies the nonzero winding rule. `lengthOf` and\n`pointAlong` measure by arc length, and `lengthOf` reads slightly short by the chord error of its\nsampling.\n\n## Graphs\n\nA **scale** is a pair of intervals: the numbers an axis counts through, and where those numbers land\nin figure units. `coordsOf` pairs two scales, and the mapping is a value the caller holds rather\nthan state read back out of a drawn group.\n\n`plot` samples a function and emits one Hermite cubic per interval. The control points sit a third\nof the way along in x and carry the sample's own slope, so the curve passes through both samples at\nboth slopes. `slopeOf` reads the slope off that curve's own cubics, which carry a quadratic with\nnothing left over, so a parabola reads exactly rather than to a difference's O(h²). `tangentAt`\nclips the tangent line to the graph analytically rather than by sampling, since a line crosses each\nedge once.\n\n`streamlineOf` integrates a field by fourth-order Runge-Kutta with a step in arc length rather than\nin time, which keeps the points evenly spaced. Halving the step divides the error along the curve by\n15.1 and then 15.6, against the factor of 16 the order predicts.\n\n## Space\n\n<img src=\"https://raw.githubusercontent.com/altpsyche/altpsyche-maths/master/docs/surface.svg\" width=\"720\" alt=\"A saddle-shaped surface drawn as a grid of shaded cells, with a flat pane cutting through it at one height and the two branches of the curve where they meet drawn in orange along the surface. Blue arrows across the pane show the way the saddle falls and three green runs of steepest descent are drawn on it.\">\n\n`camera3` holds an eye, a target, an up vector, a view matrix and a projection. `perspective` and\n`orthographic` supply the projection; the orthographic case is a scale rather than a divide and\ntherefore has no near plane. Every builder that works in space projects to figure units and returns\nthe same node types a graph returns, so one animation reaches both.\n\n`scene3` orders children back to front by the depth of their sample points, which is the painter's\nalgorithm. Mutually piercing pieces and cyclic overlaps admit no correct order. The answer is\nsmaller pieces: `surface3` cuts a surface into four-cornered cells, so two surfaces sort against\neach other rather than as two groups. The sort is stable, so pieces at equal depth hold the order\nthe author gave and a picture does not flicker between frames. `sectionOf` returns the runs of\npoints where a plane cuts a parametric surface, closing a run whose ends meet.\n\n## Time and motion\n\n<img src=\"https://raw.githubusercontent.com/altpsyche/altpsyche-maths/master/docs/rotate.svg\" width=\"720\" alt=\"Two panels side by side, each an L-shaped block turned part way round with a dot marking the point it turns about. In the left panel the dot sits at the middle of the block's own box. In the right it sits off to one side, so the block swings round it.\">\n\nAn **animation** maps marks and a fraction of a span to marks. Fifteen of them are supplied, among\nthem `draw`, `fadeIn`, `moveAlong`, `rotate`, `morph` and `morphEquation`, which pairs the glyphs of\ntwo typeset expressions and moves only the difference. Every animation is the identity at the start\nof its span. Every mark it introduces exists at every fraction, at zero opacity where it is not yet\nvisible, so a frame-to-frame comparison never reports an arrival.\n\n`Timeline` sequences animations by `play`, `together` and `stagger`, each span carrying its own\neasing curve. `Timeline.at` applies a finished span in full and an unstarted one at zero, making the\ntimeline a function of time rather than a record of what has played. Tracks are the second source of\nvalues: `sampleTrack` reads a keyed value at a time, holding the nearest key outside the keyed\nrange.\n\n`framesOf` walks a figure at a fixed rate or count and yields one frame at a time. A frame carries\nits index, its time, its marks and the view matrix built at that same time. The walk stops strictly\nbefore the duration, so a looping figure never emits its first frame twice.\n\n## Painters\n\n`svgMarkup` returns a document as a string and `svgElements` returns the elements as data.\n`paintSvg` replaces the children of an element already in a document, and `paintCanvas` draws into a\ntwo-dimensional context. Coordinates are written to three decimal places. That is finer than any\nscreen or encoder resolves, and coarse enough that the last bits of a double never reach the output.\nOne test paints a single mark list both ways and holds the two to the same geometry within a\nthousandth of a pixel, and to the same style exactly.\n\n## Restrictions\n\nA mark may request only what both painters implement: no filters and no blend modes. A figure using\nan SVG filter would render correctly on a page and lose the effect silently in a recording.\n\nA clip is a rectangle and no other shape, and that exclusion is not the rule above. Both painters\nclip, with `clip-path` and with `clip()`. An arbitrary path clip needs a winding number counted,\nwhich is a stencil on a card, where a box is the scissor test every device already has.\n\nA fill carries one colour and a gradient beside it. SVG names a gradient with an element carrying a\ndocument-unique identifier and a canvas with an object built from the context, and the one colour\nstays because a contrast reading and anything else needing a single colour has to have one.\n\nA stroke's width is one number or a taper between two numbers along a named curve, drawn as the\nfilled outline of its own path, since neither painter strokes at two widths. A width per point is not\nsomething a figure can name. A colour is four channels and, where its author gave it one, the name a\npage themes it under, so the SVG painter writes `var(--name, #rrggbb)` and every other painter reads\nthe numbers: a renderer in another language cannot resolve a custom property and a shader takes\nnumbers. `colourFrom` builds one from `'#1b1b1b'` or `'rgb(27, 27, 27)'` and throws on every other\nform rather than guessing. Nothing reads the page, and `getComputedStyle` appears nowhere in the\ntree.\n\nNo screenshot gates this package. Every assertion reads a mark list or a number, so the suite of\n1,065 tests over 67 files runs in Node without a browser. Comparisons are by tolerance rather than by hash, because\n`Math.sin`, `Math.cos` and `Math.pow` are not specified to the last bit and differ between engines.\n\n## Moving from 1.6.0\n\n1.6.0 was the version before this one on npm, and 2.0.0 is the figure format: a figure is a JSON\ndocument a program reads, `readFigure` and `writeFigure` are the two calls that carry it either way,\nand [docs/SPECIFICATION.md](docs/SPECIFICATION.md) states the whole of it for a renderer written in\nanother language.\n\n**The door is additive.** It went from 266 names to 375 and no name was removed or renamed.\n\n**A colour changes shape, and it is the change that reaches every caller.** A `Colour` was any CSS\ncolour written as text and is now four channels with an optional name, so every `Fill`, `Stroke` and\n`Stop` a caller builds moves with it.\n\n```ts\n// at 1.6.0\nshape('disc', circle(vec2(0, 0), 1), { fill: { colour: 'var(--accent, #fb923c)' } });\n// at 2.0.0\nshape('disc', circle(vec2(0, 0), 1), { fill: { colour: colourFrom('#fb923c', 'accent') } });\n```\n\n`colourFrom` reads a hex or an `rgb()` and takes the name a page themes the colour under, `colourOf`\nreads the channels alone, and `hexOf` and `colourText` write one back out. A form neither reads is\nrefused rather than painted as nothing: a named colour or an `hsl()` read as black is a wrong picture\nwith nothing to say it went wrong. The SVG painter still writes `var(--name, #rrggbb)`, from the\nchannels the colour holds, so a page themes a figure exactly as it did.\n\n**Three readers take the drawn path rather than the function behind it.**\n\n| call | at 1.6.0 | at 2.0.0 |\n| --- | --- | --- |\n| `slopeOf` | `(of, x, step?)` | `(coords, curve, x)` |\n| `areaUnder` | `(coords, of, over, options?)` | `(coords, curve, options?)` |\n| `tangentAt` | `(coords, of, x, options?)` | `(coords, curve, x, options?)` |\n\n**What that buys is a tangent that touches the curve a reader can see.** A slope read by a central\ndifference on the function differs from the slope of the cubic the curve is drawn as, and the two\nparted by 1.06e-11 at a parabola's stationary point. Reading the drawn path makes the tangent exact\nthere. `AreaOptions` no longer extends `PlotOptions`, since the sampling belongs to the `plot` that\nmade the curve, and `TangentOptions` loses `step`, since nothing is differenced any more.\n\n**`plot`, `riemannBars`, `vectorField`, `surface3`, `sectionOf` and `streamlineOf` still take a\nfunction** and always will. A function making fixed geometry never had to serialise, and a figure\nthat stores geometry stores what the function produced.\n\n**Nothing else a caller reads or implements changed shape.** `CanvasLike`, `PaintNode`, `Mark`,\n`Span` and `Stroke` are what 1.6.0 published.\n\n## Further reading\n\n[docs/GUIDE.md](docs/GUIDE.md) teaches the package in order. [docs/REFERENCE.md](docs/REFERENCE.md)\ncarries one entry for each of the 375 names at the door. [DESIGN.md](DESIGN.md) states why the\ndesign is what it is and what it will not become.\n\n`index.ts` is the entire public surface, and nothing outside the package reaches a file inside it by\npath. A line divides the package: values and timing below it, figures and painters above, and\nnothing below the line imports anything above it. A test holds each of those.\n\nMIT.\n","readmeFilename":"README.md"}