openweather 0.0.1

A rust crate wrapping openweather's API into a simple easy to use interface
Documentation
# openweather   [![Latest Version]][crates.io]

[Latest Version]: https://img.shields.io/crates/v/openweather.svg
[crates.io]: https://crates.io/crates/openweather

**Openweather is an *unofficial* thin wrapper around OpenWeatherMaps API for requesting current and historical weather data**

---

Useful links:
- [OpenWeatherMap API's]https://openweathermap.org/api
- [Registering an API key]https://openweathermap.org/appid

## How to use

To request weather data a `LocationSpecifier` needs to be defined for the location of interest. The available methods of specifiying a location are:
- CityAndCountryName (`{city: "CITY_NAME", country: "COUNTRY_CODE"}`)
- CityId (`CITY_ID_CODE`)
- Coordinates (`{lat: LATITUDE, lon: LONGITUDE}`)
- ZipCode (`{zip: "ZIP_CODE", country: "COUNTRY_CODE"}`)
- BoundingBox (`{lon_left: LEFT_LONGITUDE, lat_bottom: BOTTOM_LATITUDE, lon_right: RIGHT_LONGITUDE, lat_top: TOP_LATITUDE}`)
- Circle (`{lat: CENTER_LATITUDE, lon: CENTER_LONGITDE, count: NUMBER_OF_CITIES_OF_INTEREST}`)
- CityIds (`[CITY_ID_1, CITY_ID_2]`)

Once a `LocationSpecifier` has been created it can be used to querry any of available API endpoints: 
- get_current_weather
- get_5_day_forecast
- get_16_day_forecast
- get_historical_data
- get_accumulated_temperature_data
- get_accumulated_precipitation_data
- get_current_uv_index
- get_forecast_uv_index
- get_historical_uv_index

An example of querrying the current temperature in Minneapolis, MN:
```rust
extern crate openweather;

use openweather::LocationSpecifier;
static API_KEY: &str = "YOUR_API_KEY_HERE";

fn main() 
{
    let loc = LocationSpecifier::CityAndCountryName{city:"Minneapolis", country:"USA"};
    let weather = openweather::get_current_weather(loc, API_KEY).unwrap();
    println!("Right now in Minneapolis, MN it is {}K", weather.main.temp);
}
```

## License

openweather is licensed under the MIT license ([LICENSE-MIT](LICENSE-MIT) or http://opensource.org/licenses/MIT)