Skip to main content

A sample tool by MinWei

Project description

minwei_tools

This tools contain 3 major function

  1. Dotter : Display animated text on screen during long missions
  2. re_result : A Rust-like approach to error handling
  3. server : A file transfer server
  4. us_doc : A uv doc generator

Install

pip install minwei_tools

Usage

  • File Transfer server

    python -m minwei_tools.server -p {port} -h {host}
    
  • Dotter

    alt text

    from minwei_tools import Dotter, piano, slash
    from time import sleep
    
    with Dotter(message="[*] Grabing player log", cycle=slash, delay=0.2, show_timer=0) as d:
        d.insert_message("This is a test message 1")
        sleep(1)
        d.insert_message("This is a test message 2")
        sleep(1)
        d.insert_message("This is a test message 3")
        sleep(1)
        d.update_message("[*] Player log grabbed", delay=0.1)
        sleep(1)
        d.insert_message("This is a test message 4")
        sleep(1)
        d.insert_message("This is a test message 5")
        sleep(1)        
        d.insert_message("This is a test message 6")
        for i in range(7, 80):
            d.insert_message(f"This is another message {i}", max_str = 10, prefix = "*")
            sleep(0.05)
        for i in range(80, 250):
            d.insert_message(f"This is another message {i}", max_str = 20, prefix = f"🚀{cm.Style.RESET_ALL}{cm.Style.BRIGHT}")
            sleep(0.01)       
        for i in range(250, 500):
            d.insert_message(f"This is another message {i}", max_str = 5, prefix = f"{cm.Style.RESET_ALL}{cm.Style.BRIGHT}🚀{cm.Style.RESET_ALL}{cm.Style.DIM}")
            sleep(0.01)                      
    

    Also support an async dotter

    from time import sleep
    import asyncio
    
    from minwei_tools import AsyncDotter
    
    async def main():
        async with AsyncDotter("Thinking", show_timer=True, delay=0.1):
            await asyncio.sleep(120)
    
    asyncio.run(main())
    
  • rs_result

    from minwei_tools.rs_result import Result, Ok, Err
    
    def devide(a: int, b: int) -> Result[int, str]:
        if b == 0:
            return Err("Division by zero error")
        return Ok(a // b)
    
    """
    >>> result : Result[int, str] = devide(10, 0)
    >>> result.is_ok()
    False
    >>> result.is_err()
    >>> result : Result[int, str] = devide(10, 2)
    >>> result.is_ok()
    True
    >>> result.unwrap()
    5
    """
    
    result : Result[int, str] = devide(10, 0)
    match result:
        case Ok(value):
            print(f"Result: {value}")
        case Err(value):
            print(f"Error: {value}")
            
    result : Result[int, str] = devide(10, 2)
    match result:
        case Ok(value):
            print(f"Result: {value}")
        case Err(value):
            print(f"Error: {value}")
    
  • uv doc

    python -m minwei_tools.uv_doc -p {PROJECT_NAME}
    
    -h, --help            show this help message and exit
    -p PROJECT_NAME, --project_name PROJECT_NAME
                            Name of the project. Defaults to the current directory name.
    -o OUTPUT, --output OUTPUT
                            Output file name. Defaults to README.md.
    -d DIRECTORY, --directory DIRECTORY
                            Directory to scan. Defaults to the current working directory.
    

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

minwei_tools-0.1.11.tar.gz (10.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

minwei_tools-0.1.11-py3-none-any.whl (11.4 kB view details)

Uploaded Python 3

File details

Details for the file minwei_tools-0.1.11.tar.gz.

File metadata

  • Download URL: minwei_tools-0.1.11.tar.gz
  • Upload date:
  • Size: 10.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.22

File hashes

Hashes for minwei_tools-0.1.11.tar.gz
Algorithm Hash digest
SHA256 8cd649f057119c502155c47502fdfbbf335392859798d43db97f936b6d18764b
MD5 37a4a89e76816f1d4c42cf2025044191
BLAKE2b-256 3514c6451ade69d74c71a5a5bbac4382ba81088d9e60b38068ce65d72b6f5a23

See more details on using hashes here.

File details

Details for the file minwei_tools-0.1.11-py3-none-any.whl.

File metadata

  • Download URL: minwei_tools-0.1.11-py3-none-any.whl
  • Upload date:
  • Size: 11.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.22

File hashes

Hashes for minwei_tools-0.1.11-py3-none-any.whl
Algorithm Hash digest
SHA256 ff44533b6a96ae9be7b9abbc7a8418314971db43c7b24553ffafbc9a09e7c198
MD5 88b04b958086329e9eeffcb038fac3cb
BLAKE2b-256 ec8adeebb9b2fa26d709c19294cc45e229e324b55054e49b58c80cbdc0647435

See more details on using hashes here.

Supported by

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