Skip to main content

Easy serverless deploy of python web applications

Project description

Simple serverless deploy of python web-apps @YandexCloud

Forget about setting up your own infrastructure, vps, network, orchestrators, etc...

Quickstart

  1. setup virtual env, create your app
  2. create account at Yandex Cloud
  3. install Yappa
$ pip install yappa -U
$ pip freeze > requirements.txt
  1. use Yappa:
$ yappa setup
$ yappa deploy

...that's it! Your application is deployed

updates

when your code is updated just run

$ yappa deploy

Deployment examples

Not just regular json API could be deployed this way. Several types of applications could be deployed with Yappa:

  • raw serverless function
  • json API (Flask, Django rest framework)
  • regular Django app
  • single page application
  • SPA + multiple API versions
    ...
    see examples folder

Roadmap

!TODO

Support and contribution

Feel free to make pull request or ask anything at https://t.me/yappa_chat
Also looking for contributors %)

Limitations

Frameworks support

At this point WSGI applications and raw functions are supported, tested on Flask and Django. ASGI applications (FastAPI, Starlette) will be added in the future

Database connectivity

Only YandexDB is supported inside Yandex Cloud. So any database you use has to have public IP address
Managed Postgress will be added soon, see updates

Headers and authorization

Please note that some request headers (like Authorization) are deleted before function is invoked

How does this work

! TODO

Yandex Cloud authorization

! TODO

Troubleshooting

Acknowledgements

Mikhail Novikov for starting this project two years ago httpx as a great tool for calling WSGI/ASGI apps Zappa for inspiration

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

yappa-0.4.5.tar.gz (13.4 kB view hashes)

Uploaded Source

Built Distribution

yappa-0.4.5-py3-none-any.whl (16.1 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page