{"_id":"r3form","_rev":"38-960b8768c60e1fcb60a0e060dcad0e18","name":"r3form","dist-tags":{"latest":"0.3.14"},"versions":{"0.3.0":{"name":"r3form","version":"0.3.0","keywords":["react","three.js","react-three-fiber","3d","form","r3form"],"author":{"name":"TomH"},"license":"MIT","_id":"r3form@0.3.0","maintainers":[{"name":"tomgh","email":"tomghdev@gmail.com"}],"dist":{"shasum":"4c0f0b9fe6c4ca8d08c1ab0217434b8318306c19","tarball":"https://registry.npmjs.org/r3form/-/r3form-0.3.0.tgz","fileCount":3,"integrity":"sha512-lCglFXIyY3uWr4SYA2hafCSZFI8ahCOL36FpqRDH6Odty0cS2WpjDtLRIO7PU8GXkjU+k8miVgFDzEucPRrIlg==","signatures":[{"sig":"MEUCIGOhscbNWw7JrHa6HNw2Wr41uWENLQylgCBW5Xzy2G7+AiEAsUKyFxMaVnbHvysfyIIDTm0RKUuBxV8xZ05vHzhsUKI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1743805},"main":"dist/r3form.cjs.js","type":"module","module":"dist/r3form.es.js","gitHead":"dff3ede4f92e70c87fca06d7af1ef08a74fe2f2b","scripts":{"test":"echo \"No test specified\" && exit 0","build":"vite build","start":"vite"},"_npmUser":{"name":"tomgh","email":"tomghdev@gmail.com"},"_npmVersion":"11.4.1","description":"A modular 3D React form library built with react-three-fiber","directories":{},"_nodeVersion":"22.12.0","dependencies":{"three":"^0.160.0","@react-three/drei":"^10.0.0","@react-three/fiber":"^9.0.0"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^7.2.6","react":"^19.0.0","react-dom":"^19.0.0","@vitejs/plugin-react":"^5.1.1"},"peerDependencies":{"react":"^19.0.0","react-dom":"^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/r3form_0.3.0_1764862472203_0.5146650127600763","host":"s3://npm-registry-packages-npm-production"}},"0.3.1":{"name":"r3form","version":"0.3.1","keywords":["react","three.js","react-three-fiber","3d","form","r3form"],"author":{"name":"TomH"},"license":"MIT","_id":"r3form@0.3.1","maintainers":[{"name":"tomgh","email":"tomghdev@gmail.com"}],"dist":{"shasum":"cf9216636a5dda3737213192bee33b412f943c8b","tarball":"https://registry.npmjs.org/r3form/-/r3form-0.3.1.tgz","fileCount":4,"integrity":"sha512-MA/Po+KMzimiVRAroluTj8yqxU9INykkdhJa+lYYY5oe4ofxYTt3+6MO+xFOC2lzC3lqCrGqOIjAaXhYA0Zl+g==","signatures":[{"sig":"MEQCIH8BlqxolJAIXqWAkmuC22X7qv2wkFPkLMKtmqxwDWbsAiBRIuCJP4J08cftUodqTf4VdfJQeopIKnwG1qKh1HHd1Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1748135},"main":"dist/r3form.cjs.js","type":"module","types":"dist/index.d.ts","module":"dist/r3form.es.js","gitHead":"dff3ede4f92e70c87fca06d7af1ef08a74fe2f2b","scripts":{"test":"echo \"No test specified\" && exit 0","build":"vite build","start":"vite"},"_npmUser":{"name":"tomgh","email":"tomghdev@gmail.com"},"_npmVersion":"11.4.1","description":"A modular 3D React form library built with react-three-fiber","directories":{},"_nodeVersion":"22.12.0","dependencies":{"three":"^0.160.0","@react-three/drei":"^10.0.0","@react-three/fiber":"^9.0.0"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^7.2.6","react":"^19.0.0","react-dom":"^19.0.0","@vitejs/plugin-react":"^5.1.1"},"peerDependencies":{"react":"^19.0.0","react-dom":"^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/r3form_0.3.1_1764863462406_0.47070454298913833","host":"s3://npm-registry-packages-npm-production"}},"0.3.2":{"name":"r3form","version":"0.3.2","keywords":["react","three.js","react-three-fiber","3d","form","r3form"],"author":{"name":"TomH"},"license":"MIT","_id":"r3form@0.3.2","maintainers":[{"name":"tomgh","email":"tomghdev@gmail.com"}],"dist":{"shasum":"912eaa669f1239736673620231fe5b9d78c1677b","tarball":"https://registry.npmjs.org/r3form/-/r3form-0.3.2.tgz","fileCount":4,"integrity":"sha512-udg/xElURnAp94MyvKggTaHG0qOEe+HYZupMzFy+0aP0f+1alKPyJmdO66YhqT3hHwAV+V9TOP23quHJrRpemA==","signatures":[{"sig":"MEUCIQCCf0YFAIG4f/IJLWsqUlUlDFHZshEmdm+1yNF1ssN+rgIgG0h3iVHmkljSCkBUQa41Ad4RL2jHrfOsu7tJGv4g6z0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1749897},"main":"dist/r3form.cjs.js","type":"module","types":"dist/index.d.ts","module":"dist/r3form.es.js","gitHead":"0d890083a7b1d16b8aba5cb0bdb4b9e1a644623b","scripts":{"test":"echo \"No test specified\" && exit 0","build":"vite build","start":"vite"},"_npmUser":{"name":"tomgh","email":"tomghdev@gmail.com"},"_npmVersion":"11.4.1","description":"A modular 3D React form library built with react-three-fiber","directories":{},"_nodeVersion":"22.12.0","dependencies":{"three":"^0.160.0","@react-three/drei":"^10.0.0","@react-three/fiber":"^9.0.0"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^7.2.6","react":"^19.0.0","react-dom":"^19.0.0","@vitejs/plugin-react":"^5.1.1"},"peerDependencies":{"react":"^19.0.0","react-dom":"^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/r3form_0.3.2_1764868670737_0.6967976949558772","host":"s3://npm-registry-packages-npm-production"}},"0.3.3":{"name":"r3form","version":"0.3.3","keywords":["react","three.js","react-three-fiber","3d","form","r3form"],"author":{"name":"TomH"},"license":"MIT","_id":"r3form@0.3.3","maintainers":[{"name":"tomgh","email":"tomghdev@gmail.com"}],"dist":{"shasum":"d014aa5fdf19cf4f252199f832f0054ec6316077","tarball":"https://registry.npmjs.org/r3form/-/r3form-0.3.3.tgz","fileCount":4,"integrity":"sha512-irSD5NXmmHyywK38agLBmmlHRP5dG4lOzJ6gJnLDbb61iH5v1Ug3PdDm9/C9bMDbJMBNPZ1e4sOEsTS9wWhg7A==","signatures":[{"sig":"MEQCIEAkz3w/3Kd9GNrGtcTzqyq0t8uaw/4XqvZsKWSZEuXVAiAjC28VpuTf5/JhH5oWXUZRfD++SMMPOyaPGoSsS1epxg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1750075},"main":"dist/r3form.cjs.js","type":"module","types":"dist/index.d.ts","module":"dist/r3form.es.js","gitHead":"807c448bb7be27164d158f9be8dd2f6c7e965bb3","scripts":{"test":"echo \"No test specified\" && exit 0","build":"vite build","start":"vite"},"_npmUser":{"name":"tomgh","email":"tomghdev@gmail.com"},"_npmVersion":"11.4.1","description":"A modular 3D React form library built with react-three-fiber","directories":{},"_nodeVersion":"22.12.0","dependencies":{"three":"^0.160.0","@react-three/drei":"^10.0.0","@react-three/fiber":"^9.0.0"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^7.2.6","react":"^19.0.0","react-dom":"^19.0.0","@vitejs/plugin-react":"^5.1.1"},"peerDependencies":{"react":"^19.0.0","react-dom":"^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/r3form_0.3.3_1764869243145_0.2689536749870607","host":"s3://npm-registry-packages-npm-production"}},"0.3.4":{"name":"r3form","version":"0.3.4","keywords":["react","three.js","react-three-fiber","3d","form","r3form"],"author":{"name":"TomH"},"license":"MIT","_id":"r3form@0.3.4","maintainers":[{"name":"tomgh","email":"tomghdev@gmail.com"}],"dist":{"shasum":"5deee9edc427ac2fa5a3386651751b894982bc2f","tarball":"https://registry.npmjs.org/r3form/-/r3form-0.3.4.tgz","fileCount":4,"integrity":"sha512-/4Cl68ybPqFNRdfXEmr0KbGRMFYDxZvIiJjjLmVBsGk0lDGruxdHozCPvdSuQ/VuR+qZcZp6t7gIlO2uABIy6A==","signatures":[{"sig":"MEQCIHmDQ8Ap+B/tNolN+8/1X3l3NYBriQ2nJ0BJ9ANSNNRtAiBt6O3tsvaC3avfBlEH6ei29mu4phgTs8qpEhLlfo/W+w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1750079},"main":"dist/r3form.cjs.js","type":"module","types":"dist/index.d.ts","module":"dist/r3form.es.js","gitHead":"c3654719154cad901e458e463f301346f0010e72","scripts":{"test":"echo \"No test specified\" && exit 0","build":"vite build","start":"vite"},"_npmUser":{"name":"tomgh","email":"tomghdev@gmail.com"},"_npmVersion":"11.4.1","description":"A modular 3D React form library built with react-three-fiber","directories":{},"_nodeVersion":"22.12.0","dependencies":{"three":"^0.160.0","@react-three/drei":"^10.0.0","@react-three/fiber":"^9.0.0"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^7.2.6","react":"^19.0.0","react-dom":"^19.0.0","@vitejs/plugin-react":"^5.1.1"},"peerDependencies":{"react":"^19.0.0","react-dom":"^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/r3form_0.3.4_1764869319406_0.6005008564341192","host":"s3://npm-registry-packages-npm-production"}},"0.3.5":{"name":"r3form","version":"0.3.5","keywords":["react","three.js","react-three-fiber","3d","form","r3form"],"author":{"name":"TomH"},"license":"MIT","_id":"r3form@0.3.5","maintainers":[{"name":"tomgh","email":"tomghdev@gmail.com"}],"dist":{"shasum":"af6d7f7cd67dadbf45c5c0b4814111925849be4a","tarball":"https://registry.npmjs.org/r3form/-/r3form-0.3.5.tgz","fileCount":4,"integrity":"sha512-y29dwCugEbmKcLZGFmOhkYURqo5v/Q+1l5EM5V0FB2wx4STm7J6bwE4YMb1ajAY0P5nMaDwKiIE2ycwO7BwyNg==","signatures":[{"sig":"MEYCIQDms+A7yVaoD0Vba9CQsmV2Oi4Jr6Mgiml22InrTa4itwIhANDhp0fTk+iZliwoQX2TjffCp9hvKj7vg0BN7zq5b/Jz","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1750093},"main":"dist/r3form.cjs.js","type":"module","types":"dist/index.d.ts","module":"dist/r3form.es.js","gitHead":"70b9518f8f92ba2ebf9d93f5b64786c72aafa57b","scripts":{"test":"echo \"No test specified\" && exit 0","build":"vite build","start":"vite"},"_npmUser":{"name":"tomgh","email":"tomghdev@gmail.com"},"_npmVersion":"11.4.1","description":"A modular 3D React form library built with react-three-fiber","directories":{},"_nodeVersion":"22.12.0","dependencies":{"three":"^0.160.0","@react-three/drei":"^10.0.0","@react-three/fiber":"^9.0.0"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^7.2.6","react":"^19.0.0","react-dom":"^19.0.0","@vitejs/plugin-react":"^5.1.1"},"peerDependencies":{"react":"^19.0.0","react-dom":"^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/r3form_0.3.5_1764869552594_0.8920210681158836","host":"s3://npm-registry-packages-npm-production"}},"0.3.6":{"name":"r3form","version":"0.3.6","keywords":["react","three.js","react-three-fiber","3d","form","r3form"],"author":{"name":"TomH"},"license":"MIT","_id":"r3form@0.3.6","maintainers":[{"name":"tomgh","email":"tomghdev@gmail.com"}],"dist":{"shasum":"919a2430a5ac35f3b9d55ca9171b55080ef10664","tarball":"https://registry.npmjs.org/r3form/-/r3form-0.3.6.tgz","fileCount":4,"integrity":"sha512-UElLg4I4vImAzTWn6o5Haj5heAXM8svHqwTuOqsIss4waBbC2Qf2ZUm7hzWaMqEvPWUwXtI3WJXVz+ldCQ93VQ==","signatures":[{"sig":"MEYCIQDurX6RU9GG9cwJfTUeztNEAB/S+smx3VYoSFBvsLJTJwIhAP57w1QaQGNX33Y297bmVg+3HOkaDzOTZwpYV7Oj+T9N","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1750093},"main":"dist/r3form.cjs.js","type":"module","types":"dist/index.d.ts","module":"dist/r3form.es.js","gitHead":"70b9518f8f92ba2ebf9d93f5b64786c72aafa57b","scripts":{"test":"echo \"No test specified\" && exit 0","build":"vite build","start":"vite"},"_npmUser":{"name":"tomgh","email":"tomghdev@gmail.com"},"_npmVersion":"11.4.1","description":"A modular 3D React form library built with react-three-fiber","directories":{},"_nodeVersion":"22.12.0","dependencies":{"three":"^0.160.0","@react-three/drei":"^10.0.0","@react-three/fiber":"^9.0.0"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^7.2.6","react":"^19.0.0","react-dom":"^19.0.0","@vitejs/plugin-react":"^5.1.1"},"peerDependencies":{"react":"^19.0.0","react-dom":"^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/r3form_0.3.6_1764869967650_0.36248782511084854","host":"s3://npm-registry-packages-npm-production"}},"0.3.7":{"name":"r3form","version":"0.3.7","keywords":["react","three.js","react-three-fiber","3d","form","r3form"],"author":{"name":"TomH"},"license":"MIT","_id":"r3form@0.3.7","maintainers":[{"name":"tomgh","email":"tomghdev@gmail.com"}],"dist":{"shasum":"54216a86042d528dd0fc2f42652bdbc7cc204815","tarball":"https://registry.npmjs.org/r3form/-/r3form-0.3.7.tgz","fileCount":4,"integrity":"sha512-M989seGY8+6XRKt/QNpo+sj0vQsYxV9ZqL+Il5jjwkpxfEuXwJVhqvsKtR44uu/VoPG6B5IgVRfVblGtDVuyGQ==","signatures":[{"sig":"MEUCIGCmvBKkpGn076P1VbjchEY33XewMy4SpGWjjjiiAEHRAiEAu5lCp0WroZMfBYpPeKZlvkl1RGSoYWv80m+WTqlsYno=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1750093},"main":"dist/r3form.cjs.js","type":"module","types":"dist/index.d.ts","module":"dist/r3form.es.js","gitHead":"70b9518f8f92ba2ebf9d93f5b64786c72aafa57b","scripts":{"test":"echo \"No test specified\" && exit 0","build":"vite build","start":"vite"},"_npmUser":{"name":"tomgh","email":"tomghdev@gmail.com"},"_npmVersion":"11.4.1","description":"A modular 3D React form library built with react-three-fiber","directories":{},"_nodeVersion":"22.12.0","dependencies":{"three":"^0.160.0","@react-three/drei":"^10.0.0","@react-three/fiber":"^9.0.0"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^7.2.6","react":"^19.0.0","react-dom":"^19.0.0","@vitejs/plugin-react":"^5.1.1"},"peerDependencies":{"react":"^19.0.0","react-dom":"^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/r3form_0.3.7_1764870079550_0.6373996091816805","host":"s3://npm-registry-packages-npm-production"}},"0.3.8":{"name":"r3form","version":"0.3.8","keywords":["react","three.js","react-three-fiber","3d","form","r3form"],"author":{"name":"TomH"},"license":"MIT","_id":"r3form@0.3.8","maintainers":[{"name":"tomgh","email":"tomghdev@gmail.com"}],"dist":{"shasum":"a94fae87f4296bc669cac070933da3194c02267b","tarball":"https://registry.npmjs.org/r3form/-/r3form-0.3.8.tgz","fileCount":3,"integrity":"sha512-Y2foV3QlTAMFe/8GYWIbLIBI6QqXtUTdcq3UUn2r29Mvh5r7Q3HGe8SXqilMTK33JzAu4v6gQFZPeeonxx41mA==","signatures":[{"sig":"MEUCIQCLHsKCu/Ubto+cNqToQlD+7yLcSGrc1DnxbsO45AaImgIgYUqfz6I7Ytzo5UWaV8972BoGxZN0TVw50XiukyKrZbI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1746330},"main":"dist/r3form.cjs.js","type":"module","types":"dist/index.d.ts","module":"dist/r3form.es.js","gitHead":"70b9518f8f92ba2ebf9d93f5b64786c72aafa57b","scripts":{"test":"echo \"No test specified\" && exit 0","build":"vite build","start":"vite"},"_npmUser":{"name":"tomgh","email":"tomghdev@gmail.com"},"_npmVersion":"11.4.1","description":"A modular 3D React form library built with react-three-fiber","directories":{},"_nodeVersion":"22.12.0","dependencies":{"three":"^0.160.0","@react-three/drei":"^10.0.0","@react-three/fiber":"^9.0.0"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^7.2.6","react":"^19.0.0","react-dom":"^19.0.0","@vitejs/plugin-react":"^5.1.1"},"peerDependencies":{"react":"^19.0.0","react-dom":"^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/r3form_0.3.8_1764870685424_0.48061926928269316","host":"s3://npm-registry-packages-npm-production"}},"0.3.9":{"name":"r3form","version":"0.3.9","keywords":["react","three.js","react-three-fiber","3d","form","r3form"],"author":{"name":"TomH"},"license":"MIT","_id":"r3form@0.3.9","maintainers":[{"name":"tomgh","email":"tomghdev@gmail.com"}],"dist":{"shasum":"08f23c2cc955f65efe03fa3cbd234796c2109b63","tarball":"https://registry.npmjs.org/r3form/-/r3form-0.3.9.tgz","fileCount":3,"integrity":"sha512-FOs/dSntFfMWliv16YUU5UBXjQZe2birXf0oJZHRMQwEemztDKXNdZ2s7jMOV9UD9nhpCtstfywcv/NvuwMKkQ==","signatures":[{"sig":"MEQCIDoKvnLnZm2fRJVytAh8tojpIDwCCjmB4g5fKn060/W2AiAkbCTufyn7IPAyi4v8Ltfns0oh7qQcNQYSNX/FdBjbew==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1723848},"main":"dist/r3form.cjs.js","type":"module","types":"dist/index.d.ts","module":"dist/r3form.es.js","gitHead":"844a9b90ceba362d1a0ab8fa25f5e06afeeb0cb8","scripts":{"test":"echo \"No test specified\" && exit 0","build":"vite build","start":"vite"},"_npmUser":{"name":"tomgh","email":"tomghdev@gmail.com"},"_npmVersion":"11.4.1","description":"Build immersive, modular 3D forms in React with r3form — powered by react-three-fiber.","directories":{},"_nodeVersion":"22.12.0","dependencies":{"three":"^0.160.0","@react-three/drei":"^10.0.0","@react-three/fiber":"^9.0.0"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^7.2.6","react":"^19.0.0","react-dom":"^19.0.0","@vitejs/plugin-react":"^5.1.1"},"peerDependencies":{"react":"^19.0.0","react-dom":"^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/r3form_0.3.9_1764871265846_0.4057128309739342","host":"s3://npm-registry-packages-npm-production"}},"0.3.10":{"name":"r3form","version":"0.3.10","keywords":["react","three.js","react-three-fiber","3d","form","r3form"],"author":{"name":"TomH"},"license":"MIT","_id":"r3form@0.3.10","maintainers":[{"name":"tomgh","email":"tomghdev@gmail.com"}],"dist":{"shasum":"830d4f56aacca87026478a24174c08d6941a66e9","tarball":"https://registry.npmjs.org/r3form/-/r3form-0.3.10.tgz","fileCount":4,"integrity":"sha512-XBbVuPsVhFpRHjfb/f2/5m+vUiNenJBp+pkqzHoCWt1grUpqW2Lld/zQQmQFergQlodrHT952Hk0IOdxHIjwAg==","signatures":[{"sig":"MEUCID5RDj92UmCLolMhJ7wDWGu0E3GXpLCvU630VM2FJujSAiEAx0dLsaNlE29EsI92lm5XZSdDgeYdE73+1a5WkgV8LA4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1724576},"main":"dist/r3form.cjs.js","type":"module","types":"dist/index.d.ts","module":"dist/r3form.es.js","gitHead":"844a9b90ceba362d1a0ab8fa25f5e06afeeb0cb8","scripts":{"test":"echo \"No test specified\" && exit 0","build":"vite build","start":"vite"},"_npmUser":{"name":"tomgh","email":"tomghdev@gmail.com"},"_npmVersion":"11.4.1","description":"Build immersive, modular 3D forms in React with r3form — powered by react-three-fiber.","directories":{},"_nodeVersion":"22.12.0","dependencies":{"three":"^0.160.0","@react-three/drei":"^10.0.0","@react-three/fiber":"^9.0.0"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^7.2.6","react":"^19.0.0","react-dom":"^19.0.0","@vitejs/plugin-react":"^5.1.1"},"peerDependencies":{"react":"^19.0.0","react-dom":"^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/r3form_0.3.10_1764938246037_0.2710779321223118","host":"s3://npm-registry-packages-npm-production"}},"0.3.11":{"name":"r3form","version":"0.3.11","keywords":["react","three.js","react-three-fiber","3d","form","r3form"],"author":{"name":"TomH"},"license":"MIT","_id":"r3form@0.3.11","maintainers":[{"name":"tomgh","email":"tomghdev@gmail.com"}],"dist":{"shasum":"51a408a100e8755467c671569655d580755744f8","tarball":"https://registry.npmjs.org/r3form/-/r3form-0.3.11.tgz","fileCount":4,"integrity":"sha512-+wX2zWf9MizjQHT7cfFioWX5E3J5GFhztPR1mJiK74rDzyiDsHqCjf+rbalSMU9pZ8cF9GuSolr0Eqd1z+D7Fg==","signatures":[{"sig":"MEUCIQDdu8AeUIrLIck7F4zJIrCRLR1fJToNwlUnjZBu9Hp7VAIgNyH5bCM0sIf86R0j8uw7EUXtO+chguDeFKzYcWR9Ab8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1724259},"main":"dist/r3form.cjs.js","type":"module","types":"dist/index.d.ts","module":"dist/r3form.es.js","gitHead":"d13664baee2a73f2513b6492f04de341b07277cc","scripts":{"test":"echo \"No test specified\" && exit 0","build":"vite build","start":"vite"},"_npmUser":{"name":"tomgh","email":"tomghdev@gmail.com"},"_npmVersion":"11.4.1","description":"Build immersive, modular 3D forms in React with r3form — powered by react-three-fiber.","directories":{},"_nodeVersion":"22.12.0","dependencies":{"three":"^0.160.0","@react-three/drei":"^10.0.0","@react-three/fiber":"^9.0.0"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^7.2.6","react":"^19.0.0","react-dom":"^19.0.0","@vitejs/plugin-react":"^5.1.1"},"peerDependencies":{"react":"^19.0.0","react-dom":"^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/r3form_0.3.11_1764939308627_0.34950958447842506","host":"s3://npm-registry-packages-npm-production"}},"0.3.12":{"name":"r3form","version":"0.3.12","keywords":["react","three.js","react-three-fiber","3d","form","r3form"],"author":{"name":"TomH"},"license":"MIT","_id":"r3form@0.3.12","maintainers":[{"name":"tomgh","email":"tomghdev@gmail.com"}],"dist":{"shasum":"6792ab817343cb0e1d2ae26fd02851cc20bec5f7","tarball":"https://registry.npmjs.org/r3form/-/r3form-0.3.12.tgz","fileCount":3,"integrity":"sha512-KQiPhnB9w8IfrJDq0iq9aINROA7qVJfSDW2zSznKpfJAJ0CohgR40hXamNSEPONrGmP2yowZ79MNgz9LIRzEnA==","signatures":[{"sig":"MEUCIFEhCHExLaYaj02AAhjotX0+s1RpE6JnKue06qmmUyiLAiEAzIHu+LXLVB/MOWyWDYJ6EA2s60ehTqt0CRq+9DOAvys=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1728788},"main":"dist/r3form.cjs.js","type":"module","types":"dist/index.d.ts","module":"dist/r3form.es.js","gitHead":"df7cf2a27b73ed67e97085ad6dcb3269fd15bfae","scripts":{"test":"echo \"No test specified\" && exit 0","build":"vite build","start":"vite"},"_npmUser":{"name":"tomgh","email":"tomghdev@gmail.com"},"_npmVersion":"11.4.1","description":"Build immersive, modular 3D forms in React with r3form — powered by react-three-fiber.","directories":{},"_nodeVersion":"22.12.0","dependencies":{"three":"^0.160.0","@react-three/drei":"^10.0.0","@react-three/fiber":"^9.0.0"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^7.2.6","react":"^19.0.0","react-dom":"^19.0.0","@vitejs/plugin-react":"^5.1.1"},"peerDependencies":{"react":"^19.0.0","react-dom":"^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/r3form_0.3.12_1764943663544_0.04889372465682751","host":"s3://npm-registry-packages-npm-production"}},"0.3.13":{"name":"r3form","version":"0.3.13","keywords":["react","three.js","react-three-fiber","3d","form","r3form"],"author":{"name":"TomH"},"license":"MIT","_id":"r3form@0.3.13","maintainers":[{"name":"tomgh","email":"tomghdev@gmail.com"}],"dist":{"shasum":"cbe68ee569d959724c033b826d1fe288f2ef2e46","tarball":"https://registry.npmjs.org/r3form/-/r3form-0.3.13.tgz","fileCount":4,"integrity":"sha512-6g5806UlhDKOCltt8R1Hyk4nDE+QmhNHch/D5TNoHfyAyuYC8Kfsln9gJrNKzOXdZsCn+s+Gk5xYSxzK7BFZCg==","signatures":[{"sig":"MEUCIQDOE0FOagxhr/E4+xlsw192OsrFvhHot0DYpo6MpqqK9wIgBexF/zbC3bcZ6jrqALQ4H99NoV9qCG8ixCFt+dR2G80=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1740990},"main":"dist/r3form.cjs.js","type":"module","types":"dist/index.d.ts","module":"dist/r3form.es.js","gitHead":"7a9e8149edf7dfbbecb555927dfecc7900c7f9fb","scripts":{"test":"echo \"No test specified\" && exit 0","build":"vite build","start":"vite"},"_npmUser":{"name":"tomgh","email":"tomghdev@gmail.com"},"_npmVersion":"11.4.1","description":"Build immersive, modular 3D forms in React with r3form — powered by react-three-fiber.","directories":{},"_nodeVersion":"22.12.0","dependencies":{"three":"^0.160.0","@react-three/drei":"^10.0.0","@react-three/fiber":"^9.0.0"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^7.2.6","react":"^19.0.0","react-dom":"^19.0.0","@vitejs/plugin-react":"^5.1.1"},"peerDependencies":{"react":"^19.0.0","react-dom":"^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/r3form_0.3.13_1765204997542_0.2621581552382044","host":"s3://npm-registry-packages-npm-production"}},"0.3.14":{"name":"r3form","version":"0.3.14","description":"Build immersive, modular 3D forms in React with r3form — powered by react-three-fiber.","main":"dist/r3form.cjs.js","module":"dist/r3form.es.js","type":"module","types":"dist/index.d.ts","scripts":{"start":"vite","build":"vite build","test":"echo \"No test specified\" && exit 0"},"keywords":["react","three.js","react-three-fiber","3d","form","r3form"],"author":{"name":"TomH"},"license":"MIT","dependencies":{"@react-three/fiber":"^9.0.0","@react-three/drei":"^10.0.0","three":"^0.160.0"},"peerDependencies":{"react":"^19.0.0","react-dom":"^19.0.0"},"devDependencies":{"vite":"^7.2.6","@vitejs/plugin-react":"^5.1.1","react":"^19.0.0","react-dom":"^19.0.0"},"_id":"r3form@0.3.14","gitHead":"c2be0588e51011e3065cc58f61fd95e3c6861fe3","_nodeVersion":"22.12.0","_npmVersion":"11.4.1","dist":{"integrity":"sha512-nB9/dND7TfVUI1dyVdAnvfGa2RKF+qeZj3TIh+waq7nvxF8ZRLndh2yyP2B4XlRz5mqRF8wzLUQeeFVwSHu03g==","shasum":"f311ec5fff3d854ffd17b800432107d7e6c9e201","tarball":"https://registry.npmjs.org/r3form/-/r3form-0.3.14.tgz","fileCount":4,"unpackedSize":1742717,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCm2+ySopJ2J3iUv4cXajyh7qhlmFpDJh76jvBYAtIqEwIgaKxX/J96ewEv05ck5zIeUzJi/rUA5KH5QCQK/Y+L9Dc="}]},"_npmUser":{"name":"tomgh","email":"tomghdev@gmail.com"},"directories":{},"maintainers":[{"name":"tomgh","email":"tomghdev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/r3form_0.3.14_1765206575838_0.7260213847832426"},"_hasShrinkwrap":false}},"time":{"created":"2025-12-04T15:34:32.202Z","modified":"2025-12-08T15:09:36.263Z","0.1.0":"2025-12-01T13:24:47.221Z","0.1.1":"2025-12-01T14:28:25.895Z","0.1.2":"2025-12-01T14:32:42.264Z","0.1.3":"2025-12-01T14:34:04.867Z","0.1.4":"2025-12-01T14:35:53.182Z","0.1.5":"2025-12-01T14:37:54.152Z","0.1.6":"2025-12-01T14:39:21.755Z","0.1.7":"2025-12-01T14:40:53.956Z","0.1.8":"2025-12-01T14:41:37.527Z","0.1.9":"2025-12-01T14:43:17.961Z","0.1.10":"2025-12-01T14:51:09.461Z","0.1.11":"2025-12-01T14:52:05.350Z","0.1.12":"2025-12-01T18:52:39.021Z","0.1.13":"2025-12-01T19:06:00.088Z","0.1.14":"2025-12-01T19:07:07.717Z","0.1.15":"2025-12-01T19:07:17.872Z","0.1.16":"2025-12-01T19:07:56.675Z","0.1.17":"2025-12-01T19:08:04.631Z","0.1.18":"2025-12-02T11:31:53.511Z","0.1.19":"2025-12-02T11:35:57.395Z","0.2.0":"2025-12-03T15:07:50.779Z","0.3.0":"2025-12-04T15:34:32.373Z","0.3.1":"2025-12-04T15:51:02.616Z","0.3.2":"2025-12-04T17:17:50.933Z","0.3.3":"2025-12-04T17:27:23.315Z","0.3.4":"2025-12-04T17:28:39.620Z","0.3.5":"2025-12-04T17:32:32.763Z","0.3.6":"2025-12-04T17:39:27.840Z","0.3.7":"2025-12-04T17:41:19.740Z","0.3.8":"2025-12-04T17:51:25.604Z","0.3.9":"2025-12-04T18:01:06.024Z","0.3.10":"2025-12-05T12:37:26.232Z","0.3.11":"2025-12-05T12:55:08.801Z","0.3.12":"2025-12-05T14:07:43.756Z","0.3.13":"2025-12-08T14:43:17.708Z","0.3.14":"2025-12-08T15:09:36.073Z"},"author":{"name":"TomH"},"license":"MIT","keywords":["react","three.js","react-three-fiber","3d","form","r3form"],"description":"Build immersive, modular 3D forms in React with r3form — powered by react-three-fiber.","maintainers":[{"name":"tomgh","email":"tomghdev@gmail.com"}],"readme":"# R3Form\r\n\r\n##### **A React Three Fiber-based 3D form system for interactive UI elements in 3D space.** \r\n---\r\n![R3Form Promo Image](https://github.com/DevTomUK/r3form/blob/main/r3form.png?raw=true)\r\n![R3Form Demo](https://github.com/DevTomUK/r3form/blob/main/r3formDisplay.gif?raw=true)\r\n\r\n###### `R3Form` allows you to build 3D forms with interactive inputs, dynamic borders, camera targeting, and smooth hover/press animations.\r\n\r\n###### [GitHub Repo](https://github.com/DevTomUK/r3form)\r\n---\r\n\r\n## Features\r\n\r\n- Fully 3D interactive form fields with text or switch input.\r\n- Structured form data is created automatically on submit.\r\n- Dynamic borders that respond to hover, press, and active states.\r\n- Smooth color and position animations using `lerp`.\r\n- Automatic camera targeting when a field is focused.\r\n- Compatible with `@react-three/fiber` and `@react-three/drei`.\r\n\r\n---\r\n\r\n## Installation\r\n\r\n```bash\r\nnpm install r3form\r\n# or\r\nyarn add r3form\r\n```\r\n\r\n---\r\n\r\n## Usage\r\n\r\nClick below to watch the video guide, or follow the steps below:\r\n\r\n[![Watch the video](https://github.com/DevTomUK/r3form/blob/main/r3formYT.png?raw=true)](https://youtu.be/YyEQybPI8i0)\r\n\r\n\r\nImport required components from `r3form`.\r\n\r\n```jsx\r\nimport { R3Form, Input3D, SubmitButton } from \"r3form\";\r\n```\r\n\r\n\r\nInside your component, use the R3Form elements:\r\n```jsx\r\nfunction App() {\r\n  return (\r\n    <R3Form onSubmit={(vals) => submitForm(vals)}>\r\n      <Input3D name=\"First Name\" />\r\n      <Input3D name=\"Surname\" />\r\n      <SubmitButton type=\"Submit\">\r\n        Submit\r\n      </SubmitButton>\r\n    </R3Form>\r\n  );\r\n}\r\n```\r\nStructured form values are automatically passed to the onSubmit callback as an object:\r\n```jsx\r\n  function submitForm(vals) {\r\n  }\r\n```\r\n\r\nExample:\r\n```json\r\n{\r\n  \"First Name\": \"Tom\",\r\n  \"Surname\": \"H\"\r\n}\r\n```\r\n\r\n\r\n### Components\r\n\r\n#### `<R3Form />`\r\n\r\nThe main container for your 3D form. Provides context for inputs, manages camera targeting, styling, and handles submission.\r\n\r\n**Props:**\r\n\r\n- `children` (ReactNode) – The form fields/components (e.g., `<Input3D />`, `<Button3D />`).\r\n- `onSubmit` (Function) – Callback that receives the form values object when submitting the form.\r\n- `width` (string || number, default `\"100%\"`) – Width of the canvas container.\r\n- `height` (string || number, default `100%`) – Height of the canvas container.\r\n- `cameraPosition` (string, default `\"front\"`) – Camera position relative to the form (e.g., `\"bottom-right\"`, `\"top-left\"`, `\"left\"`, `\"right\"`, etc...).\r\n- `shadows` (boolean, default `true`) – Enable or disable shadows in the 3D scene.\r\n- `background` (boolean, default `true`) – Enable or disable the visibility of the form background.\r\n- `formColor` (string, default `\"#ffd700\"`) – Colour of the form background.\r\n- `backgroundColor` (string, default `\"#defdfe\"`) – Background colour of the scene. Can use hex with alpha for opacity.\r\n- `formWidth` (number, default `6`) – Width of the 3D form background in scene units.\r\n- `formHeight` (number, default `6`) – Height of the 3D form background in scene units.\r\n- `padding` (number, default `1`) – Padding around the form background in 3D space.\r\n- `gap` (number, default `0.5`) – Vertical gap between form elements in 3D space.\r\n- `zoom` (number, default `1`) – Zoom factor for calculating camera distance from the form.\r\n- `borderColor` (string, default `\"#000000\"`) – Default colour of the form borders.\r\n- `borderColorHover` (string, default `\"#ffffff\"`) – Border colour when hovering over a form element.\r\n- `borderColorActive` (string, default `\"#ffffff\"`) – Border colour when an element is active or being dragged.\r\n- `borderEmissionHoverColor` (string, default `\"#444444\"`) – Emission colour of the border when hovered.\r\n- `borderEmissionActiveColor` (string, default `\"#ffffff\"`) – Emission colour of the border when active/dragged.\r\n- `labelColor` (string, default `\"#000000\"`) – Color of the form labels.\r\n\r\n\r\n**Usage Example:**\r\n\r\n```jsx\r\n<R3Form width=\"100%\" height=\"200px\" onSubmit={(vals) => console.log(vals)}>\r\n  ...\r\n</R3Form>\r\n```\r\n\r\n---\r\n\r\n#### `<Input3D />`\r\n\r\nA 3D interactive input field.\r\n\r\n**Props:**\r\n\r\n- `name` (string) – Unique name of the input field. Stores in the object handed back from onSubmit.\r\n- `width` (number, default `6`) – Width of the field.\r\n- `height` (number, default `1`) – Height of the field.\r\n- `borderWidth` (number, default `0.05`) – Thickness of the field border.\r\n- `borderDepth` (number, default `0.1`) – Z-depth of the border.\r\n- `hoverDepth` (number, default `0.1`) – Z-offset applied on hover.\r\n- `showFieldBackground` (boolean, default `false`) – Whether to display a background plane behind the input.\r\n- `elementStyles` (object) - Created in R3Form component - handles styling for border and label colours.\r\n\r\n\r\n```jsx\r\n<Input3D name=\"Username\" />\r\n<Input3D name=\"Password\" />\r\n\r\n```\r\n\r\n---\r\n\r\n#### `<Switch3D />`\r\n\r\nA 3D interactive toggle switch component.\r\n\r\n**Props:**\r\n\r\n- `name` (string) – Unique name of the switch. Value is stored in the object handed back from `onSubmit`.  \r\n- `position` (array, default `[0, 0, 0]`) – `[x, y, z]` position of the switch in 3D space.  \r\n- `width` (number, default `6`) – Total width of the switch including label and borders.  \r\n- `switchWidth` (number, default `1.2`) – Width of the switch track.  \r\n- `height` (number, default `0.5`) – Height of the switch track.  \r\n- `borderWidth` (number, default `0.05`) – Thickness of the track borders.  \r\n- `borderDepth` (number, default `0.1`) – Z-depth of the borders.  \r\n- `toggleWidth` (number, default `0.6`) – Width of the toggle handle.  \r\n- `labelSize` (number, default `0.3`) – Font size of the switch label.  \r\n- `elementStyles` (object) – Styling for borders, hover, active states, and label color. Should contain:  \r\n  - `borderColor` (string, default `\"#000000\"`) – Default border color.  \r\n  - `borderColorHover` (string, default `\"#ffffff\"`) – Border color when hovering.  \r\n  - `borderColorActive` (string, default `\"#ffffff\"`) – Border color when active.  \r\n  - `borderEmissionHoverColor` (string, default `\"#444444\"`) – Emission color of the border on hover.  \r\n  - `borderEmissionActiveColor` (string, default `\"#ffffff\"`) – Emission color of the border when active/toggled.  \r\n  - `labelColor` (string, default `\"#000000\"`) – Color of the switch label.  \r\n\r\n**Behavior:**\r\n\r\n- Click the switch to toggle between `true` and `false`.  \r\n- Toggle handle animates smoothly between on/off positions.  \r\n- Borders glow on hover and when active.  \r\n- Track color changes to indicate enabled state.  \r\n- Value is stored in the form context object and normalized to `true`/`false`.  \r\n\r\n**Example Usage:**\r\n\r\n```jsx\r\n<Switch3D\r\n  name=\"EnableSound\"\r\n  width={6}\r\n  switchWidth={1.5}\r\n  height={0.5}\r\n  toggleWidth={0.6}\r\n  labelSize={0.3}\r\n  elementStyles={{\r\n    borderColor: \"#000000\",\r\n    borderColorHover: \"#ffffff\",\r\n    borderColorActive: \"#ffffff\",\r\n    borderEmissionHoverColor: \"#444444\",\r\n    borderEmissionActiveColor: \"#ffffff\",\r\n    labelColor: \"#000000\"\r\n  }}\r\n/>\r\n\r\n<Switch3D\r\n  name=\"DarkMode\"\r\n  width={5}\r\n  switchWidth={1.2}\r\n  height={0.5}\r\n  toggleWidth={0.5}\r\n  labelSize={0.25}\r\n  elementStyles={{\r\n    borderColor: \"#222222\",\r\n    borderColorHover: \"#ff0000\",\r\n    borderColorActive: \"#00ff00\",\r\n    borderEmissionHoverColor: \"#888888\",\r\n    borderEmissionActiveColor: \"#ffffff\",\r\n    labelColor: \"#000000\"\r\n  }}\r\n/>\r\n\r\n\r\n---\r\n\r\n#### `<Slider3D />`\r\n\r\nA 3D interactive slider/knob component.\r\n\r\n**Props:**\r\n\r\n- `name` (string) – Unique name of the slider. Value is stored in the object handed back from `onSubmit`.  \r\n- `width` (number, default `4`) – Width of the slider rail.  \r\n- `labelSize` (number, default `0.3`) – Font size of the slider label.  \r\n- `elementStyles` (object) – Handles styling for borders, hover, active states, and label colors. Should contain:  \r\n  - `borderColor` (string, default `\"#000000\"`) – Default rail/knob border color.  \r\n  - `borderColorHover` (string, default `\"#ffffff\"`) – Border color when hovering over the knob.  \r\n  - `borderColorActive` (string, default `\"#ffffff\"`) – Border color when dragging/active.  \r\n  - `borderEmissionHoverColor` (string, default `\"#444444\"`) – Emission color of the border on hover.  \r\n  - `borderEmissionActiveColor` (string, default `\"#ffffff\"`) – Emission color of the border when active/dragged.  \r\n  - `labelColor` (string, default `\"#000000\"`) – Color of the slider label.  \r\n\r\n**Behavior:**\r\n\r\n- Click and drag the knob to change the value.  \r\n- Hovering over the knob highlights the torus border.  \r\n- Dragging/active state illuminates the knob.  \r\n- Value is normalized between 0 and 1 and stored in the form context.  \r\n\r\n**Example Usage:**\r\n\r\n```jsx\r\n<Slider3D\r\n  name=\"Volume\"\r\n  width={6}\r\n  labelSize={0.35}\r\n  elementStyles={{\r\n    borderColor: \"#000000\",\r\n    borderColorHover: \"#ffffff\",\r\n    borderColorActive: \"#ffffff\",\r\n    borderEmissionHoverColor: \"#444444\",\r\n    borderEmissionActiveColor: \"#ffffff\",\r\n    labelColor: \"#000000\"\r\n  }}\r\n/>\r\n\r\n<Slider3D\r\n  name=\"Brightness\"\r\n  width={4}\r\n  labelSize={0.3}\r\n  elementStyles={{\r\n    borderColor: \"#222222\",\r\n    borderColorHover: \"#ff0000\",\r\n    borderColorActive: \"#00ff00\",\r\n    borderEmissionHoverColor: \"#888888\",\r\n    borderEmissionActiveColor: \"#ffffff\",\r\n    labelColor: \"#000000\"\r\n  }}\r\n/>\r\n\r\n\r\n---\r\n\r\n#### `<SubmitButton />`\r\n\r\nA 3D interactive button.\r\n\r\n**Props:**\r\n\r\n- `width` (number, optional) – Width of the button. Defaults to BaseButton default if not provided.\r\n- `height` (number, optional) – Height of the button. Defaults to BaseButton default if not provided.\r\n- `depth` (number, optional) – Depth (Z-size) of the button. Defaults to BaseButton default if not provided.\r\n- `radius` (number, optional) – Corner radius of the button. Defaults to BaseButton default if not provided.\r\n- `smoothness` (number, optional) – Number of segments for the rounded corners. Defaults to BaseButton default if not provided.\r\n- `color` (string, optional, default `\"#00cc88\"`) – Button color when not hovered.\r\n- `hoverColor` (string, optional, default `\"#00ffaa\"`) – Button color on hover.\r\n- `pressDepth` (number, optional) – Z-offset applied when the button is pressed. Defaults to BaseButton default.\r\n- `label` (string, optional, default `\"Submit\"`) – Text displayed on the button.\r\n- `fontSize` (number, optional) – Size of the text label. Defaults to BaseButton default if not provided.\r\n- `heightPos` (number, optional, default `0`) – Vertical position of the button in the 3D scene.\r\n\r\n\r\n```jsx\r\n<SubmitButton>Submit</SubmitButton>\r\n```\r\n\r\n---\r\n\r\n### License\r\n\r\nMIT © Tom H\r\n\r\n---\r\n\r\n### Notes\r\n\r\n- Designed to work with stacked 3D elements; calculates height position and gaps for elements from form height.\r\n- Supports smooth hover and press animations with `lerp` for performance-friendly interactions.\r\n- Integrates seamlessly with `@react-three/fiber` and `@react-three/drei`.\r\n\r\n\r\n---\r\n\r\n### Contribute\r\n\r\nFeel free to help with this project and become a contributor! Please fork the repo and add new 3D form elements, following the structure of the current elements.\r\nIf you find this package helpful then please help it grow by giving it a star on GitHub!\r\n\r\nCheck out the [GitHub Repo](https://github.com/DevTomUK/r3form)","readmeFilename":"readme.MD"}