<div align="center">
  <h1><code>aiop4</code></h1>

  <strong>asyncio P4Runtime Python client</strong>

  <p></p>
  <p>
    <a href="https://github.com/viniarck/aiop4/actions/workflows/unit-tests.yml/badge.svg?branch=main"><img src="https://github.com/viniarck/aiop4/actions/workflows/unit-tests.yml/badge.svg?branch=main" alt="tests" /></a>
    <a href="https://pypi.org/project/aiop4/"><img src="https://img.shields.io/pypi/v/aiop4" alt="aiop4 pypi" /></a>
    <a href="https://img.shields.io/pypi/pyversions/aiop4"><img src="https://img.shields.io/pypi/pyversions/aiop4" alt="aiop4 py versions" /></a>
    <a href="https://img.shields.io/badge/status-experimental-yellow"><img src="https://img.shields.io/badge/status-experimental-yellow" alt="aiop4 py versions" /></a>
  </p>

</div>

## aiop4

`aiop4` is an `asyncio` client for [P4Runtime](https://github.com/p4lang/p4runtime/blob/v1.3.0/proto/p4/v1/p4runtime.proto). Breaking changes will likely happen until v1 is released.

## How to install

- `poetry add aiop4` or `pip install aiop4`

## Examples

- [L2 learning switch](./examples/l2_switch/l2_switch_app.py)
