{"categories":[{"label":"Software Development","url":"https://skillfed.io/packages/category/software-development/14"},{"label":"User Interfaces","url":"https://skillfed.io/packages/category/software-development-user-interfaces/2"},{"label":"Desktop Environment","url":"https://skillfed.io/packages/category/desktop-environment"}],"enrichment":{"capability":"Provides a declarative schema for organizing application metadata like menus, keybindings, and commands, inspired by the VS Code application model.","skillfed_tags":["application-schema","declarative-config","command-registry"],"use_cases":["Define and validate menu structures and command hierarchies for a desktop application without hardcoding UI logic.","Centralize keybinding definitions and action registration in a single declarative schema.","Build plugin systems where commands and menus are registered dynamically via the schema.","Organize application metadata in a way that can be serialized, versioned, and shared across tools.","Implement a command palette or action browser by querying the application schema."],"what_it_does":"app-model is a Python library that implements a generic application schema for declaratively organizing application metadata. It provides a structured way to define menus, keybindings, actions, and commands using a model inspired by VS Code's application architecture. The package relies on Pydantic for data validation, in-n-out for dependency injection, psygnal for event signaling, and typing-extensions for enhanced type hints.\n\nThe library is designed for developers building desktop or complex applications who need a consistent, schema-driven way to manage application structure and configuration. It is currently in Alpha status, meaning the API may change, but it is actively maintained and supports Python 3.9 through 3.13.","worth_installing":"Yes, if you are building a desktop or complex application and want a structured, schema-driven way to organize menus, commands, and keybindings. The low install friction, active maintenance, permissive license, and lack of known vulnerabilities make it a safe choice. Be aware it is in Alpha, so expect potential API changes; start with it if you value declarative organization over a mature, battle-tested API."},"id":"app-model","links":{"html":"https://skillfed.io/packages/app-model","md":"https://skillfed.io/packages/app-model.md","pypi":"https://pypi.org/project/app-model/"},"maintenance":{"status":"active"},"meta":{"latest_release":"2025-11-09","license_spdx":null,"license_treatment":"permissive","name":"app-model","python_support":"supports_current","summary":"Generic application schema implemented in python"},"popularity":{"monthly_downloads":187917,"position":9956,"tier":"top_15000"},"security":{"n_vulnerabilities":0},"version":"0.5.1"}
