CoWorks is a unified compositional microservices framework using Flask/Airflow on AWS serverless technologies.
Project description
CoWorks is a unified serverless microservices framework based on AWS technologies (API Gateway, AWS Lambda), the Flask framework (Flask/Click) and the Airflow platform.
The aim of this project is to offer a very simplified experience of microservices. For such purpose, we divided the CoWorks framework in two levels:
Small technical microservice
TechMicroservice are each composed of simple python Flask application and deployed as a serverless Lambda. Each TechMicroService is an atomic component or atomic microservice. These microservices may be called synchronously or asynchronously.
Functional business service
biz are composite business services, which are Airflow DAGs providing orchestration of atomic microservices or components (aka: TechMicroService).
To get started with CoWorks, first follow the Installation Guide. Then you can get a quickstart on TechMicroService Quickstart. Once familiar with TechMicroService, you can continue with BizMicroService Quickstart.
Data model
The data model shared between those services may be structured with pydantic and using the JSON:API specification. You can install this data protocol for CoWorks with: pip install coworks[jsonapi-sqlalchemy].
Documentation
Setup and installation: Installation
Complete reference guide: Documentation.
- Samples:
layers : Get available CoWorks lambda layers: CoWorks layers.
website : Very simple website done as a simple microservice: Website.
Read FAQ for other information.
Contributing
We work hard to provide a high-quality and useful framework, and we greatly value feedback and contributions from our community. Whether it’s a new feature, correction, or additional documentation, we welcome your pull requests. Please submit any issues or pull requests through GitHub.
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
Built Distribution
File details
Details for the file coworks-0.9.4.tar.gz
.
File metadata
- Download URL: coworks-0.9.4.tar.gz
- Upload date:
- Size: 72.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: pdm/2.14.0 CPython/3.10.12 Linux/6.5.0-1017-azure
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ec33b9a4431fd62c47c7bdc13deb46f8ca7d01715581f6be080324c6eaeb58fc |
|
MD5 | 4de2d8c17787d81213ae3df956b2f98f |
|
BLAKE2b-256 | be7d1ed2eef1b288097bcc746083af3f70821fe01f028baf6f9de3896a5c7472 |
File details
Details for the file coworks-0.9.4-py3-none-any.whl
.
File metadata
- Download URL: coworks-0.9.4-py3-none-any.whl
- Upload date:
- Size: 73.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: pdm/2.14.0 CPython/3.10.12 Linux/6.5.0-1017-azure
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0dd6ae96d71ae376eddc4f49c5c1be3e6119da3bfef5b261a85cf38aaefba8de |
|
MD5 | effa0e5951b0876a0fa76ab1bb0edadc |
|
BLAKE2b-256 | f31a9693969dc7e18a8e26f2148b4053a8326aa4a284bc9f0b879494cbb4d269 |