Skip to main content

The base module of all MuLingCloud modules and applications.

Project description

PyPI License All Contributors

Introduction

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:

  • 😄 Windows (Python 3.6+)
  • 😄 Linux (Python 3.7+)
  • MacOS (untested, maybe. I don't have a MacOS machine😫. Anyone can help me?)
Features (v1.2.4)
  • 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 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.

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

  • 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, TOTP, Transit.

Installation

pip install mlcbase -i https://pypi.org/simple

Getting Started

Please refer to tutorial.ipynb for more intuitive instructions.

Changelogs

See all changes in CHANGELOG.

Contributors

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
Weiming Chen

💻 🤔 📆 ⚠️
Yuanshuang Sun
Yuanshuang Sun

🤔 ⚠️

License

This project is released under the Apache 2.0 license.

Repository

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mlcbase-1.2.4.tar.gz (69.1 kB view details)

Uploaded Source

Built Distribution

mlcbase-1.2.4-py3-none-any.whl (79.0 kB view details)

Uploaded Python 3

File details

Details for the file mlcbase-1.2.4.tar.gz.

File metadata

  • Download URL: mlcbase-1.2.4.tar.gz
  • Upload date:
  • Size: 69.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.13.0

File hashes

Hashes for mlcbase-1.2.4.tar.gz
Algorithm Hash digest
SHA256 826d2a203864342e4fd247f23cb4f08f2246d06831ae2e5c5647ceaf9ea43f75
MD5 78664d3ddda969bfef2b0ca53b15883b
BLAKE2b-256 e566ee2354d614572e75aa1cd796242a3666f51b06594496f7b5cb7fd4f9d2e9

See more details on using hashes here.

File details

Details for the file mlcbase-1.2.4-py3-none-any.whl.

File metadata

  • Download URL: mlcbase-1.2.4-py3-none-any.whl
  • Upload date:
  • Size: 79.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.13.0

File hashes

Hashes for mlcbase-1.2.4-py3-none-any.whl
Algorithm Hash digest
SHA256 b5faecbdcfe101f692c06b7cbd61b675bb986544fec9377feb1ec821e66d1467
MD5 ba7c48fdbe4cb98a283db1864763ff83
BLAKE2b-256 d662f135bcb08efcb3994acd34fe1e839ac1167f005f0ae7d47909c479315353

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page