peco
A library for interacting with the PECO outage map to gain the numbers from it.
What it is and what it does
PECO is a lightweight async-capable client library for fetching outage information from the PECO (Philadelphia Electric Company) outage map. It wraps HTTP requests using aiohttp and parses responses with pydantic, making it straightforward to integrate outage data into Python applications. The library targets modern Python versions (3.8+) and is typed for IDE support.
Typical use involves instantiating a client and calling methods to retrieve current outage counts or details from PECO's public outage map. The package is small and focused—it does not attempt to cache, predict, or analyze outages, only to fetch and structure what the API provides. It's useful for dashboards, alerts, or local monitoring tools that need real-time outage visibility for the PECO service area.
Use it for:
- Build a dashboard or status page that displays current PECO outage counts and affected areas.
- Create an alert system that notifies users when outage numbers exceed a threshold.
- Integrate outage data into a home automation or IoT system to trigger backup power or notifications.
- Collect historical outage snapshots by polling the API at regular intervals for analysis.
- Provide outage context in a local weather or emergency response application.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
A Python library for querying the PECO outage map API to retrieve current outage data and statistics.
Yes, if you need to query PECO outage data and can tolerate infrequent maintenance. The library is permissively licensed, has low install friction, and carries no known vulnerabilities. However, the 564-day release gap and aging maintenance status mean you should verify the PECO API endpoint is still stable and plan to maintain a fork if the upstream project stalls.
Install
peco on PyPI
pip
pip install pecouv
uv add pecopoetry
poetry add pecoInstalling peco
Before you install
Low install friction with a pure Python wheel. Maintenance is aging—no release in 564 days despite a recent commit in June 2025—so expect infrequent updates and limited active support.
License in practice
MIT license is permissive; you can use, modify, and distribute this package freely with minimal restrictions.
Quickstart
pip install peco
import asyncio
from peco import PecoOutageClient
async def check_outages():
async with PecoOutageClient() as client:
data = await client.get_outages()
print(data)
asyncio.run(check_outages())
Requires Python 3.8.1 or later. The PECO outage map endpoint must be publicly accessible and unchanged from when the library was last maintained.
Verify before relying
- Whether the PECO outage map API endpoint remains stable and accessible without authentication.
- Real-world reliability and error handling when PECO's service is unavailable or changes its data format.
- Whether aiohttp and pydantic versions are pinned or if there are known compatibility issues with recent releases.
Package facts
| License | MIT (permissive) |
| Python support | supports the current Python release (<4.0,>=3.8.1) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 2 — aiohttp, pydantic |
| Maintenance | aging — 564 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 73,674/month — #14,950 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: peco-0.1.2-py3-none-any.whl
Tags
More Python Modules packages
Converts domain names between Unicode and…
permissive · top 100 on PyPI
setuptoolsSetuptools is a Python build backend and…
permissive · top 100 on PyPI
PyYAMLPyYAML parses and emits YAML 1.1 data format,…
permissive · top 100 on PyPI
pydanticPydantic validates Python data structures…
permissive · top 100 on PyPI
annotated-typesProvides reusable metadata objects for use with…
permissive · top 100 on PyPI
typing-inspectionProvides runtime tools to inspect and…
permissive · top 100 on PyPI
opowerFetches historical and forecasted energy usage…
permissive · top 15,000 on PyPI
p1monitorAsynchronous Python client library for reading…
permissive · top 15,000 on PyPI
python-homewizard-energyAsyncio client library for communicating with…
permissive · top 15,000 on PyPI
forecast-solarAsynchronous Python client for fetching solar…
permissive · top 15,000 on PyPI
open-meteoProvides an asynchronous Python client for…
permissive · top 15,000 on PyPI
pydiscovergyAsynchronous Python client for querying…
permissive · top 15,000 on PyPI
energyzeroAsynchronous Python client for retrieving…
permissive · top 15,000 on PyPI
power-grid-modelPower Grid Model is a Python/C++ library for…
copyleft · top 15,000 on PyPI
gridstatusgridstatus provides a unified Python API to…
unclear · top 15,000 on PyPI
pytapoPyTapo is a Python library that communicates…
permissive · top 15,000 on PyPI