Skip to main content

A simple tool to automate the installation and integration of external tools.

Project description

autokit version 0.12.1

A framework for effortlessly integrating external tools into your Python projects.

Installation

pip install autokit 

Basic Usage

from autokit import ToolConfig, PlatformData, ExternalTool
from pathlib import Path

class TestTool(ExternalTool):
    def __init__(self, base_dir: str = "./third-party", progress_bar: bool = True, lazy_setup: bool = False):
        super().__init__(base_dir, progress_bar, lazy_setup)

    @property
    def config(self) -> ToolConfig:
        return ToolConfig(
            tool_name="tests-tool",
            platform_data={
                "windows": PlatformData(
                    url="https://github.com/IRSS-UBC/MediaTools/releases/download/latest/win-x64.zip",
                    subdir=Path(""),
                    executable=Path("IRSSMediaTools.exe")
                ),
            },
            python=False,
        )

    def help(self):
        self.run_command("help")


if __name__ == "__main__":
    test = TestTool()
    test.help()

Features

  • Automatic download and configuration of external tools on first use.
  • Define tools and their commands in a configuration file.
  • Streamlined execution of tool commands from within your Python code.

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

License

MIT

Contact: olson@student.ubc.ca

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

autokit-0.12.1.tar.gz (5.6 kB view hashes)

Uploaded Source

Built Distribution

autokit-0.12.1-py3-none-any.whl (6.8 kB view hashes)

Uploaded Python 3

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