Welcome to use MuLingCloud. We aim to let everything easier.
MLCBase is an open source Python library for multiple uses. It is the base module of all MuLingCloud modules and applications.
Supported platforms:
All tests are conducted by Github workflows. Checking workflows for more information.
Features (v1.2.11)
-
Register
We define a
Registry
to register modules, which allow you to use the module by a config file. -
Config Dictionary
We define a
ConfigDict
for more convenience usage. It is a type of dictionary inherited fromdict
. It has all the features ofdict
while including other more convenient features. -
Logger
We build a
Logger
for more convenience logging management. Actually, this is a slightly improvement based on loguru. Refer to pylog for more information. -
Runtime Analysis
We offer a simple way to evaluate functions in the Python project. All you need is to wrap the target function by a decorator.
-
Emoji Progress Bar
We offer a simple progress bar with emoji status, which has the same usage with tqdm.
-
File Operations
We offer various features to make file operations easier. Besides, we offer a simple way to load and save JSON, YAML, XML and TOML files.
-
Image IO
We offer a simple way to load and save images.
-
One-Time Password
We support two methods for OTP: Time-based One-Time Password (TOTP) and HMAC-based One-Time Password (HOTP).
-
Encryption and Decryption
We offer various methods to encrypt and decrypt or verify text, files and passwords including RSA, AES and Hash.
-
Database
We offer a simple way to operate the database. Supported database backend: MySQL, SQLite.
-
Remote Connection
We support SSH and SFTP for remote connection.
-
Email
We offer a simple API (SMTP) to send email.
-
HashiCorp Vault
We offer several APIs to operate HashiCorp/Vault through HTTP requests. Supported authorization methods: token, username & password. Supported secret engines: KV v1, KV v2, Cubbyhole, TOTP, Transit.
pip install mlcbase -i https://pypi.org/simple
Please refer to tutorial.ipynb for more intuitive instructions.
See all changes in CHANGELOG.
We appreciate all the contributors who add new features or fix bugs, as well as the users who offer valuable feedback.
We welcome all contributors, feel free to create an issue or file a pull request and join us! ❤️
Weiming Chen 💻 🤔 📆 |
Yuanshuang Sun 🤔 |
Mohammad Hossein Mojtahedi |
||||
|
This project is released under the Apache 2.0 license.
- Github Repository: https://github.com/mulingcloud/mlcbase
- GitLab Repository: https://gitlab.com/wm-chen/mlcbase
- Gitee Repository: https://gitee.com/mulingcloud/mlcbase