Socket
Socket
Sign inDemoInstall

wundergroundnode

Package Overview
Dependencies
50
Maintainers
1
Versions
13
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

wundergroundnode

Weather Underground chainable API for nodeJS


Version published
Maintainers
1
Weekly downloads
7
decreased by-61.11%

Weekly downloads

Readme

Source

This is a chainable weather underground client for node.js

Install

npm install wundergroundnode
var Wunderground = require('wundergroundnode');
var myKey = '12312314';
var wunderground = new Wunderground(myKey);

How To Use

The syntax follows a simple pattern:

wunderground.[resource calls(s)].request(myQuery, callback);

The available resource calls are the following (you must include one in your request):

  • conditions
  • hourlyForecast
  • hourlyTenDayForecast
  • forecast
  • almanac
  • yesterday
  • geolookup
  • astronomy
  • planner
  • alerts (thanks to drewlander for this)

The documentation for each resource can be found here: http://www.wunderground.com/weather/api/d/docs?d=index. That also covers how to perform queries against their api.

So to get the current conditions you would use the following code:

wunderground.conditions().request('84111', function(err, response){
    console.log(response);
}

Where the real fun comes in, however, is when you want more than one resource in a single call. This functionality is crucial to save on weather underground costs. So extending the example, lets also get the forecast:

wunderground.conditions().forecast().request('84111', function(err, response){
    console.log(response);
}

Finally, planner is a little unique in how it is used. It has two parameters, the start and end dates for the range. At the time of this writing wunderground limits this to 30 days max. Notice that the parameters include the "/" character for readability.

// Requests for planning information from January 13th to the 15th.
wunderground.planner('01/13', '01/15').request('84111', function(err, response){ 
    console.log(response);
}

Historical Queries

If you are willing to pay the hefty fee then this library also provides historical querying as well. Historical queries cannot be chained.

wunderground.history('20120322', '84111', function(err, response){
   console.log(response);
}

Note that the first field specifies the day in the string format 'YYYYMMDD'. Alternatively you can use a date object for a given day.

#Running Unit Tests In order to run unit tests you need to include a file called "devkey" in the test directory. This file must contain only your dev key (no spaces or newlines).

Then simply run this command:

make test

If you have instanbul installed globally you can also run the tests with code coverage results:

make coverage

Keywords

FAQs

Last updated on 29 Dec 2016

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc