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.30.0.tar.gz
(77.5 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.30.0.tar.gz.
File metadata
- Download URL: hopeit_engine-0.30.0.tar.gz
- Upload date:
- Size: 77.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.24 {"installer":{"name":"uv","version":"0.11.24","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 |
800c82f538a47a8cdc0c10960d78ee0be65de218b6ecf38391f86b497fa8b35e
|
|
| MD5 |
b8d69212125ad277cc69f0f4e01a0766
|
|
| BLAKE2b-256 |
8d15bbbaabaa873753e281c1a6e86813276426231c52a8449398bfc098316411
|
File details
Details for the file hopeit_engine-0.30.0-py3-none-any.whl.
File metadata
- Download URL: hopeit_engine-0.30.0-py3-none-any.whl
- Upload date:
- Size: 91.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.24 {"installer":{"name":"uv","version":"0.11.24","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 |
ac9d416b7e6b57ffbe173109df929b65ea56e216e2551058ae6021021b1f7b9d
|
|
| MD5 |
fe542dffe3fa3fbfde013b931378fa85
|
|
| BLAKE2b-256 |
3e4e25630162a6f8fea6a51251006a69bbe3836eb4a2d6e1fbb9c2b07fa6639a
|