Metadata-Version: 2.4
Name: strictprotocol
Version: 0.1.4
Summary: A stricter Protocol enforcement for Python
Author: Your Name
Author-email: Michael Afmokt <michael@esacca.com>
License-Expression: MIT
Project-URL: Homepage, https://github.com/afmkt/strictprotocol
Project-URL: Repository, https://github.com/afmkt/strictprotocol
Project-URL: Issues, https://github.com/afmkt/strictprotocol/issues
Keywords: protocol,typing,type-checking
Classifier: Programming Language :: Python :: 3
Classifier: Operating System :: OS Independent
Requires-Python: >=3.8
Description-Content-Type: text/markdown
License-File: LICENSE
Dynamic: license-file

# StrictProtocol

**StrictProtocol** is a lightweight runtime validation layer for Python's `Protocol`, enforcing exact method signature conformance at class definition time.

## 🔍 Features

- Enforces **method existence** and **signature compliance** for protocol implementations
- Catches missing or mismatched methods early—at class creation
- Drop-in compatible with `typing.Protocol`

## 🚀 Example

```python
from typing import Protocol
from strictprotocol import StrictProtocol

class Greeter(Protocol):
    def greet(self, name: str) -> str: ...

class MyGreeter(StrictProtocol, Greeter):
    def greet(self, name: str) -> str:
        return f"Hello, {name}"
```

## 📦 Installation

```bash
pip install strictprotocol
```


## 🧪 Testing

To run tests:

```bash
pytest tests/
```

## 📄 License

MIT
