🎉 An open source Python module (MLCBase) is released

Apr 20, 2024 · 2 min read

MLCBase is an open source Python library for multiple uses. It is the base module of all MuLingCloud modules and applications.

Please refer to the repository for the up-to-date information.

Features
  • Version

    We define a Version class to manage the version of all MuLingCloud modules or applications. The instantiated versions can easily compare their order by using comparision operators, i.e. ==, !=, <, <=, >, >=.

  • Config Dictionary

    We define a ConfigDict for more convenience usage. It is a type of dictionary inherited from dict. It has all the features of dict 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.

  • File Operations

    We offer various features to make file operations easier.

  • 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 to send email. Currently only supports SMTP (with SSL) server.

  • HashiCorp Vault

    We offer several APIs to operate HashiCorp/Vault through HTTP requests. Supported secret engines: KV v1, KV v2, TOTP, Transit.

Weiming Chen
Authors
Ph.D. Student
A self-driven, quick starter, passionate researcher with a curious mind who enjoys solving complex and challenging real-world computer vision problems.