Metadata-Version: 2.4
Name: restmachine-aws
Version: 0.1.1
Summary: AWS Lambda adapter for RestMachine framework
Author-email: Ryan Festag <rfestag@gmail.com>
License: MIT
Project-URL: Homepage, https://github.com/rfestag/restmachine-python
Project-URL: Repository, https://github.com/rfestag/restmachine-python
Project-URL: Bug Reports, https://github.com/rfestag/restmachine-python/issues
Keywords: rest,api,aws,lambda,api-gateway,serverless
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: Internet :: WWW/HTTP :: HTTP Servers
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Requires-Python: >=3.9
Description-Content-Type: text/markdown
Requires-Dist: restmachine
Provides-Extra: test
Requires-Dist: pytest>=6.0; extra == "test"
Requires-Dist: pytest-cov; extra == "test"
Provides-Extra: dev
Requires-Dist: pytest>=6.0; extra == "dev"
Requires-Dist: pytest-cov; extra == "dev"
Requires-Dist: ruff; extra == "dev"
Requires-Dist: mypy; extra == "dev"
Requires-Dist: radon>=6.0.0; extra == "dev"

# RestMachine AWS Adapter

AWS Lambda adapter for RestMachine framework.

## Installation

```bash
pip install restmachine-aws
```

For development:

```bash
# From monorepo root
pip install -e packages/restmachine[dev]
pip install -e packages/restmachine-aws[dev]
```

## Usage

```python
from restmachine import RestApplication
from restmachine_aws import AwsApiGatewayAdapter

app = RestApplication()

@app.get("/hello")
def hello():
    return {"message": "Hello from AWS Lambda!"}

# Create Lambda handler
adapter = AwsApiGatewayAdapter(app)

def lambda_handler(event, context):
    return adapter.handle_event(event, context)
```

## Features

- AWS API Gateway Lambda proxy integration support
- Automatic conversion between API Gateway events and RestMachine requests
- Base64 encoding/decoding for binary content
- Query parameters, path parameters, and headers support
- Full request context available

## Testing

```bash
pytest packages/restmachine-aws/tests/
```

## License

MIT
