Skip to content

Latest commit

 

History

History
79 lines (67 loc) · 7.62 KB

File metadata and controls

79 lines (67 loc) · 7.62 KB

Zappa Community & Resources

Zappa Guides

Zappa in the Press

Sites Using Zappa

Are you using Zappa? Let us know and we'll list your site here!

Related Projects

  • Mackenzie - AWS Lambda Infection Toolkit
  • NoDB - A simple, server-less, Pythonic object store based on S3.
  • zappa-cms - A tiny server-less CMS for busy hackers. Work in progress.
  • zappa-django-utils - Utility commands to help Django deployments.
  • flask-ask - A framework for building Amazon Alexa applications. Uses Zappa for deployments.
  • zappa-file-widget - A Django plugin for supporting binary file uploads in Django on Zappa.
  • zops - Utilities for teams and continuous integrations using Zappa.
  • cookiecutter-mobile-backend - A cookiecutter Django project with Zappa and S3 uploads support.
  • zappa-examples - Flask, Django, image uploads, and more!
  • zappa-hug-example - Example of a Hug application using Zappa.
  • Zappa Docker Image - A Docker image for running Zappa locally, based on Lambda Docker.
  • zappa-dashing - Monitor your AWS environment (health/metrics) with Zappa and CloudWatch.
  • s3env - Manipulate a remote Zappa environment variable key/value JSON object file in an S3 bucket through the CLI.
  • zappa_resize_image_on_fly - Resize images on the fly using Flask, Zappa, Pillow, and OpenCV-python.
  • zappa-ffmpeg - Run ffmpeg inside a lambda for serverless transformations.
  • gdrive-lambda - pass json data to a csv file for end users who use Gdrive across the organization.
  • travis-build-repeat - Repeat TravisCI builds to avoid stale test results.
  • wunderskill-alexa-skill - An Alexa skill for adding to a Wunderlist.
  • xrayvision - Utilities and wrappers for using AWS X-Ray with Zappa.
  • terraform-aws-zappa - Terraform modules for creating a VPC, RDS instance, ElastiCache Redis and CloudFront Distribution for use with Zappa.
  • zappa-sentry - Integration with Zappa and Sentry
  • IOpipe - Monitor, profile and analyze your Zappa apps.

Hacks

Zappa goes quite far beyond what Lambda and API Gateway were ever intended to handle. As a result, there are quite a few hacks in here that allow it to work. Some of those include, but aren't limited to..

  • Using VTL to map body, headers, method, params and query strings into JSON, and then turning that into valid WSGI.
  • Attaching response codes to response bodies, Base64 encoding the whole thing, using that as a regex to route the response code, decoding the body in VTL, and mapping the response body to that.
  • Packing and Base58 encoding multiple cookies into a single cookie because we can only map one kind.
  • Forcing the case permutations of "Set-Cookie" in order to return multiple headers at the same time.
  • Turning cookie-setting 301/302 responses into 200 responses with HTML redirects, because we have no way to set headers on redirects.