skillfed

webrtc-models

Python WebRTC models

webrtc-models v0.3.0 533.7K downloads/30d#6,140 on PyPI3
Permissive license Apache-2.0 Active released

What it is and what it does

webrtc-models is a Python package that defines data classes conforming to the WebRTC specification. It wraps protocol structures into typed, serializable Python objects using mashumaro for serialization and orjson for JSON handling. The package is maintained as part of the Home Assistant ecosystem and is designed to simplify working with WebRTC protocol data in Python applications.

The package is currently in alpha development and requires Python 3.12.0 or later. It has minimal dependencies and installs cleanly, making it straightforward to integrate into projects that need to work with WebRTC protocol objects. The repository is actively maintained with recent commits.

Use it for:

  • Serialize and deserialize WebRTC protocol messages in Python applications.
  • Define strongly-typed WebRTC data structures for Home Assistant integrations.
  • Handle WebRTC configuration and session objects with built-in validation.
  • Exchange WebRTC protocol data between Python services and external systems.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Provides Python data classes that implement the WebRTC specification, enabling structured handling of WebRTC protocol objects.

Yes, if you need WebRTC protocol data structures in Python 3.12.0 or later. The package has low install friction, permissive Apache-2.0 licensing, no known vulnerabilities, and active maintenance. However, be aware it is in alpha status—suitable for projects that can tolerate occasional breaking changes or are part of the Home Assistant ecosystem.

Install

webrtc-models on PyPI

pip

pip install webrtc-models

uv

uv add webrtc-models

poetry

poetry add webrtc-models

Installing webrtc-models

Before you install

Low friction installation with only two runtime dependencies (mashumaro and orjson). Repository is active with recent commits, though the package is still in alpha status.

License in practice

Licensed under Apache-2.0 (permissive), allowing commercial and private use with minimal restrictions.

Quickstart

pip install webrtc-models

from webrtc_models import <WebRTCDataClass>
obj = <WebRTCDataClass>(...)

Requires Python 3.12.0 or later.

Verify before relying

  • What specific WebRTC data classes are provided and their scope within the WebRTC spec.
  • Whether the package is used by Home Assistant or other production systems, given its home-assistant-libs origin.
  • API stability guarantees or breaking-change frequency given alpha status.
  • How long since the last release and whether infrequent releases indicate maintenance gaps.

Package facts

License Apache-2.0 (permissive)
Python support supports the current Python release (>=3.12.0)
Install friction low — pure-Python wheel
Runtime dependencies 2 — mashumaro, orjson
Maintenance actively maintained — 634 days since the last release
Last repo commit
First released
Downloads 533,690/month — #6,140 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: webrtc_models-0.3.0-py3-none-any.whl

Keywords: webrtc

Development Status :: 3 - AlphaIntended Audience :: DevelopersProgramming Language :: Python :: 3.12

Tags

webrtc data modelswebrtc python classeswebrtc spec implementationwebrtc protocol objectswebrtc serialization
webrtcdata-models

More Internet packages