npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

weather-fetch-cli

v1.0.3

Published

CLI and TypeScript library for location-based weather forecasts and URL web fetching

Readme

weather-fetch-cli

A TypeScript CLI and library for location-based weather forecasts and URL web fetching.

It provides:

  • fetch: retrieve a known URL with text, markdown, or html output
  • weather: resolve a place name and fetch a daily forecast in one command

Requirements

  • Node.js 18 or newer

Install From npm

Run without installing:

npx weather-fetch-cli weather "대전 동구"

Install globally:

npm install --global weather-fetch-cli
weather-fetch-cli weather "대전 동구"

Install From Source

npm install
npm run build

CLI Usage

Get tomorrow's forecast:

weather-fetch-cli weather "대전 동구"

Get a specific date in JSON:

weather-fetch-cli weather "대전 동구" --date 2026-03-09 --json

Fetch any URL directly:

weather-fetch-cli fetch "https://api.open-meteo.com/v1/forecast?latitude=36.3120&longitude=127.4554&daily=weather_code,temperature_2m_max,temperature_2m_min&timezone=Asia%2FSeoul" --format text

Library Usage

import { fetchWeatherForecast, webfetch } from "weather-fetch-cli"

const forecast = await fetchWeatherForecast("대전 동구", { date: "tomorrow" })
console.log(forecast.weatherSummary, forecast.temperatureMax, forecast.temperatureMin)

const response = await webfetch({
  url: "https://api.open-meteo.com/v1/forecast?latitude=36.3120&longitude=127.4554&daily=weather_code&timezone=Asia%2FSeoul",
  format: "text",
  timeoutSeconds: 30,
})

console.log(response.output)

Development

npm run check
npm run test
npm run build

Data Sources

  • Geocoding: Nominatim (OpenStreetMap)
  • Forecasts: Open-Meteo

Publish Checklist

npm run check
npm run test
npm run build
npm pack --dry-run

Release Flow

This repository uses tag-based releases.

  1. Update package.json version.
  2. Push the commit to main.
  3. Create and push a matching tag such as v1.0.1.
  4. GitHub Actions will:
    • validate that the tag matches package.json
    • run check, test, and build
    • attach the generated .tgz tarball to a GitHub Release
    • publish the package to npm
git tag v1.0.1
git push origin main --tags

For npm publishing, configure npm Trusted Publishing for this GitHub repository so the Release workflow can publish without a long-lived NPM_TOKEN.