Metadata-Version: 2.1
Name: coworks
Version: 0.7.0
Summary: Coworks is a unified compositional microservices framework using Flask on AWS serverless technologies.
Home-page: https://github.com/gdoumenc/coworks
Author: Guillaume Doumenc
Author-email: gdoumenc@fpr-coworks.com
License: MIT
Project-URL: Documentation, https://coworks.readthedocs.io/
Project-URL: Issue Tracker, https://github.com/gdoumenc/coworks/issues
Keywords: python3 serverless microservice flask aws-lambda aws
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: Topic :: System :: Distributed Computing
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Requires-Python: >=3.7
License-File: LICENSE.txt
Requires-Dist: anyconfig (>=0.12)
Requires-Dist: boto3 (>=1.19)
Requires-Dist: flask (>=2.0)
Requires-Dist: markdown (>=3.3.6)
Requires-Dist: pyyaml (>=6.0)

.. image:: https://github.com/gdoumenc/coworks/raw/dev/docs/img/coworks.png
    :height: 80px
    :alt: CoWorks Logo

|Maintenance| |Build Status| |Documentation Status| |Coverage| |Python versions| |Licence|

.. |Maintenance| image:: https://img.shields.io/badge/Maintained%3F-yes-green.svg?style=plastic
    :alt: Maintenance
.. |Build Status| image:: https://img.shields.io/travis/com/gdoumenc/coworks?style=plastic
    :alt: Build Status
.. |Documentation Status| image:: https://readthedocs.org/projects/coworks/badge/?version=master&style=plastic
    :alt: Documentation Status
.. |Coverage| image:: https://img.shields.io/codecov/c/github/gdoumenc/coworks?style=plastic
    :alt: Codecov
.. |Python versions| image:: https://img.shields.io/pypi/pyversions/coworks?style=plastic
    :alt: Python Versions
.. |Licence| image:: https://img.shields.io/github/license/gdoumenc/coworks?style=plastic
    :alt: Licence

CoWorks is a unified serverless microservices framework based on AWS technologies
(`API Gateway <https://aws.amazon.com/api-gateway/>`_, `AWS Lambda <https://aws.amazon.com/lambda/>`_),
the `Flask <https://github.com/pallets/flask>`_ framework and the `Airflow <https://github.com/apache/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:

* ``TechMicroservice`` are each composed of simple python `Flask <https://github.com/pallets/flask>`_ application and deployed as a serverless Lambda. Each ``TechMicroService`` is an ``atomic component`` or `atomic microservice <http://resources.fiorano.com/blog/microservices/>`_. These microservices may be called synchronously or asynchronously.

* ``BizMicroservice`` are `composite business microservices <http://resources.fiorano.com/blog/microservices/>`_, which are `Airflow <https://github.com/apache/airflow>`_ dags providing orchestration of atomic microservices or components (i.e: ``TechMicroService``).

To get started with Coworks, first follow the `Installation Guide <https://coworks.readthedocs.io/en/latest/installation.html>`_. Then you can get a quickstart on `TechMicroService <https://coworks.readthedocs.io/en/latest/tech_quickstart.html>`_.
Once familiar with ``TechMicroService``, you can continue with `BizMicroService <https://coworks.readthedocs.io/en/latest/biz_quickstart.html>`_.


Documentation
-------------

* Setup and installation: `Installation <https://coworks.readthedocs.io/en/latest/installation.html>`_
* Complete reference guide: `Documentation <https://coworks.readthedocs.io/>`_.
* Read `FAQ <https://coworks.readthedocs.io/en/latest/faq.html/>`_ 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 <https://github.com/aws/coworks/issues>`__
or `pull requests <https://github.com/aws/coworks/pulls>`__ through GitHub.

Related Projects
----------------

* `Flask <https://github.com/pallets/flask>`_ - Lightweight WSGI web application framework (`Donate to Pallets <https://palletsprojects.com/donate>`_).
* `Click <https://github.com/pallets/click>`_ -  A package for creating beautiful command line interfaces.
* `Airflow <https://github.com/apache/airflow>`_ A platform to programmatically author, schedule, and monitor workflows.
* `Terraform <https://github.com/hashicorp/terraform>`_ - Infrastructure configuration management tool.


