Hopeit Engine: Microservices with Streams
Project description
hopeit.engine
Docs: https://hopeitengine.readthedocs.io/en/latest/
Engine development README
Install locally for apps or plugins development:
- Install uv
- Run from hopeit.engine project root
make dev
- Now everything you need is installed in .venv/
- Then you can create your apps or plugins and run the server
Install from Python Package Index
Install core hopeit.engine lib:
pip install "hopeit.engine"
Configure
- Create server configuration json file
- Create apps configuration and python files
- See apps examples
- Optionally you can develop plugins, similar to apps but can be shared
- See available plugins
Start http server
- Example starting a single app/microservice
python -m hopeit.server.web --config-files=server-config.json,app-folder/config/app-config.json
- Additional options:
--config-files: comma-separated file of config files to load, starting with server config, then plugins, then apps
--api-file: path to openapi complaint json specification
--host: server host address or name, default is --host=0.0.0.0
--port: indicates to listen on another port number, default is --port=8020
--path: indicates to listen in a unix socket path, default is disabled
--start-streams: indicates to automatically start events of type STREAM when starting server
- Example starting a single app that depends on plugins:
python engine/server/web.py --config-files=server-config.json,plugin-folder/config/plugin-config.json,app-folder/config/app-config.json
Tools for Engine Development
- To install development dependencies, from engine folder run:
make dev
- To run tests
make test
- To fromat code
make format
- To run static code checks (types, style)
make lint
- To create distribution library (hopeit.engine)
make dist
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
hopeit_engine-0.28.1.tar.gz
(73.1 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file hopeit_engine-0.28.1.tar.gz.
File metadata
- Download URL: hopeit_engine-0.28.1.tar.gz
- Upload date:
- Size: 73.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4f6e320f8af8d7149c8970e1464bb873113e963eaa0810bbe832edcccaec11e6
|
|
| MD5 |
d55f448caabcae2fc41fe67d4785f2b7
|
|
| BLAKE2b-256 |
cd07629bd4f03e6dfd4e06700aa8f55a3f80254619fb43cb608119bf1900dae7
|
File details
Details for the file hopeit_engine-0.28.1-py3-none-any.whl.
File metadata
- Download URL: hopeit_engine-0.28.1-py3-none-any.whl
- Upload date:
- Size: 85.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
83b97b2e664981daaa0cea10b555b0f0b87c9a344d8282f471f82d34da6e1179
|
|
| MD5 |
d78abca017ce949edf3ab23c668d8cd3
|
|
| BLAKE2b-256 |
006f658868f3199fdbfdcf0858301e912c591dee8c217953e963e942969950f9
|