theweatherapi

An NPM Library used to get weather info

Usage no npm install needed!

<script type="module">
  import theweatherapi from 'https://cdn.skypack.dev/theweatherapi';
</script>

README

NPM version NPM downloads

Weather data by WeatherAPI.com

TheWeatherAPI v2!!

A package to retrieve weather data from https://www.weatherapi.com/. It is easy to use, and it covers 10% of the API, Current Weather only for now (100% Coming Soon™).

Now v2! Introducing the Forecast API; get the forecast of a location for up to 6 days!

Features

- Current Weather API
- Forecast Weather API

Examples

How to get easily access the Current Weather:

// Import the WeatherClient from the package
const { WeatherClient } = require('theweatherapi');

// Create a new Instance of the WeatherClient
const client = new WeatherClient({
    apiKey: 'some_api_key',
    language: 'FRENCH',
    defaultLocation: 'Paris'
});

//Wait for the WeatherClient to enter Ready state
client.on('ready', async () => {
    //Get the current weather from the default location and the location of that weather
    const weatherInfo = client.current.weather;
    const weatherLocation = client.current.location; 

    //Log the data to the console
    console.log(`Current Weather of ${client.defaultLocation}:`, weatherInfo);
    console.log(`Current Weather Location of ${client.defaultLocation}:`, weatherLocation);

    //Get the weather from another location with Air Quality Information
    const { weather, location, aqi } = await client.current.get('London', true);

    //Log the results
    console.log(weather, location, aqi);
});

How can I access the APIs that are not implemented using theweatherapi?

You can use non-implemented APIs using the REST module like this: Note: You will have to know which params to use for the API or refer to api-types.json

//Import the BaseWeatherClient to use it's features without passing any options (using the normal client will throw errors)
const { BaseWeatherClient } = require('theweatherapi');

//Create a new Instance of the BaseClient
const baseClient = new BaseWeatherClient();

//Access the search API and make a call to the API
// WARNING: The data won't be formatted the same, the API module only takes care of the request part.
const response = await client.api.search.get({key: 'somekey', q: 'Paris'});
console.log(response);

Roadmap

  • Current Weather API
  • Forecast Weather API
  • History Weather API
  • Astronomy API
  • IP look-up API (not comfirmed)
  • Time Zone API
  • Sports API

Documentation

Visit this page. (Coming Soon™)

Powered by WeatherAPI.com