Skip to main content

CoWorks is a unified compositional microservices framework using Flask/Airflow on AWS serverless technologies.

Project description

CoWorks Logo

Maintenance Build Status Documentation Status Codecov Python Versions Licence

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


Download files

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

Source Distribution

coworks-0.9.4.tar.gz (72.1 kB view details)

Uploaded Source

Built Distribution

coworks-0.9.4-py3-none-any.whl (73.9 kB view details)

Uploaded Python 3

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

Hashes for coworks-0.9.4.tar.gz
Algorithm Hash digest
SHA256 ec33b9a4431fd62c47c7bdc13deb46f8ca7d01715581f6be080324c6eaeb58fc
MD5 4de2d8c17787d81213ae3df956b2f98f
BLAKE2b-256 be7d1ed2eef1b288097bcc746083af3f70821fe01f028baf6f9de3896a5c7472

See more details on using hashes here.

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

Hashes for coworks-0.9.4-py3-none-any.whl
Algorithm Hash digest
SHA256 0dd6ae96d71ae376eddc4f49c5c1be3e6119da3bfef5b261a85cf38aaefba8de
MD5 effa0e5951b0876a0fa76ab1bb0edadc
BLAKE2b-256 f31a9693969dc7e18a8e26f2148b4053a8326aa4a284bc9f0b879494cbb4d269

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