semvec/pypi-packages huggingface dataset:
cdk-static-website 0.1.0
A CDK Python construct to create static S3 websites. This is a port of the AWS static site example https://github.com/aws-samples/aws-cdk-examples/blob/master/typescript/static-site/static-site.ts
Requires Python: >=3.6


# Simple static site CDK construct 

This constructs creates a static website hosted on S3.

## Requirements
- Hosted zone in Route53

## Usage
This constructs creates:
- S3 bucket
- DNS Validated certificate
- CloudFront web distribution
- Route53 A record 


```python
from aws_cdk.core import Stack, Construct
from static_website import StaticWebsite
from aws_cdk.aws_route53 import HostedZone

class WebSiteStack(Stack):
    def __init__(self, scope: Construct, id: str, **kwargs):

        super().__init__(scope, id, **kwargs)

        # The code that defines your stack goes here

        zone = HostedZone.from_lookup(self, "HostedZone", 
                                      domain_name="mydomain.com", 
                                      private_zone=False)

        StaticWebsite(self, "serverlesslink-website",
                              hosted_zone=zone,
                              site_domain="blog.mydomain.com",
                              sources="../public",
                              website_error="404.html")
```
plwrap 0.1.0
Non ORM SQL Query runner
Requires Python: >=3.6

# PLWRAP - asyncpg

`plwrap` is an easy to use wrapper for Postgresql orientend on [jdbi](http://jdbi.org). It is **not an ORM**, instead it allows to run SQL queries and dump the result into consistent Python Objects (Dataclasses are prefered)

> **SQL is awesome. Try to remember! :-)**

## Sanic integration
When used together with sanic, `plwrap` uses the sanic logging framework for debugging queries


## Examples
```python
import asyncio
from dataclasses import dataclass
import asyncpg
from plwrap import query, one

@dataclass
class User:
    """ User store """
    id: str
    email: str
    pwhash: str


class UserDAO:
    """ some sort of database access object """
    @staticmethod
    @one
    @query(User)
    async def get_by_email(email: str) -> User:
        """ Tries to get a user based on its email (unique) """
        return "select id, email, pwhash from users where email = $1", email


async def main():
    db_pool = await asyncpg.create_pool(database="what", user="ever")

    user = await UserDAO.get_by_email(db_pool, "me@xvzf.tech")
    print(user)

if __name__ == "__main__":
    asyncio.get_event_loop().run_until_complete(main())
```