{"categories":[{"label":"Application Frameworks","url":"https://skillfed.io/packages/category/software-development-libraries-application-frameworks/3"}],"enrichment":{"capability":"Provides unified I/O handling for command-line, GUI, and programmatic argument processing, with type validation, interactive console features, and object profiling and caching utilities.","skillfed_tags":["argument-parsing","gui-builder","interactive-console"],"use_cases":["Build a tool that accepts input via command line, GUI, or programmatic API without rewriting argument handling logic.","Quickly prototype interactive console applications with menu selection and multi-select support using arrow keys.","Validate and coerce user input to specific types (integers, paths, datetimes, dataframes) with custom conditions.","Automatically generate a PyQt5 GUI form from argument definitions without writing widget code.","Profile and log method execution with automatic serialization of script state for debugging."],"what_it_does":"pyiotools is a unified I/O framework that abstracts away the differences between command-line, GUI, and programmatic argument handling. It provides an IOHandler class that works like argparse but can switch between modes: COMMANDLINE mode uses argparse under the hood with a custom help interface, GUI mode builds a PyQt5 form automatically based on argument types, and PROGRAMMATIC mode accepts arguments as a dictionary. The package also includes type validators, interactive console utilities for menu selection, a Script class that auto-profiles method calls and logs them, and a Cache class for object serialization.\n\nThe library is still in alpha and has been abandoned since April 2022, with the last release in February 2021. The description explicitly warns that the API will likely undergo significant breaking changes and documentation will fall out of sync. It carries 14 runtime dependencies including PyQt5, pandas, and APScheduler, making it a heavy addition to any project. The package is useful for rapid prototyping of tools that need multiple input modes, but the lack of maintenance and unstable API make it risky for production use.","worth_installing":"No. The package is abandoned (last commit April 2022) and explicitly warns of unstable API and out-of-sync documentation. The 14 heavy runtime dependencies, including PyQt5, make it a substantial addition for an alpha-stage tool. Use argparse, click, or typer for command-line handling and PyQt5 directly for GUI work instead."},"id":"pyiotools","links":{"html":"https://skillfed.io/packages/pyiotools","md":"https://skillfed.io/packages/pyiotools.md","pypi":"https://pypi.org/project/pyiotools/"},"maintenance":{"status":"abandoned"},"meta":{"latest_release":"2021-02-01","license_spdx":null,"license_treatment":"permissive","name":"pyiotools","python_support":"unspecified","summary":"Provides several utilities for handling I/O"},"popularity":{"monthly_downloads":612558,"position":5756,"tier":"top_15000"},"security":{"n_vulnerabilities":0},"version":"0.3.18"}
