Skip to main content

The Python micro framework for building gPRC application.

Project description

===========
gRPCAlchemy
===========


.. image:: https://img.shields.io/pypi/v/grpcalchemy.svg
:target: https://pypi.python.org/pypi/grpcalchemy

.. image:: https://img.shields.io/travis/GuangTianLi/grpcalchemy.svg
:target: https://travis-ci.org/GuangTianLi/grpcalchemy

.. image:: https://readthedocs.org/projects/grpcalchemy/badge/?version=latest
:target: https://grpcalchemy.readthedocs.io/en/latest/?badge=latest
:alt: Documentation Status

.. image:: https://img.shields.io/pypi/pyversions/grpcalchemy.svg
:target: https://pypi.org/project/grpcalchemy/




The Python micro framework for building gPRC application.


* Free software: MIT license
* Documentation: https://grpcalchemy.readthedocs.io.

Installation
----------------

| Disclaimer: Still at an early stage of development. Rapidly evolving APIs.

.. code-block:: shell

$ pipenv install grpcalchemy
✨🍰✨

Only **Python 3.6+** is supported.

Example
--------

Server
========

.. code-block:: python

from grpcalchemy.orm import Message, StringField
from grpcalchemy import Server, Context

app = Server('server')

class HelloMessage(Message):
__filename__ = 'hello'
text = StringField()

@app.register
def test(request: HelloMessage, context: Context) -> HelloMessage:
return HelloMessage(text=f'Hello {request.text}')

if __name__ == '__main__':
app.run()

Features
----------

* gPRC Service Support
* gRPC Client Support
* gRPC Message Support
* Scalar Value Types
* Message Types
* Repeated Field
* Maps
* Middleware And Listeners
* Global Variable Support
* Current App Context Support

TODO
-------

* Stream Method Support

Credits
---------

This package was created with Cookiecutter_ and the `audreyr/cookiecutter-pypackage`_ project template.

.. _Cookiecutter: https://github.com/audreyr/cookiecutter
.. _`audreyr/cookiecutter-pypackage`: https://github.com/audreyr/cookiecutter-pypackage


=======
History
=======

0.2.5(2019-03-06)
------------------

* Implement Rpc Context
* Improve Config Module

0.2.4(2019-03-01)
------------------

* Implement Globals Variable
* Implement APP Context

0.2.2-3 (2019-02-26)
------------------

* Improve Config module
* Improve rpc_call_wrap

0.2.1 (2019-02-14)
------------------

* Implement Own gRPC Server
* Implement gRPC Server Test Client

0.2.0 (2019-01-30)
------------------

* Change gRPCAlchemy Server register to register_blueprint
* Make gRPCAlchemy Server inherit from Blueprint
* Support Json Format
* Support Inheritance Message

0.1.6 (2019-01-21)
------------------

* Various bug-fixes
* Improve tests
* Change Client API
* Add PreProcess And PostProcess
* Import Config Object
* Add Event Listener
* Change Field Object Into Descriptor

0.1.5 (2018-12-14)
------------------

* Various bug-fixes
* Improve tests
* Add client

0.1.4 (2018-12-11)
------------------

* First release on PyPI.


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

grpcalchemy-0.2.5.tar.gz (30.5 kB view hashes)

Uploaded Source

Built Distribution

grpcalchemy-0.2.5-py2.py3-none-any.whl (21.8 kB view hashes)

Uploaded Python 2 Python 3

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