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.2)
  • 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, and XML 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.3.tar.gz (68.6 kB view details)

Uploaded Source

Built Distribution

mlcbase-1.2.3-py3-none-any.whl (78.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: mlcbase-1.2.3.tar.gz
  • Upload date:
  • Size: 68.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.10.13

File hashes

Hashes for mlcbase-1.2.3.tar.gz
Algorithm Hash digest
SHA256 8d4afb7242d8edadc52a02b3b22bde737c8cbb0338c0af947945f2b667029836
MD5 beedc4503898c8546b0a9bcdf7b14e4f
BLAKE2b-256 13c04d4fafa8f5d5a617a925e6de113df36a457b95bbdb177f189a8cbcb23a6e

See more details on using hashes here.

File details

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

File metadata

  • Download URL: mlcbase-1.2.3-py3-none-any.whl
  • Upload date:
  • Size: 78.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.10.13

File hashes

Hashes for mlcbase-1.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 5704501d25b8bb433812b7f2922065e5ac2fef89890afef6d645a0c2ba14a1d4
MD5 80b4a70e3d6e10b726e67b8d7bee5c7f
BLAKE2b-256 9e64d314fb3a4afe4b8a6975d33b88880312f006dbcf1b4428d1a5dd6d3bfa5f

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