PHPackages                             lfischer/wunderground-api - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [API Development](/categories/api)
4. /
5. lfischer/wunderground-api

ActiveLibrary[API Development](/categories/api)

lfischer/wunderground-api
=========================

A simple PHP library for querying the Weather Underground API.

0.2.1(5y ago)63052MITPHPPHP &gt;=5.4.0CI failing

Since Jan 31Pushed 5mo ago2 watchersCompare

[ Source](https://github.com/leonardfischer/wunderground-api)[ Packagist](https://packagist.org/packages/lfischer/wunderground-api)[ Docs](https://github.com/leonardfischer/wunderground-api)[ RSS](/packages/lfischer-wunderground-api/feed)WikiDiscussions master Synced today

READMEChangelog (3)Dependencies (2)Versions (5)Used By (0)

Weather Underground API Client
==============================

[](#weather-underground-api-client)

This library shall help you integrate the WeatherUnderground API to your webservice. It is extremely lightweight and provides all necessary code.

Code Example
------------

[](#code-example)

Using the API is very easy - you'll only need to provide a API key (Get one [here](https://www.wunderground.com/weather/api/)) in order to use it. There are functions for retrieving different weather data by predefined conditions, like "by country and city", "by latitude and longitude", "by airport code" or even "by IP address".

```
// By default the current conditions will be requested in english language.
$weather = (new \lfischer\wunderground\API(''))->getByLocation('Germany', 'Dusseldorf');
```

Run tests
---------

[](#run-tests)

Install the dependencies:

```
composer install
```

and run the tests:

```
./vendor/bin/phpunit
```

Uncommenting the `` element of `phpunit.xml` configuration file will generate the coverage html file when the tests are run.

Future to-dos / nice-to-have
----------------------------

[](#future-to-dos--nice-to-have)

At some point I'd like to improve this client to be as readable as possible. For example:

```
use lfischer\wunderground;

$weather = (new API(''))
    ->getConditions()
    ->byLocation('Germany', 'Dusseldorf')
    ->fetch()
    ->asArray();
```

Contributors
------------

[](#contributors)

- **Leonard Fischer** - initial programming [Github profile](https://github.com/leonardfischer)
- **Stefano Borghi** - writing tests and improving code [Github profile](https://github.com/stebogit)

###  Health Score

35

—

LowBetter than 77% of packages

Maintenance49

Moderate activity, may be stable

Popularity19

Limited adoption so far

Community13

Small or concentrated contributor base

Maturity51

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 52.6% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~683 days

Total

3

Last Release

2072d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/316a942d2a9c90eab5c2ba18e9886d5e7d8af7b5c6fe850fe96085dfd08f3486?d=identicon)[Leonard Fischer](/maintainers/Leonard%20Fischer)

---

Top Contributors

[![leonardfischer](https://avatars.githubusercontent.com/u/399835?v=4)](https://github.com/leonardfischer "leonardfischer (10 commits)")[![stebogit](https://avatars.githubusercontent.com/u/12717225?v=4)](https://github.com/stebogit "stebogit (8 commits)")[![dependabot[bot]](https://avatars.githubusercontent.com/in/29110?v=4)](https://github.com/dependabot[bot] "dependabot[bot] (1 commits)")

---

Tags

apiphpweatherweather-apiweather-forecastweather-undergroundapiweather

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/lfischer-wunderground-api/health.svg)

```
[![Health](https://phpackages.com/badges/lfischer-wunderground-api/health.svg)](https://phpackages.com/packages/lfischer-wunderground-api)
```

###  Alternatives

[cmfcmf/openweathermap-php-api

A PHP API to parse weather data from OpenWeatherMap.org. This wrapper tries to normalise and abstract the data and remove inconsistencies.

3481.3M7](/packages/cmfcmf-openweathermap-php-api)[rakibdevs/openweather-laravel-api

Laravel package to connect https://openweathermap.org/ to get customized weather data for any location on the globe immediately

7652.6k](/packages/rakibdevs-openweather-laravel-api)[adinan-cenci/climatempo-api

Uma api para previsão de tempo escrita em PHP.

458.4k](/packages/adinan-cenci-climatempo-api)[gnahotelsolutions/laravel-weather

🌤️ A wrapper around Open Weather Map to get the current weather on a location.

385.3k](/packages/gnahotelsolutions-laravel-weather)[rugaard/weatherkit

Integrate Apple WeatherKit API into your project

111.4k](/packages/rugaard-weatherkit)[ballen/metar

A PHP library to query aerodrome METAR information.

101.0k](/packages/ballen-metar)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
