All Projects → kodemore → chocs

kodemore / chocs

Licence: MIT License
Modern HTTP framework for AWS Serverless and WSGI compatible servers.

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to chocs

Aws Extensions For Dotnet Cli
Extensions to the dotnet CLI to simplify the process of building and publishing .NET Core applications to AWS services
Stars: ✭ 242 (+1513.33%)
Mutual labels:  aws-lambda
Zipcodes
A simple library for querying U.S. zipcodes.
Stars: ✭ 63 (+320%)
Mutual labels:  aws-lambda
aws-sync-routes
Synchronizes the specified route from the main/default route table to all custom route tables in the VPC.
Stars: ✭ 16 (+6.67%)
Mutual labels:  aws-lambda
Serverless Puppeteer Layers
Serverless Framework + AWS Lambda Layers + Puppeteer = ❤️
Stars: ✭ 247 (+1546.67%)
Mutual labels:  aws-lambda
serverless data pipeline example
Build and Deploy A Serverless Data Pipeline on AWS
Stars: ✭ 24 (+60%)
Mutual labels:  aws-lambda
amazon-ivs-simple-chat-web-demo
⚠️ IMPORTANT ⚠️ This repository is no longer actively maintained and will be archived at the end of 2022. A basic live chat implementation built with WebSockets, that can be used in conjunction with Amazon IVS to build compelling customer experiences for live video streams with chat use cases.
Stars: ✭ 53 (+253.33%)
Mutual labels:  aws-lambda
Serverless Prune Plugin
Serverless plugin to reap unused versions of deployed functions from AWS
Stars: ✭ 243 (+1520%)
Mutual labels:  aws-lambda
super-serverless-sample
Backend serverless que simula o sistema de votação do BBB
Stars: ✭ 30 (+100%)
Mutual labels:  aws-lambda
libreoffice-lambda-layer
No description or website provided.
Stars: ✭ 87 (+480%)
Mutual labels:  aws-lambda
serverless-react-server-side-render
A Demo of Serverless Framework with React Server Side Render
Stars: ✭ 20 (+33.33%)
Mutual labels:  aws-lambda
Python Lambda Local
Run AWS Lambda function on local machine
Stars: ✭ 251 (+1573.33%)
Mutual labels:  aws-lambda
Jazz
Platform to develop and manage serverless applications at an enterprise scale!
Stars: ✭ 254 (+1593.33%)
Mutual labels:  aws-lambda
MirrorMirrorOnTheWallSkill
Alexa skill for controlling a MagicMirror²
Stars: ✭ 37 (+146.67%)
Mutual labels:  aws-lambda
Lambdium
headless chrome + selenium webdriver in AWS Lambda using the serverless application model
Stars: ✭ 246 (+1540%)
Mutual labels:  aws-lambda
next-material-aws-lambda
Next.js material-ui example deployed on AWS Lambda
Stars: ✭ 21 (+40%)
Mutual labels:  aws-lambda
Lumigo Cli
Open source CLI tool to help you develop and manage serverless applications.
Stars: ✭ 242 (+1513.33%)
Mutual labels:  aws-lambda
shim
HTTP Handler shim for Go projects running on AWS Lambda
Stars: ✭ 64 (+326.67%)
Mutual labels:  aws-lambda
amazon-ivs-ecommerce-web-demo
This repository shows how you can build a compelling eCommerce experience with Amazon IVS.
Stars: ✭ 19 (+26.67%)
Mutual labels:  aws-lambda
node-lambda-babel-template
A minimal template for an ES2015+ Node.js app running on AWS Lambda (w/ babel and webpack).
Stars: ✭ 40 (+166.67%)
Mutual labels:  aws-lambda
create-netlify-ts
👟 Building Netlify Functions with TypeScript has never been this easy
Stars: ✭ 20 (+33.33%)
Mutual labels:  aws-lambda

Chocs
PyPI version Release Linting and Tests codecov Maintainability

Chocs is a modern HTTP framework for building AWS HTTP API/REST API and WSGI compatible applications. Chocs aims to be small, expressive, and robust. It provides an elegant API for writing fault-proof, extensible microservices.

Features

  • AWS Serverless integration
  • Elegant and easy API
  • No additional bloat like built-in template engines, session handlers, etc.
  • Compatible with all WSGI servers
  • Loosely coupled components which can be used separately
  • Multipart body parsing
  • Graceful error handling
  • HTTP middleware support
  • Fast routing
  • Middleware packages to simplify daily tasks

Installation

pip install chocs

or with poetry

poetry add chocs

Quick start

import chocs

http = chocs.Application()

@http.get("/hello/{name}")
def hello(request: chocs.HttpRequest) -> chocs.HttpResponse:
    return chocs.HttpResponse(f"Hello {request.path_parameters.get('name')}!")

chocs.serve(http)

Keep in mind that the chocs.serve() function is using the bjoern package, so make sure you included it in your project dependencies before using it. You are able to use any WSGI compatible server.

Available middlewares

OpenAPI Integration middleware

Allows integrating OpenAPI documentation into your codebase, providing automating request validation based on your OpenAPI spec. More details are available in the chocs-openapi repository.

ParsedBody middleware

Parsed body middleware helps to convert json/yaml request payloads into dataclass, this not only makes your daily tasks easier but increases readability of your code and contract. More details are available in the chocs-parsed-body repository.

Documentation

For usage and detailed documentation please visit our wiki page

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].