Metadata-Version: 2.1
Name: SayoPy
Version: 0.1.1
Summary: Python Web Framework built for learning purposes.
Home-page: https://github.com/me/myproject
Author: Askar Saparov
Author-email: asqarsaparov2303@gmail.com
License: MIT
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Programming Language :: Python :: Implementation :: PyPy
Requires-Python: >=3.10.0
Description-Content-Type: text/markdown
Requires-Dist: Jinja2 ==3.1.4
Requires-Dist: parse ==1.20.2
Requires-Dist: requests ==2.32.3
Requires-Dist: requests-wsgi-adapter ==0.4.1
Requires-Dist: WebOb ==1.8.7
Requires-Dist: whitenoise ==6.6.0


# SayoPy: Python Web Framework built for learning purposes

![purpose](https://img.shields.io/badge/purpose-learning-green)
![PyPI - Version](https://img.shields.io/pypi/v/SayoPy)

SayoPy is a Python web framework built for learning purposes.

It's a WSGI framework and can be used with any WSGI application server such as Gunicorn.

## Instalition
```shell
pip install sayopy
```

### Basic usage:
```python
from SayoPy.api import SayoPy

app = SayoPy()

@app.route("/home")
def home(request, response):
    response.text = "Hello from the Home page"


@app.route("/hello/name")
def greating(request, response, name):
    response.text = f"Hello, {name}!"


@app.route("/books")
class Books:
    def get(self, request, response):
        response.text = "Books page"
    
    def post(self, request, response):
        response.text = "Endpoint to create a book"


@app.route("/template")
def template_handler(request, response):
    response.html = app.template(
        "index.html", context={"title": "Best Framework", "name": "Askar Saparov"}
    )


@app.route("/json")
def json_handler(request, response):
    response_data = {"name": "Askar Saparov", "age": 25}
    response.json = response_data

```
