{"categories":[{"label":"Application Frameworks","url":"https://skillfed.io/packages/category/software-development-libraries-application-frameworks/5"}],"enrichment":{"capability":"Dynamically lookup and instantiate classes by string name, class object, or instance, with optional constructor arguments.","skillfed_tags":["factory-pattern","plugin-registry","configuration"],"use_cases":["Build extensible neural network architectures where activation functions are selected by string configuration.","Create plugin systems where users register custom classes and reference them by name in config files.","Integrate with hyperparameter optimization libraries that require serializable string representations of class choices.","Reduce boilerplate in factory patterns by replacing manual class-to-string mappings with automatic registry-based lookup.","Support both programmatic (class/instance) and declarative (string) class selection in the same API."],"what_it_does":"class-resolver provides a ClassResolver object that maintains a registry of classes and resolves them by string name, class reference, or pre-instantiated object. It accepts flexible input formats (lowercase strings, stylized names, class objects, or instances) and instantiates them with optional constructor arguments. The package is designed to eliminate boilerplate dictionary-based class lookup patterns and hard-coded conditional logic, making it especially useful for building extensible machine learning models and plugin systems where users need to specify components via configuration strings.\n\nThe core use case is replacing manual if-elif chains or static lookup dictionaries with a declarative registry that handles case-insensitive string matching, class validation against a base type, and optional default instantiation. It includes contrib modules for common frameworks, reducing repetitive setup code across projects that need flexible component selection.","worth_installing":"Yes. The package is actively maintained, has no known vulnerabilities, minimal dependencies, and solves a genuine pain point in extensible system design. It's particularly valuable if you're building configurable ML models, plugin architectures, or any system where users need to specify classes via strings. The low install friction and permissive license make adoption straightforward."},"id":"class-resolver","links":{"html":"https://skillfed.io/packages/class-resolver","md":"https://skillfed.io/packages/class-resolver.md","pypi":"https://pypi.org/project/class-resolver/"},"maintenance":{"status":"active"},"meta":{"latest_release":"2025-08-28","license_spdx":null,"license_treatment":"permissive","name":"class-resolver","python_support":"supports_current","summary":"Lookup and instantiate classes with style."},"popularity":{"monthly_downloads":89789,"position":13635,"tier":"top_15000"},"security":{"n_vulnerabilities":0},"version":"0.7.1"}
