Dependencies¶
Packages¶
Installed packages under the actual used Ubuntu 23.04
Build Hanami¶
apt-package | Purpose |
---|---|
clang-15 | C++-compiler |
clang-format-15 | Helper for styling the source-code |
make | Build-Tool |
cmake | Tool to genereate make-file for the code. |
bison | Parser-Generator |
flex | Lexxer for the Parser-Generator |
libssl-dev | ssl-library for TCS-encryption of network-connections |
libcrypto++-dev | HMAC, SHA256 and other crypto related operations |
libboost1.74-dev | Provides the Beast-library of Boost, which is used for the REST-API within the Torii |
uuid-dev | Generate UUID's within the code |
libsqlite3-dev | Library to interact with the SQLite3 databases |
protobuf-compiler | Convert protobuf-files into source-code |
gcc | C-compiler |
g++ | C++-compiler |
nvidia-cuda-toolkit | Libraries and compiler for the CUDA-Kernel |
Submodules¶
name | License | Purpose |
---|---|---|
Thalhammer/jwt-cpp | MIT | create and validate jwt-token |
nlohmann/json | MIT | json-parser |
Runtime¶
apt-package | Purpose |
---|---|
openssl | ssl-library for TCS-encryption of network-connections |
libuuid1 | Generate UUID's within the code |
libcrypto++8 | HMAC, SHA256 and other crypto related operations |
libsqlite3-0 | Library to interact with the SQLite3 databases |
libprotobuf23 | Runtime-library for protobuffers |
libboost1.74 | Provides the Beast-library of Boost, which is used for the REST-API within Hanami |
libcudart11.0 | Runtime-library for CUDA |
Python-SDK¶
see requirements.txt
Go CLI-clien¶
see go.sum
Overview¶
The following diagramm shows the basic relations of the library and tools with each other.
I know, this is not a valid UML-diagram or something like this. It should old visualize the relations. A few connections in the diagram doesn't exist at the moment.
Name | Description |
---|---|
Hanami | Core of the Project |
Hanami-Dashboard | Web-Client to directly interact with the Hanami-instance |
hanamictl | CLI-Client to directly interact with the Hanami-instance |
SDK_API_Testing | Functional tests for SDK-library and REST-API |
hanami_sdk | SDK-library to provide functions for all supported actions to interact with the REST-API and automatic handling of the token-exchange. |
hanami_cluster_parser | Parser-library for cluster-templates |
hanami_policies | Parser for custon policy-files. |
hanami_hardware | Collect and aggregate information of the local available hardware ressources. |
hanami_files | File-handler and converter. |
hanami_network | Custom session-layer-protocol for network-communication in the Kitsunemimi-projects. |
hanami_database | Abstration-layer for access databases. At the moment it only contains functionalities for easier creating of sql-requests. |
hanami_sqlite | Simple wrapper-library for Sqlit3 databases. |
hanami_cpu | Simple library to read different information of the cpu, like topological information, speed and energy consumption with RAPL, manipulate the speed of single cores of the cpu and read information of the local memory. |
hanami_obj | This library provides a simple and minimal wavefront obj-parser and creator to generate the content of such files. |
hanami_opencl | Simple wrapper-library for some commonly used OpenCL-functionallities. |
hanami_config | Parser for ini-formated config files. |
hanami_args | Small and easy to use parser for CLI-arguments. |
hanami_ini | Parser for the content of ini-files. |
hanami_crypto | Wrapper-library for crypto-operation from other external libraries, to simplify the usage of basic operation like AES, HMAC, SHA256, etc. |
hanami_common | Simple C++ library with commenly used functions for memory-handling, thread-handling, data representation and testing. |