# wego

> Terminal weather client showing 1–7 day forecasts from several backends, rendered as an ASCII-art table, emoji, markdown, or JSON.

Stars: 8.6k · Language: Go · License: ISC · Categories: Network

- Repository: https://github.com/schachmat/wego
- Page: https://www.trmn.sh/tools/wego

## Install

- Go: `go install github.com/schachmat/wego@latest`

## Overview

wego is a weather client for the terminal, written in Go. It fetches a forecast for 1 to 7 days and shows temperature range (felt and measured), wind speed and direction, viewing distance, precipitation amount and probability, and humidity. Running `wego 4 London` or `wego London 4` shows the current day and the next three days for London; argument order does not matter.

Data comes from a selectable backend: openweathermap, weatherapi, open-meteo, smhi, caiyun, worldweatheronline, pirateweather, or a local json file. Open-Meteo and SMHI need no API key, and most other backends do. Output is chosen with `--frontend`: `ascii-art-table` (the default, in color), `emoji`, `markdown`, or `json`. Unit systems are metric, imperial, si, and metric-ms. Colors can be turned off with `--monochrome` or the `NO_COLOR` environment variable.

Configuration lives in a `wegorc` file, generated on first run in `$XDG_CONFIG_HOME/wego/`. It holds the default location, backend, API keys, days, units, and language, and command-line arguments override it. The `WEGORC` environment variable can point to a different file. Weather data can be cached on disk with a configurable TTL (`--cache-ttl`). The `json` backend and `json` frontend can be piped together to compose wego with other tools. A man page is built in (`wego --man`). The tool suits developers and terminal users who want a quick forecast from the command line.

### Installation

```bash
# via Go
go install github.com/schachmat/wego@latest
```

![wego showing a weather forecast in the terminal](https://media.trmn.sh/cached/344f2d26c3bd808bed1a531bf2cfff294d2106fff61e637cdd096318ca9aa3e9.gif)

## Alternatives

- [termshark](https://www.trmn.sh/tools/termshark.md): Terminal user interface for tshark that provides Wireshark-like packet analysis capabilities from the command line (Go, 10.0k stars)
- [bombardier](https://www.trmn.sh/tools/bombardier.md): HTTP(S) benchmarking tool written in Go that uses fasthttp by default, with optional net/http for HTTP/2, and reports latency, requests/sec and throughput. (Go, 6.8k stars)
- [qrcp](https://www.trmn.sh/tools/qrcp.md): Go CLI that transfers files between a computer and a mobile device over Wi-Fi by printing a QR code in the terminal that links to a temporary local web server. (Go, 10.5k stars)
- [httpx](https://www.trmn.sh/tools/httpx.md): HTTP probing CLI from ProjectDiscovery that takes hosts, URLs or CIDRs and reports status, title, TLS, tech stack, CDN and more, with matchers and filters. (Go, 10.6k stars)
- [wuzz](https://www.trmn.sh/tools/wuzz.md): Interactive terminal UI for inspecting and editing HTTP requests and responses, with cURL-style arguments and regex, HTML and JSON response filtering. (Go, 10.7k stars)

---

Canonical: https://www.trmn.sh/tools/wego
