{"_id":"@dennisrongo/dsh-weather","_rev":"6-f0c1a3a36aea3a09876c8bfe5f9697e4","name":"@dennisrongo/dsh-weather","dist-tags":{"latest":"0.4.0"},"versions":{"0.1.0":{"name":"@dennisrongo/dsh-weather","version":"0.1.0","author":{"name":"Dennis Rongo"},"license":"MIT","_id":"@dennisrongo/dsh-weather@0.1.0","maintainers":[{"name":"dennisrongo","email":"dennis@menacestudio.com"}],"homepage":"https://github.com/dennisrongo/dsh-plugins/tree/main/plugins/dsh-weather#readme","bugs":{"url":"https://github.com/dennisrongo/dsh-plugins/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-runtime"],"platform":"web","immediately":true}},"dist":{"shasum":"a43ae0fd593bb7dca52fbc296dbaa68236dff3ba","tarball":"https://registry.npmjs.org/@dennisrongo/dsh-weather/-/dsh-weather-0.1.0.tgz","fileCount":5,"integrity":"sha512-Hegj1gVlbpsA2BPk9JX6P88xsvFI78Fh5Ygth4viK11rYOL4WF2hT8Rhr+AP9+Ww+vTmG7zqYe6iD9j1r2PKkg==","signatures":[{"sig":"MEUCIAFL2y3DE9DbxM3pr1oXm0Y/FBWI+LAeLyfZGlF3eGQMAiEAglW4QYxuFu7KldyufL+nCtSX1gNjaxQ6xDvB2cAJHws=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dennisrongo%2fdsh-weather@0.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":20320},"main":"lib/index.js","type":"module","types":"lib/types/index.d.ts","exports":{".":{"types":"./lib/types/index.d.ts","default":"./lib/index.js"},"./client":{"default":"./lib/client.js"},"./package.json":"./package.json"},"gitHead":"af2fc63d3ef2600cff8b0f1f03bfb89aa8ed5c88","scripts":{"test":"node test/smoke.mjs","build":"node build/build.mjs","deploy":"node build/postbuild.mjs","postbuild":"node build/postbuild.mjs","typecheck":"tsc --noEmit"},"_npmUser":{"name":"dennisrongo","email":"dennis@menacestudio.com"},"repository":{"url":"git+https://github.com/dennisrongo/dsh-plugins.git","type":"git","directory":"plugins/dsh-weather"},"_npmVersion":"10.9.8","description":"Weather bar for DeepSeek Harness (dsh) — current conditions at the bottom of the web UI via Open-Meteo, rendered into shell.overlay","directories":{},"_nodeVersion":"22.23.2","_hasShrinkwrap":false,"devDependencies":{"react":"^18.3.0","esbuild":"^0.24.0","react-dom":"^18.3.0","typescript":"^5.6.0","@types/react":"^18.3.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-weather_0.1.0_1787867496101_0.22137683243436035","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@dennisrongo/dsh-weather","version":"0.2.0","author":{"name":"Dennis Rongo"},"license":"MIT","_id":"@dennisrongo/dsh-weather@0.2.0","maintainers":[{"name":"dennisrongo","email":"dennis@menacestudio.com"}],"homepage":"https://github.com/dennisrongo/dsh-plugins/tree/main/plugins/dsh-weather#readme","bugs":{"url":"https://github.com/dennisrongo/dsh-plugins/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-runtime"],"platform":"web","immediately":true}},"dist":{"shasum":"963e8eaad8565756ca8a34d5f2579c86f07159a1","tarball":"https://registry.npmjs.org/@dennisrongo/dsh-weather/-/dsh-weather-0.2.0.tgz","fileCount":5,"integrity":"sha512-LYVuEG8mZeqofHM0acXdBZEcJs31BRNrF7ZjJdhztsK3/7A5ier6xeQjb4lD8nAAfd9lP3q6a/pl4kcmUrVneA==","signatures":[{"sig":"MEUCIQCL+D8vVOMbdDJhYFSBjNeQLG+zZ4RRzgfwGNB5YvkJAwIgNCE3Cmy9HyYPKO0M8e2m/euVR2tdKLRg4HkgQPQEZYA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dennisrongo%2fdsh-weather@0.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":20320},"main":"lib/index.js","type":"module","types":"lib/types/index.d.ts","exports":{".":{"types":"./lib/types/index.d.ts","default":"./lib/index.js"},"./client":{"default":"./lib/client.js"},"./package.json":"./package.json"},"gitHead":"e8ade9e9fdfff3981b3cd9753c3f79b0a4ba11e6","scripts":{"test":"node test/smoke.mjs","build":"node build/build.mjs","deploy":"node build/postbuild.mjs","postbuild":"node build/postbuild.mjs","typecheck":"tsc --noEmit"},"_npmUser":{"name":"dennisrongo","email":"dennis@menacestudio.com"},"repository":{"url":"git+https://github.com/dennisrongo/dsh-plugins.git","type":"git","directory":"plugins/dsh-weather"},"_npmVersion":"10.9.8","description":"Weather bar for DeepSeek Harness (dsh) — current conditions at the bottom of the web UI via Open-Meteo, rendered into shell.overlay","directories":{},"_nodeVersion":"22.23.2","_hasShrinkwrap":false,"devDependencies":{"react":"^18.3.0","esbuild":"^0.24.0","react-dom":"^18.3.0","typescript":"^5.6.0","@types/react":"^18.3.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-weather_0.2.0_1787880934818_0.36793965380954874","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@dennisrongo/dsh-weather","version":"0.3.0","author":{"name":"Dennis Rongo"},"license":"MIT","_id":"@dennisrongo/dsh-weather@0.3.0","maintainers":[{"name":"dennisrongo","email":"dennis@menacestudio.com"}],"homepage":"https://github.com/dennisrongo/dsh-plugins/tree/main/plugins/dsh-weather#readme","bugs":{"url":"https://github.com/dennisrongo/dsh-plugins/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-runtime"],"platform":"web","immediately":true}},"dist":{"shasum":"50f97364d1bee889858e81e4d7c5dadab1cb7485","tarball":"https://registry.npmjs.org/@dennisrongo/dsh-weather/-/dsh-weather-0.3.0.tgz","fileCount":5,"integrity":"sha512-5z4GkXMgv/PtMRciylypmkTFSEg9BdFmukIrtB05O0N6ix7OJIrKBUt7EaZ846lWeFcX1nyx016juwjz8wusYg==","signatures":[{"sig":"MEUCIQCre4zBhafglUDs4UK/4lOoFQ6TQDRYzOxEhmMaOIGXtwIgXm3rG93I9airFKswiujmdJFFSpoMQoYwqqhtV1uIlL4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dennisrongo%2fdsh-weather@0.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":20320},"main":"lib/index.js","type":"module","types":"lib/types/index.d.ts","exports":{".":{"types":"./lib/types/index.d.ts","default":"./lib/index.js"},"./client":{"default":"./lib/client.js"},"./package.json":"./package.json"},"gitHead":"377c8ef55a1bc9a64a99d08a7b73c398ae83b113","scripts":{"test":"node test/smoke.mjs","build":"node build/build.mjs","deploy":"node build/postbuild.mjs","postbuild":"node build/postbuild.mjs","typecheck":"tsc --noEmit"},"_npmUser":{"name":"dennisrongo","email":"dennis@menacestudio.com"},"repository":{"url":"git+https://github.com/dennisrongo/dsh-plugins.git","type":"git","directory":"plugins/dsh-weather"},"_npmVersion":"10.9.8","description":"Weather bar for DeepSeek Harness (dsh) — current conditions at the bottom of the web UI via Open-Meteo, rendered into shell.overlay","directories":{},"_nodeVersion":"22.23.2","_hasShrinkwrap":false,"devDependencies":{"react":"^18.3.0","esbuild":"^0.24.0","react-dom":"^18.3.0","typescript":"^5.6.0","@types/react":"^18.3.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-weather_0.3.0_1787891187249_0.12884560831865843","host":"s3://npm-registry-packages-npm-production"}},"0.3.1":{"name":"@dennisrongo/dsh-weather","version":"0.3.1","author":{"name":"Dennis Rongo"},"license":"MIT","_id":"@dennisrongo/dsh-weather@0.3.1","maintainers":[{"name":"dennisrongo","email":"dennis@menacestudio.com"}],"homepage":"https://github.com/dennisrongo/dsh-plugins/tree/main/plugins/dsh-weather#readme","bugs":{"url":"https://github.com/dennisrongo/dsh-plugins/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-runtime"],"platform":"web","immediately":true}},"dist":{"shasum":"9a5bcb53c0931134d833aa2f6c0639e1491b037d","tarball":"https://registry.npmjs.org/@dennisrongo/dsh-weather/-/dsh-weather-0.3.1.tgz","fileCount":5,"integrity":"sha512-dvZz4TLvOACsCdweHtUmpkK+5rJydeP84+5FKZh61wAw2QpZrd7x7b9skV8i6w3jWObXyEFnhL0qUBmVCWBRXQ==","signatures":[{"sig":"MEQCIGZdgMCBUq4Db3uJrekGkGmb8ohky2B32uycxxWqpsPHAiAU09o58HzGauBhXtIAu7cLP440uDRulU4rSsm1HOXKCA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dennisrongo%2fdsh-weather@0.3.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":21752},"main":"lib/index.js","type":"module","types":"lib/types/index.d.ts","exports":{".":{"types":"./lib/types/index.d.ts","default":"./lib/index.js"},"./client":{"default":"./lib/client.js"},"./package.json":"./package.json"},"gitHead":"c3611c436258283184a3b4f7027308fed223289b","scripts":{"test":"node build/build.mjs && node test/smoke.mjs","build":"node build/build.mjs","deploy":"node build/postbuild.mjs","postbuild":"node build/postbuild.mjs","typecheck":"tsc --noEmit"},"_npmUser":{"name":"dennisrongo","email":"dennis@menacestudio.com"},"repository":{"url":"git+https://github.com/dennisrongo/dsh-plugins.git","type":"git","directory":"plugins/dsh-weather"},"_npmVersion":"10.9.8","description":"Weather bar for DeepSeek Harness (dsh) — current conditions at the bottom of the web UI via Open-Meteo, rendered into shell.overlay","directories":{},"_nodeVersion":"22.23.2","_hasShrinkwrap":false,"devDependencies":{"react":"^18.3.0","esbuild":"^0.24.0","react-dom":"^18.3.0","typescript":"^5.6.0","@types/react":"^18.3.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-weather_0.3.1_1787949894125_0.2873657191996062","host":"s3://npm-registry-packages-npm-production"}},"0.3.2":{"name":"@dennisrongo/dsh-weather","version":"0.3.2","author":{"name":"Dennis Rongo"},"license":"MIT","_id":"@dennisrongo/dsh-weather@0.3.2","maintainers":[{"name":"dennisrongo","email":"dennis@menacestudio.com"}],"homepage":"https://github.com/dennisrongo/dsh-plugins/tree/main/plugins/dsh-weather#readme","bugs":{"url":"https://github.com/dennisrongo/dsh-plugins/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-runtime"],"platform":"web","immediately":true}},"dist":{"shasum":"625b5d1cb46151be31856d46932a49fcccd826aa","tarball":"https://registry.npmjs.org/@dennisrongo/dsh-weather/-/dsh-weather-0.3.2.tgz","fileCount":5,"integrity":"sha512-ifi87Z3SdemjJweAr2IXZr14//tT0/OqqrA0EGjvtHv+zA7JFJDtX5yfkmvT+NTP3oC06pIMOVISV8MDJ7EWTQ==","signatures":[{"sig":"MEUCIFAauUXQFELRncGpTbAJdjrt54PX3SSnpk/OejlsiaSyAiEAzchU8Xpr4cqkBGVhyL4jTIsuN7CsJpS3oZAPtkxShXo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dennisrongo%2fdsh-weather@0.3.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":28363},"main":"lib/index.js","type":"module","types":"lib/types/index.d.ts","exports":{".":{"types":"./lib/types/index.d.ts","default":"./lib/index.js"},"./client":{"default":"./lib/client.js"},"./package.json":"./package.json"},"gitHead":"b037914e62a2b12d5c76d3387b218f96319d7a54","scripts":{"test":"node build/build.mjs && node test/smoke.mjs","build":"node build/build.mjs","deploy":"node build/postbuild.mjs","postbuild":"node build/postbuild.mjs","typecheck":"tsc --noEmit"},"_npmUser":{"name":"dennisrongo","email":"dennis@menacestudio.com"},"repository":{"url":"git+https://github.com/dennisrongo/dsh-plugins.git","type":"git","directory":"plugins/dsh-weather"},"_npmVersion":"10.9.8","description":"Weather bar for DeepSeek Harness (dsh) — current conditions at the bottom of the web UI via Open-Meteo, rendered into shell.overlay","directories":{},"_nodeVersion":"22.23.2","_hasShrinkwrap":false,"devDependencies":{"react":"^18.3.0","esbuild":"^0.24.0","react-dom":"^18.3.0","typescript":"^5.6.0","@types/react":"^18.3.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-weather_0.3.2_1788288079224_0.18507699833913893","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@dennisrongo/dsh-weather","version":"0.4.0","description":"Weather bar for DeepSeek Harness (dsh) — current conditions at the bottom of the web UI via Open-Meteo, rendered into shell.overlay","type":"module","license":"MIT","author":{"name":"Dennis Rongo"},"main":"lib/index.js","types":"lib/types/index.d.ts","exports":{".":{"types":"./lib/types/index.d.ts","default":"./lib/index.js"},"./client":{"default":"./lib/client.js"},"./package.json":"./package.json"},"scripts":{"build":"node build/build.mjs","postbuild":"node build/postbuild.mjs","deploy":"node build/postbuild.mjs","typecheck":"tsc --noEmit","test":"node build/build.mjs && node test/smoke.mjs && node test/position.mjs"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"client":{"platform":"web","inject":["@deepseek-ai/dsh-client-runtime"],"immediately":true}},"devDependencies":{"@types/react":"^18.3.0","esbuild":"^0.24.0","react":"^18.3.0","react-dom":"^18.3.0","typescript":"^5.6.0"},"repository":{"type":"git","url":"git+https://github.com/dennisrongo/dsh-plugins.git","directory":"plugins/dsh-weather"},"homepage":"https://github.com/dennisrongo/dsh-plugins/tree/main/plugins/dsh-weather#readme","bugs":{"url":"https://github.com/dennisrongo/dsh-plugins/issues"},"_id":"@dennisrongo/dsh-weather@0.4.0","gitHead":"946f3a27fb4359ea4bb615147f26002acafaa3b3","_nodeVersion":"22.23.2","_npmVersion":"10.9.8","dist":{"integrity":"sha512-59b4r6ytqfgtYsYNdOwpenCxvJArBD1LR08a8zzTxFtZbkn28ewnpKOSouUgzDEdGammA+fIbhyW5y9t+7d+QQ==","shasum":"ff46746090730e5329abcdb28f071d6477975562","tarball":"https://registry.npmjs.org/@dennisrongo/dsh-weather/-/dsh-weather-0.4.0.tgz","fileCount":5,"unpackedSize":37905,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dennisrongo%2fdsh-weather@0.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDXJPCxlgUcWZG7sFm7lWQF3eXgc6a+R6XR/XsGhirqGgIgT9cv+Gpqa2WRPi/dhfoe/X3nvLHYQLYtiV34L12Ithc="}]},"_npmUser":{"name":"dennisrongo","email":"dennis@menacestudio.com"},"directories":{},"maintainers":[{"name":"dennisrongo","email":"dennis@menacestudio.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/dsh-weather_0.4.0_1788299749009_0.1374653235298382"},"_hasShrinkwrap":false}},"time":{"created":"2026-08-27T21:51:35.872Z","modified":"2026-09-01T21:55:49.511Z","0.1.0":"2026-08-27T21:51:36.236Z","0.2.0":"2026-08-28T01:35:34.962Z","0.3.0":"2026-08-28T04:26:27.374Z","0.3.1":"2026-08-28T20:44:54.263Z","0.3.2":"2026-09-01T18:41:19.367Z","0.4.0":"2026-09-01T21:55:49.139Z"},"bugs":{"url":"https://github.com/dennisrongo/dsh-plugins/issues"},"author":{"name":"Dennis Rongo"},"license":"MIT","homepage":"https://github.com/dennisrongo/dsh-plugins/tree/main/plugins/dsh-weather#readme","repository":{"type":"git","url":"git+https://github.com/dennisrongo/dsh-plugins.git","directory":"plugins/dsh-weather"},"description":"Weather bar for DeepSeek Harness (dsh) — current conditions at the bottom of the web UI via Open-Meteo, rendered into shell.overlay","maintainers":[{"name":"dennisrongo","email":"dennis@menacestudio.com"}],"readme":"# dsh-weather\n\n[![npm](https://img.shields.io/npm/v/@dennisrongo/dsh-weather)](https://www.npmjs.com/package/@dennisrongo/dsh-weather)\n\n**npm:** [`@dennisrongo/dsh-weather`](https://www.npmjs.com/package/@dennisrongo/dsh-weather) ·\n**source:** [dennisrongo/dsh-plugins](https://github.com/dennisrongo/dsh-plugins/tree/main/plugins/dsh-weather)\n\nWeather bar for the [DeepSeek Harness](https://github.com/deepseek-ai/dsh) web UI — current conditions, a short hourly outlook, humidity and wind, pinned across the top of the page.\n\n- **Data:** [Open-Meteo](https://open-meteo.com) (free, no API key) via the browser.\n- **Location:** `localStorage[\"dsh-weather:location\"] = \"Your City\"` if set, else a coarse IP-geolocation provider chain, else New York.\n- **Placement:** drag the pill anywhere. Until you move it, it stays centred on the space the shell has actually left it, not on the viewport — it measures the shell frame's content box (which already excludes `dsh-mission-control`'s docked rail) and subtracts any overlay flying a `data-dsh-overlay-claim=\"right\"` marker, today `dsh-plan-board`'s plan panel. After a drag the spot is remembered (cookie `dsh-weather-pos`, with `localStorage[\"dsh-weather:pos\"]` as a fallback) so it survives a web UI or DSH Desktop restart. Click the temperature to toggle units; that does not start a drag.\n- **Mount point:** additive `shell.overlay` slot — pure-consumer client plugin, empty host half.\n- **Units:** Fahrenheit by default — click the temperature to toggle °F/°C. The choice is remembered in `localStorage[\"dsh-weather:unit\"]`.\n- **Refresh:** every 15 min, plus a manual ⟳ button.\n\n## Build\n\n```sh\npnpm install\npnpm build\npnpm test\n```\n\n## Use in a dsh profile\n\n```json\n{ \"dependencies\": { \"@dennisrongo/dsh-weather\": \"file:../dsh-weather\" } }\n```\n\n```yaml\n# cordis.patch.yml\n- insert:\n    - id: dsh-weather\n      name: '@dennisrongo/dsh-weather'\n```\n\nRestart the profile; the bar appears across the top of the web UI.\n","readmeFilename":"README.md"}