mini_arcade.modules.game_scaffold.processors ============================================ .. py:module:: mini_arcade.modules.game_scaffold.processors .. autoapi-nested-parse:: Processor for creating starter Mini Arcade game projects. Classes ------- .. autoapisummary:: mini_arcade.modules.game_scaffold.processors.ScaffoldSpec mini_arcade.modules.game_scaffold.processors.GameScaffoldProcessor Module Contents --------------- .. py:class:: ScaffoldSpec Specification for generating a game scaffold, containing all necessary information about the game and project structure. :ivar game_id: The unique identifier for the game, used for package naming and project structure. :ivar package: The Python package name for the game's source code. :ivar title: The human-readable title for the game. :ivar target_dir: The target directory where the game scaffold will be created. :ivar dependency_series: The version series (e.g. "0.1") of mini-arcade dependencies to use in the generated pyproject.toml. .. py:attribute:: game_id :type: str .. py:attribute:: package :type: str .. py:attribute:: title :type: str .. py:attribute:: target_dir :type: pathlib.Path .. py:attribute:: dependency_series :type: str .. py:class:: GameScaffoldProcessor(**kwargs) Bases: :py:obj:`mini_arcade.cli.base_command_processor.BaseCommandProcessor` Processor for creating starter Mini Arcade game projects. :ivar game_id (str): The unique identifier for the game, used for package naming and project structure. :ivar package (str | None): Optional custom package name for the game's source code. :ivar title (str | None): Optional human-readable title for the game. :ivar destination (str): The parent directory where the game scaffold will be created (default is "games"). :ivar force (bool): Whether to overwrite existing files if the target directory already exists (default is False). :ivar dry_run (bool): If True, do not create any files but print the intended actions (default is False). .. py:attribute:: game_id :type: str .. py:attribute:: package :type: str | None :value: None .. py:attribute:: title :type: str | None :value: None .. py:attribute:: destination :type: str :value: 'games' .. py:attribute:: force :type: bool :value: False .. py:attribute:: dry_run :type: bool :value: False .. py:method:: run() -> int Run the command processor. :return: Optional result of the command execution. :rtype: Optional[Any]