{"_id":"@blooooork/three-ui","name":"@blooooork/three-ui","dist-tags":{"latest":"1.0.0"},"versions":{"1.0.0":{"name":"@blooooork/three-ui","version":"1.0.0","description":"Professional 3D user interface components for Three.js applications","main":"dist/index.js","module":"dist/index.mjs","types":"dist/index.d.ts","scripts":{"build":"vite build","prepublishOnly":"npm run build"},"keywords":["three.js","webgl","ui","interface","components","3d-ui"],"author":{"name":"blooooork"},"license":"MIT","peerDependencies":{"three":"^0.160.0"},"publishConfig":{"access":"public"},"devDependencies":{"vite":"^5.0.8","three":"^0.160.0"},"_id":"@blooooork/three-ui@1.0.0","gitHead":"2eac8868bd395b89f78c7c6e1f1bca6df56266f1","_nodeVersion":"23.5.0","_npmVersion":"10.9.2","dist":{"integrity":"sha512-k+rYgtZ+9EDRxemeWtM/nO8V5kCZMmzFSIumKQVMESkAPmKIFpmUnsdpDy80YWIb6n2idhOLL1UEcHo0qgiyWQ==","shasum":"a00ff14aba96962538dd3f40af74ba16856fbb1f","tarball":"https://registry.npmjs.org/@blooooork/three-ui/-/three-ui-1.0.0.tgz","fileCount":4,"unpackedSize":9592,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCICt+8E4Uw/YcQuXwa9xB96/fjULE6EC88Uio7I+3+ES0AiEA3cWbRfoWbHopu6yQAYtQk2KCVNnnfJD9ivqlQzeccX4="}]},"_npmUser":{"name":"blooooork","email":"steven.meier77@gmail.com"},"directories":{},"maintainers":[{"name":"blooooork","email":"steven.meier77@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/three-ui_1.0.0_1740689355141_0.7640424384706417"},"_hasShrinkwrap":false}},"time":{"created":"2025-02-27T20:49:15.046Z","1.0.0":"2025-02-27T20:49:15.324Z","modified":"2025-02-27T20:49:15.622Z"},"maintainers":[{"name":"blooooork","email":"steven.meier77@gmail.com"}],"description":"Professional 3D user interface components for Three.js applications","keywords":["three.js","webgl","ui","interface","components","3d-ui"],"author":{"name":"blooooork"},"license":"MIT","readme":"# @blooooork/three-ui\n\nA professional 3D user interface component library for Three.js applications. Build beautiful, interactive 3D interfaces with ease using these high-performance, reusable components.\n\n## Features\n\n### 🎯 Title Block\nStylish 3D title component with wireframe effects:\n```javascript\nimport { TitleBlock } from '@blooooork/three-ui';\n\nconst title = new TitleBlock(scene, camera, {\n    width: 10,\n    height: 2.75,\n    color: 0xffffff,\n    wireframe: true\n});\n```\n\n### 🔗 Link Container\nInteractive 3D link container with click detection:\n```javascript\nimport { LinkContainer } from '@blooooork/three-ui';\n\nconst links = new LinkContainer(scene, camera, {\n    links: [\n        { id: 'github', texture: githubTexture, url: 'https://github.com' },\n        { id: 'twitter', texture: twitterTexture, url: 'https://twitter.com' }\n    ]\n});\n\n// Handle clicks\nrenderer.domElement.addEventListener('click', (event) => {\n    const point = {\n        x: (event.clientX / window.innerWidth) * 2 - 1,\n        y: -(event.clientY / window.innerHeight) * 2 + 1\n    };\n    links.onClick(point);\n});\n```\n\n### 📝 Text Frame\nAnimated text frame with smooth transitions:\n```javascript\nimport { TextFrame } from '@blooooork/three-ui';\n\nconst frame = new TextFrame(scene, camera, {\n    width: 10,\n    height: 5,\n    opacity: 0.8\n});\n\n// Animate to new position\nframe.animate(new THREE.Vector3(5, 0, 0), 1000);\n```\n\n### 🔲 Hide Button\nInteractive button with hover effects:\n```javascript\nimport { HideButton } from '@blooooork/three-ui';\n\nconst button = new HideButton(scene, camera, {\n    width: 1,\n    height: 1,\n    color: 0xffffff,\n    hoverColor: 0x00ff00\n});\n\nbutton.onClick((isHidden) => {\n    console.log('Button state:', isHidden ? 'hidden' : 'visible');\n});\n```\n\n## Installation\n\n```bash\nnpm install @blooooork/three-ui\n```\n\n## Requirements\n- three.js ^0.160.0\n\n## License\nMIT ","readmeFilename":"README.md"}