cli-weather is a command line app to get instant real-time weather data by city name or postalcode from any corner on earth right on the command line.
Written in python and powered by WeatherBIT API, cli-weather also provides detailed weather data, air-quality data and forecasts for next 7 days with 24 hour intervals for weather and 3 days forecast with 12 hour intervals for air-quality.
With cli-weather app you can retrieve current weather observations from over 45,000 live weather stations using WeatherBIT API, and highly localized weather forecasts for any point on the globe using the world's most trusted weather models such as GFS 13km, ECMWF, DWD 6.5km ICON-Europe, and NOAA 3km HRRR.!
You can look up weather data any of the following means:
- By entering city_name
- By entering postal_code
cli-weather requires pip python package manager to install.
-
$ git clone "https://github.com/vatsa287/cli-weather" $ cd cli-weather/cli_weather $ python main.py -h
-
Anyone one of the following is sufficient. Wheel is recommended for its faster installation.
- Tarball
- Download tarball file present in high-level format with tar.gz extension from Releases tab and extract to continue with Local Installation
- Wheel
- Download wheel file present in binary format with .whl extension from Releases tab and extract to continue with Local Installation
- Tarball
-
Containerized version of cli-weather is present in
DockerHub
at https://hub.docker.com/r/vatsa287/cli-weather. Steps to use cli-weather in a container-
Pull Image
- Latest containerized version tag is 1.0
$ docker pull vatsa287/cli-weather:1.0
- Latest containerized version tag is 1.0
-
List Image
- Check to confirm right tag
$ docker image ls
- Check to confirm right tag
-
Run Container
-
Run the container in interactive mode, also expose the terminal for input and --rm=true to save memory usage. Port mapping is optional.
$ docker run -it --rm=true vatsa287/cli-weather:1.0
Can continue further with usage.
-
-
Note: Airquality information will not be available from version v1.0.0 since source API is now premium.
$ cli-weather command [-h] [-a] [-d] [-f] [-c COUNTRY] [-u {M,S,I}] city_nmae/postal_code
Example :
Detailed weather data
andBrief airquality data
with input mode as city_name and postal_code respectively.
-
-
Positional and Optional arguments: v0.1.9 supports two modes of input and 5 options giving numerous cominations.
Command Description city Get weather by city name postalcode Get weather by postal code Option Description -a, --airquality Display current air quality -f, --forecast Forecast on weather/airquality -c, --country Country of entered area -u, --units Metric, Scientific, Imperial -d, --detailed Display detailed weather data -h, --help Show this message and exit -
Supported Units: v0.1.5 supports Metric,Scientific and Farenheit indices.
Units Extensions M Celcius, m/s, mm S Kelvin, m/s, mm I F, mph, in
-
-
Check manual for comprehensive demo of all possible options with examples.
API : cli-weather is powered by WeatherBIT API
- cli-weather requires requests >= 2.4 to run, comes bundled with the package.
Description of all versions is present here.
Please use the issue tracker to report any bugs or file feature requests.
PRs are welcome. To begin developing, do this:
- Clone repo and create a new branch:
$ git clone "https://github.com/vatsa287/cli-weather"
$ git checkout -b name_for_new_branch
- Make changes and test
- Submit Pull Request with comprehensive description of changes
cli-weather is made available under GNU License
- Copyright 2020 Β© General Public Licence v3.0.
You can connect with me here!
I open-source almost everything I can, and I try to reply to everyone needing help using these projects. Obviously, this takes time. You can use this service for free.
However, if you are using this project and happy with it or just want to encourage me to continue creating stuff, there are few ways you can do it :-
- Starring and sharing the project π
- You can donation via BuyMeACoffee. I'll probably buy a
coffeetea. π΅
Thanks! β€οΈ