SWF - консольная программа для получения данных о погоде в заданном местоположении (локации). Использует API OpenWeatherMap. Поддерживает конфигурационные файлы с описанием основных параметров программы.
Отображает ASCII-арт текущей погоды, время в выбранном местоположении (время измерения данных о погоде, а не текущее), а также температуру. В будущем будут добавляться новые функции.
- Сведения о погоде в данный момент времени
- Сведения о погоде на несколько часов вперёд
- Красивые ASCII-арты, отображающие различные типы погоды (солнечно, облачно, пасмурно, дождь, гроза, ветрено и т.д.)
- Кеширование
- Локализация на другие языки
--location
- местоположение, например:--location=Vladimir,Vladimir\ Oblast,RU
--units=
- единицы измерения, в которых нужно вывести информацию. Допустимые значения:metric
;imperial
;
--api-key=
- ключ API OWM;--config=
- путь до альтернативного конфига (по умолчанию конфиг ищется в~/.config/swf/toml
);
Ключи, переданные программе, имеют больший приоритет, чем данные из конфига.
Конфигурация описывается в файле формата TOML. В этом файле описываются следующие параметры:
- Местоположение;
- Единицы измерения, в которых будет выведена информация;
- Ключ API;
Конфиг содержится в файле ~/.config/swf.toml
.
Каждый из параметров является опциональным, т.е. может отсутствовать в конфиге. Если какого-то параметра в конфиге нет, то его нужно указать, передав значение соответствующему ключу.
Пример конфига:
location = "Vladimir,RU"
units = "metric"
Здесь не указан параметр api_key
, поэтому его нужно указать в ключе --api-key=
, переданному swf
:
swf --api-key=8sdfg6sd79f69sd87f6gsd9679
rustc
иcargo
для сборки;
cargo build --release
cp -v ./target/release/swf ~/.local/bin
Если вы хотите поддержать этот проект, вы можете либо принять участие в его разработке, либо отправить донат мне на карту сбербанка:
2202 2062 5233 5406 (Михаил Сергеевич К.)
Участие в разработке SWF или донаты покажут, что эта утилита ещё кому-то нужна, а значит будут мотивировать меня продолжать разработку и добавлять новые функции и исправлять ошибки.
SWF распространяется под лицензией MIT.