Metadata-Version: 2.1
Name: privatejet
Version: 0.0.2
Home-page: 
Author: m-moein-98
Author-email: moein1475963.mmz@gmail.com
License: OSI Approved :: MIT License
Keywords: python backend framework private-jet-framework
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Education
Classifier: Operating System :: Microsoft :: Windows :: Windows 11
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3.11
Description-Content-Type: text/markdown
License-File: LICENSE.txt

## Description

This is a python backend framework for building REST applications. It is built on top of the ASGI specification and uses the uvicorn server.
## Installation

```bash
python setup.py bdist_wheel
pip install dist/privatejet-0.0.1-py3-none-any.whl
```

## Usage

```python
from privatejet.main import PrivateJet
from privatejet.router import JetRouter

private_jet = PrivateJet()


async def app(scope, receive, send):
    await private_jet.add_router(
        router={"prefix": "/users", "router": UserRouter}
    )
    await private_jet.start(scope=scope, receive=receive, send=send)


class UserRouter(JetRouter):
    async def get(self, request):
        await self.send_message(
            [
                {"name": "alex", "age": 20},
                {"name": "john", "age": 30},
            ]
        )

    async def get_one(self, request):
        await self.send_message({"name": "alex", "age": 20})

    async def post(self, request):
        await self.send_message(
            {
                "message": "User created successfully",
                "user": {"name": request["body"]["name"], "age": request["body"]["age"]},
            }
        )

    async def put(self, request):
        await self.send_message(
            {
                "message": "User updated successfully",
                "user": {"name": request["body"]["name"], "age": request["body"]["age"]},
            }
        )

    async def patch(self, request):
        await self.send_message(
            {
                "message": "User patched successfully",
                "user": {"name": request["body"]["name"], "age": request["body"]["age"]},
            }
        )

    async def delete(self, request):
        await self.send_message(
            {
                "message": "User deleted successfully",
            }
        )

```

## License

This project is licensed under the terms of the MIT license.

Change Log
==========

0.0.1 (3/29/2023)
-----------------
-First Release
