ターミナルで天気を:weathr – ASCII アート天気アプリ

ターミナルで天気を:weathr – ASCII アート天気アプリ

コマンドラインの快適さを愛し、天気が数回のキー入力で済むことを視覚的に日々確認したいなら、weathr が待っていたツールです。Rustで開発され、weathr は無料の Open‑Meteo API から現在の状態を取得し、鮮明な ASCII アートでターミナルに直接アニメーション天気を描画します。

なぜ weathr なのか?

  • 即時フィードバック:ウェブブラウザ不要 ― 天気情報が直接コンソールに表示されます。
  • 目を楽しませる:昼夜を切り替える背景に対し、雨や雪、雷、飛行機の雲がアニメーションで動きます。
  • クロスプラットフォーム:Linux、macOS、Windows、さらに WSL でもネイティブに動作します。
  • セルフコンテナ:1 つのバイナリで構成され、Rust 開発ツールチェーン以外の外部依存はありません。
  • オープンソース & GPL‑v3:フォーク、改変、またはプルリクエストを提出できます。

クイックスタート

Cargo でインストール – すでに Rust を使っている場合は最も簡単な方法です:

cargo install weathr

Homebrew (macOS)

brew install Veirt/veirt/weathr

AUR (Arch)

yay -S weathr

Windows (Winget)

winget install -i Veirt.weathr

ビルドからソース (Rust が必要):

git clone https://github.com/Veirt/weathr.git
cd weathr
cargo install --path .

設定

アプリは各 OS の従来の設定ディレクトリにある config.toml を探します:

システム デフォルト設定パス
Linux ~/.config/weathr/config.toml
macOS ~/Library/Application Support/weathr/config.toml
Windows ~/AppData/Roaming/weathr/config.toml

ディレクトリを作成し、ファイルを編集して設定を行います。例として以下のような設定ファイルがあります:

# 目標表示 (HUD) を隠す
hide_hud = false
# 静かに実行(エラーのみ表示)
silent = false

[location]
# 自動位置検出を上書き;IP 位置をクエリする場合は `true` に設定
auto = true
# 手動オーバーライドの緯度と経度
latitude = 51.5074
longitude = -0.1278
# HUD から位置名を隠す
hide = false

[units]
# 温度単位:「celsius」または「fahrenheit」
temperature = "celsius"
# 風速単位:"kmh"、"ms"、"mph"、または "kn"
wind_speed = "kmh"
# 降水単位:"mm" または "inch"
precipitation = "mm"

アプリの起動

単に実行してください:

weathr

アプリケーションは位置を解決し、現在の天気を取得し、アニメーションループを開始します。キーボードコントロールは最小限です:

  • q または Q – 終了。
  • Ctrl+C – 即時終了。

条件のシミュレーション

開発者やテスト目的で、任意の天気状態をシミュレートできます:

weathr --simulate rain
weathr --simulate snow --night
weathr --simulate clear --leaves

コマンドラインオプション

フラグ 説明
--imperial °F、mph、inch(設定を上書き)
--metric °C、km/h、mm(デフォルト)
--auto-location IP ベースの位置情報検索を強制
--hide-location HUD で座標を非表示
--hide-hud HUD 全体を非表示
--silent エラー以外の出力を抑制

フラグは組み合わせて使用できます。例:weathr --imperial --auto-location

環境変数

  • NO_COLOR=1 – カラー出力を無効化します。
  • COLORTERM=truecolor – 24‑bit カラーサポートを強制します。
  • TERM=xterm-256color – ターミナル機能検出。

プライバシーについて

自動位置検出が有効な場合、weathr は ipinfo.io に対して1回のリクエストを行い、IP から緯度/経度を解決します。これはオプションで、auto = false を設定するかフラグを省略すると無効化できます。個人情報は保存または天気プロバイダーに送信されません。

ロードマップ

  1. 追加天気 API – 冗長性を確保するため OpenWeatherMap や WeatherAPI を統合。
  2. キーボードショートカット – 手動更新、速度制御、アニメーション停止、HUD 切替。
  3. Home-Manager モジュール – NixOS 完全構成サポート。
  4. カスタムテーマ – ユーザー作成の ASCII アートセットをインポート。

コントリビューション

ご寄稿を歓迎します!リポジトリをフォークし、変更を加えてプルリクエストを送ってください。プロジェクトは Linux と macOS で CI テストされています。寄稿はバグ修正、新しい天気状態、あるいは使い勝手の向上など多岐にわたります。

クレジット

  • 天気データ – Open‑Meteo.com(CC BY‑4.0)
  • ASCII アート – asciiart.eu のさまざまなアーティスト
  • Rust クレートreqwestserdecrosstermclap

weathr はオープンソースのターミナル中心天気アプリです。コマンドプロンプトを天気ウィジェットに変えます。軽量で洗練されたスタイルでターミナルを離れずに空の情報を得たい場合は、今すぐ weathr をインストールし、アニメーションが一日を予報します。

この記事を共有