{"_id":"@bobfrankston/wallclock","_rev":"3-56bd46744781ee2500510e0deb0a9e50","name":"@bobfrankston/wallclock","dist-tags":{"latest":"2.1.365"},"versions":{"2.0.286":{"name":"@bobfrankston/wallclock","version":"2.0.286","keywords":["clock","analog","timer","pwa","voice-control","fullscreen"],"author":{"name":"Bob Frankston"},"license":"MIT","_id":"@bobfrankston/wallclock@2.0.286","maintainers":[{"name":"bobfrankston","email":"npm@bob.ma"}],"homepage":"https://github.com/bobfrankston/wallclock#readme","bugs":{"url":"https://github.com/bobfrankston/wallclock/issues"},"dist":{"shasum":"ce9f7037cbb7ad380fe0b3ff3d66dcba49bdc3f5","tarball":"https://registry.npmjs.org/@bobfrankston/wallclock/-/wallclock-2.0.286.tgz","fileCount":120,"integrity":"sha512-bWue5LhG6q4WbX5Weq/tjfSV2GcR0n9qT11rHhJbVIvKZr07HZr5LrU24G3f7hn+fILpn1rk5Y7UMuOH1vM9Pg==","signatures":[{"sig":"MEQCID2kug1NcCIT+BoCar7iDmE3WvYLap1wTiaPa0jrp7l9AiBJso019YhJrYsdny/JLloKrmtHfDmVfPtCWxDmfwqXMw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4669545},"main":"clock.js","type":"module","types":"./clock.d.ts","gitHead":"46c935f75160f62b6380adc5b2c0de243621ecc0","scripts":{"dev":"npx http-server -p 8080 -c-1","build":"tsc","watch":"tsc --watch"},"_npmUser":{"name":"bobfrankston","email":"npm@bob.ma"},"repository":{"url":"git+https://github.com/bobfrankston/wallclock.git","type":"git"},"_npmVersion":"11.5.2","description":"A full-screen analog wall clock with timer and voice control","directories":{},"_nodeVersion":"24.6.0","dependencies":{"@tensorflow/tfjs":"^4.22.0","@picovoice/porcupine-web":"^3.0.3","@picovoice/web-voice-processor":"^4.0.8","@tensorflow-models/speech-commands":"^0.5.4"},"_hasShrinkwrap":false,"devDependencies":{"@types/node":"latest","http-server":"^14.1.1"},"_npmOperationalInternal":{"tmp":"tmp/wallclock_2.0.286_1759111337136_0.8454709416253128","host":"s3://npm-registry-packages-npm-production"}},"2.1.365":{"name":"@bobfrankston/wallclock","version":"2.1.365","description":"A full-screen analog wall clock with timer and voice control","type":"module","main":"clock.js","bin":{"wallclock-deploy":"deploy/wallclock-deploy.js"},"scripts":{"dev":"npx http-server -p 8080 -c-1","build":"tsc","watch":"tsc --watch","version:increment":"node support/increment-version.js","release":"node support/release.js","postinstall":"node ./deploy/postinstall.js"},"repository":{"type":"git","url":"git+https://github.com/BobFrankston/wallclock.git"},"keywords":["clock","analog","timer","pwa","voice-control","fullscreen"],"author":{"name":"Bob Frankston"},"license":"MIT","devDependencies":{"@types/node":"^25.0.9","http-server":"^14.1.1"},"dependencies":{"@bobfrankston/msgapidefs":"^0.1.29","@picovoice/porcupine-web":"^3.0.3","@picovoice/web-voice-processor":"^4.0.8","@tensorflow-models/speech-commands":"^0.5.4","@tensorflow/tfjs":"^4.22.0"},"publishConfig":{"access":"public"},"types":"./clock.d.ts","_id":"@bobfrankston/wallclock@2.1.365","bugs":{"url":"https://github.com/BobFrankston/wallclock/issues"},"homepage":"https://github.com/BobFrankston/wallclock#readme","_integrity":"sha512-L6PF7NWBzy35rWkC2gyZZcUgjd7TgsB9aqOLTAGEy+URGeD5nfulGHIRza+Zkg+z9fPlDYF8UFxxW4g57+E/Sg==","_resolved":"C:\\Users\\Bob\\OneDrive\\xfer\\bin\\wallclock\\bobfrankston-wallclock-2.1.365.tgz","_from":"file:bobfrankston-wallclock-2.1.365.tgz","_nodeVersion":"25.3.0","_npmVersion":"11.7.0","dist":{"integrity":"sha512-L6PF7NWBzy35rWkC2gyZZcUgjd7TgsB9aqOLTAGEy+URGeD5nfulGHIRza+Zkg+z9fPlDYF8UFxxW4g57+E/Sg==","shasum":"ec01098c1aa09d6f928e009e8da2c97f2910d9aa","tarball":"https://registry.npmjs.org/@bobfrankston/wallclock/-/wallclock-2.1.365.tgz","fileCount":99,"unpackedSize":5889440,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQClLbc6MD6znXpCLoHI3/3bJo8Sns9UFhZQp3IeMWu9gAIgbuvVsis90N9xstPUSEqjQ/iQYnjXGAB/cjCd/52nF/U="}]},"_npmUser":{"name":"bobfrankston","email":"npm@bob.ma"},"directories":{},"maintainers":[{"name":"bobfrankston","email":"npm@bob.ma"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/wallclock_2.1.365_1773087064971_0.8760799944662037"},"_hasShrinkwrap":false}},"time":{"created":"2025-09-29T02:02:17.136Z","modified":"2026-03-09T20:11:05.500Z","2.0.286":"2025-09-29T02:02:17.389Z","2.1.365":"2026-03-09T20:11:05.312Z"},"bugs":{"url":"https://github.com/BobFrankston/wallclock/issues"},"author":{"name":"Bob Frankston"},"license":"MIT","homepage":"https://github.com/BobFrankston/wallclock#readme","keywords":["clock","analog","timer","pwa","voice-control","fullscreen"],"repository":{"type":"git","url":"git+https://github.com/BobFrankston/wallclock.git"},"description":"A full-screen analog wall clock with timer and voice control","maintainers":[{"name":"bobfrankston","email":"npm@bob.ma"}],"readme":"# WallClock PWA\r\n\r\nA voice-controlled analog timer with AI-enhanced command parsing.\r\n\r\n## Quick Start\r\n1. Open `index.html` in Chrome/Edge  \r\n2. Voice control auto-starts after 2 seconds\r\n3. Say \"timer 5 minutes\" or \"cancel timer\"\r\n4. Double-click for full screen\r\n\r\n## Features\r\n- Voice-controlled timer with wake word detection\r\n- AI-enhanced parsing (optional) for complex commands  \r\n- Analog clock with countdown dots\r\n- PWA with offline support\r\n- Theme support (light/dark/system)\r\n\r\n## Documentation\r\n📖 **Primary Documentation**: See `docs/` folder for current development guides and project documentation.\r\n📚 **Additional Resources**: See `md/` folder for detailed technical notes, setup instructions, and project history.\r\n\r\n## Version\r\nCurrent: v1.141 - AI parser now calculates exact seconds for precise time-based timers\r\n\r\n## Development\r\n```bash\r\nnpm install\r\nnpm run dev    # Start development server\r\n```\r\n\r\nTypeScript files are auto-compiled with `tsc --watch`.","readmeFilename":"README.md"}