Skip to main content

Async Microservices Framework

Project description

WASPy

Waspy is the python framework for the WASP project. In other words its an asynchronous "transport-agnostic" web framework.

Language agnostic concepts

While this framework is for python, the patterns used in wasp are language agnostic. You should be able to call other services in different languages assuming they all follow the same patterns. This framework has a pluggable architecture for the transport layer, which allows you to switch from http to using a message bus, or vice-versa. You could even listen on both at the same time without having to modify your code at all.

Example

Look at examples/ folder for some quick examples, or there is an entire example repo at https://github.com/wasp/waspy-example

Alpha

This project is currently in alpha state. There are a lot of features missing.

Features for beta:

  • HTTP Transport
  • Routing
  • RabbitMQ transporty
  • Support middlewares
  • Client library (for calling other services)
  • HTTP client transport (with envvar service discovery)
  • RabbitMQ client transport
  • Test everything

note: all alpha features are complete, but I am still in the process of adding more robusts tests. Until that is done, waspy will remain in alpha and api's might change.

Wish List:

  • Transport classes for nats (nats.io)
  • Transport classes for kafka
  • Transport classes for gRPC
  • pattern for synchronous "worker-tier"
  • configuration package
  • auto-reloading when in debug mode
  • sentry integration
  • jwt handling

Features for GA (1.0):

  • High level "Falcon-like" api for writing RESTFUL endpoints even easier!
  • High level can be overridden by lower level for control/performance reasons
  • Stable/proven API

License

Apache-2.0

Installing

To install, just run pip install waspy

Developing

python setup.py develop

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

waspy-0.45.5.tar.gz (29.5 kB view details)

Uploaded Source

Built Distribution

waspy-0.45.5-py3-none-any.whl (35.0 kB view details)

Uploaded Python 3

File details

Details for the file waspy-0.45.5.tar.gz.

File metadata

  • Download URL: waspy-0.45.5.tar.gz
  • Upload date:
  • Size: 29.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/0.12.17 CPython/3.8.0 Linux/5.4.1-arch1-1

File hashes

Hashes for waspy-0.45.5.tar.gz
Algorithm Hash digest
SHA256 c67bd104c222cbdaa947dfc8b6916b9516a375b1bf07a79854d78ce18e39885b
MD5 391c6a42db4d609b06946246c27f3577
BLAKE2b-256 7939ad5ed55a9864c05e3bf79dc2692f6d81843ec2954081fedd5620066dd183

See more details on using hashes here.

File details

Details for the file waspy-0.45.5-py3-none-any.whl.

File metadata

  • Download URL: waspy-0.45.5-py3-none-any.whl
  • Upload date:
  • Size: 35.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/0.12.17 CPython/3.8.0 Linux/5.4.1-arch1-1

File hashes

Hashes for waspy-0.45.5-py3-none-any.whl
Algorithm Hash digest
SHA256 d099806b3f0d4a3074a6dc93301843c0748f777481ff22ae91e65d9e706c1ebd
MD5 72209d4867e390206d2e2db1555930af
BLAKE2b-256 30ed31551ecfd8f5ebd15101b7487388c397511ae84abfe1df83fd49fc90e540

See more details on using hashes here.

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