README.md in owmo-0.2.0 vs README.md in owmo-1.0.0
- old
+ new
@@ -30,58 +30,94 @@
### Quick Start
```ruby
require 'owmo'
api_key = "<api key here>"
-weather = OWMO::Weather.new api_key: api_key
-puts weather.get :current, zip: 52402
+weather = OWMO::Weather.new api_key
+puts weather.get :current, city_name: "London,UK"
```
```ruby
require 'owmo'
api_key = "<api key here>"
-OWMO::weather api_key: api_key do |weather|
- puts weather.get :forecast, zip: 52402
+OWMO::weather api_key do |weather|
+ puts weather.get :forecast, city_name: "London,UK"
end
```
----
+### Weather Information
+#### Current weather data (http://openweathermap.org/current)
+```ruby
+puts weather.get :current, city_name: "London,UK"
+```
+#### 5 day weather forecast (http://openweathermap.org/forecast5)
+```ruby
+puts weather.get :forecast5, city_name: "London,UK"
+```
+#### 16 day weather forecast (http://openweathermap.org/forecast16)
+```ruby
+puts weather.get :forecast16, city_name: "London,UK"
+```
-### Current weather data (http://openweathermap.org/current)
+----
+### Query parameters
+
+#### Geocode (required)
```ruby
- params = {
- city_name: "London,uk", # [city_name, city_id, zip, lat/lon]
- mode: 'json', # [json, xml, html] Not required, but an option
- units: 'imperial', # [imperial, metric] Not required, but an option
- lang: 'en_US' # Not required, but an option
- }
+# Geocode by City ID
+puts weather.get :current, city_id: 5328041
+puts weather.get :current, id: 5328041
- puts weather.get :current, params
+# Geocode by City Name
+puts weather.get :current, city_name: "Beverly Hills"
+puts weather.get :current, q: "Beverly Hills"
+# Geocode by Zip Code
+puts weather.get :current, zip: 90210
+puts weather.get :current, zip_code: 90210
+
+# Geocode by Coordinance
+puts weather.get :current, lon: -118.41, lat: 34.09
```
-### 5 day weather forecast (http://openweathermap.org/forecast5)
+
+#### Mode
```ruby
- params = {
- zip: "90210", # [city_name, city_id, zip, lat/lon]
- mode: 'json', # [json, xml, html] Not required, but an option
- units: 'imperial', # [imperial, metric] Not required, but an option
- lang: 'en_US' # Not required, but an option
- }
+# Response in JSON format (default)
+puts weather.get :current, city_name: "London,UK"
+puts weather.get :current, city_name: "London,UK", mode: :json
- puts weather.get :forecast, params
+# Response in XML format
+puts weather.get :current, city_name: "London,UK", mode: :xml
+
+# Response in HTML format
+puts weather.get :current, city_name: "London,UK", mode: :html
```
-### 16 day weather forecast (http://openweathermap.org/forecast16)
+#### Units
```ruby
- params = {
- lat: "40.7128", lon: "74.0059", # [city_name, city_id, zip, lat/lon]
- mode: 'json', # [json, xml, html] Not required, but an option
- units: 'imperial', # [imperial, metric] Not required, but an option
- lang: 'en_US' # Not required, but an option
- }
+# Kelvin (default)
+puts weather.get :current, city_name: "London,UK"
- puts weather.get :extended, params
+# Imperial
+puts weather.get :current, city_name: "London,UK", units: :imperial
+
+# Metric
+puts weather.get :current, city_name: "London,UK", units: :metric
```
+#### All
+```ruby
+query = {
+ city_name: "London,UK",
+ mode: 'json',
+ units: 'imperial',
+ lang: 'fr'
+}
+
+puts weather.get :current, query
+```
+
+----
## Development
After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake spec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org).