Framework for document transformations as microservice based web services.
Project description
Python port for the go written doctrans
Morpho is a framework for microservice based web services. It offers the ability to transform a given document with a provided function.
In the first place this framework was created to use it for research purposes.
💡 Installation
pip install morpho
⚠️ currently in alpha: public api may change with breaking changes ⚠️
via git
- make sure to use at least python 3.8
- clone the repo
git clone https://github.com/B4rtware/morpho.git
cd morpho
and install dependencies viapoetry install
(Poetry) or- use the provided
requirements.txt
⚙️ Server Example
... without options
service.py
from morpho.server import Service
def work(document: str) -> str:
return document
service = Service(name="Echo", version="0.0.1")
if __name__ == "__main__":
service.run()
... with options
service.py
from morpho.server import Service
from pydantic import BaseModel
class Options(BaseModel):
name: str
def work(document: str, options: Options) -> str:
return document + options.name
service = Service(name="AppendName", version="0.0.1", options_type=Options)
if __name__ == "__main__":
service.run()
🖥️ Client Example
client.py
from morpho.client import Client
from morpho.client import ClientConfig
morpho = Client(ClientConfig("http://localhost:8761/eureka/"))
response = morpho.transform_document(
"This is a Document!",
service_name="Echo"
)
print(response.document)
>>> This is a Document!
📝 License
MIT
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
morpho-1.0.0a5.tar.gz
(24.0 kB
view hashes)
Built Distribution
morpho-1.0.0a5-py3-none-any.whl
(28.6 kB
view hashes)