{"categories":[{"label":"Software Development","url":"https://skillfed.io/packages/category/software-development/15"}],"enrichment":{"capability":"Validates, normalizes, and documents structured argument dictionaries with type checking, default values, and variant support for Python programs.","skillfed_tags":["validation","configuration","schema"],"use_cases":["Define and validate configuration dictionaries for scientific computing or deep learning pipelines with nested parameters and type safety","Generate documentation and JSON schemas from argument definitions for use in web UIs or IDE integrations","Normalize user input by applying default values and resolving aliases before passing to downstream functions","Handle variant argument structures where the allowed keys depend on the value of a discriminator flag","Integrate argument validation into Sphinx-based documentation or Jupyter notebooks for interactive parameter exploration"],"what_it_does":"dargs is a Python argument validation and documentation library that examines input dictionaries against a schema you define using the Argument class. It checks types, validates nested keys and sub-argument types, and supports a special variant mode where dictionary contents can be determined by the value of a flag key. The library provides three main methods: check (validates structure), normalize (adds defaults and resolves aliases), and gendoc (outputs documentation with optional HTML anchors for cross-reference).\n\nThe package integrates with PEP 484 type annotations and offers native support for Sphinx, Jupyter Notebook, and DP-GUI. It can generate JSON schema from an Argument definition for use with JSON editors, and supports loading dictionary values from external JSON or YAML files via a $ref key. It's designed for projects that need declarative, reusable argument schemas with built-in documentation generation.","worth_installing":"Yes, if you need declarative argument validation with built-in documentation. The package is actively maintained, has low install friction, and solves a real problem for projects with complex nested configuration. The LGPLv3 license requires careful review if you're building proprietary software, but the library itself is stable and dependency-light."},"id":"dargs","links":{"html":"https://skillfed.io/packages/dargs","md":"https://skillfed.io/packages/dargs.md","pypi":"https://pypi.org/project/dargs/"},"maintenance":{"status":"active"},"meta":{"latest_release":"2026-02-24","license_spdx":null,"license_treatment":"copyleft","name":"dargs","python_support":"supports_current","summary":"Process arguments for the deep modeling project."},"popularity":{"monthly_downloads":134661,"position":11467,"tier":"top_15000"},"security":{"n_vulnerabilities":0},"version":"0.5.0.post0"}
