CLI Configuration

Configuration system for multi-library CLI support

Configuration Class

Define the configuration structure for library-specific CLI tools:


LibraryConfig


def LibraryConfig(
    package_name:str, cli_command:str, display_name:str, module_discovery_paths:List, core_package:str,
    core_utilities:List, base_imports:List=<factory>, css_class_prefix:Optional=None,
    test_pattern_prefix:str='test_', test_pattern_suffix:str='_examples', helper_test_suffix:str='helper_examples'
)->None:

Configuration for a specific library’s CLI tool.

Predefined Configurations

Define configurations for specific libraries:


get_tailwind_config


def get_tailwind_config(
    
)->LibraryConfig: # Configuration for cjm-fasthtml-tailwind library

Get configuration for cjm-fasthtml-tailwind library.

Configuration Management

Functions to manage the active configuration:


get_active_config


def get_active_config(
    
)->LibraryConfig: # The active library configuration (defaults to Tailwind)

Get the active library configuration. If no configuration is set, returns the Tailwind config.


set_active_config


def set_active_config(
    config:LibraryConfig, # The library configuration to set as active
):

Set the active library configuration.


reset_config


def reset_config(
    
):

Reset the active configuration to force re-detection.

Configuration Factory

Factory function to get configuration by name:


get_config_by_name


def get_config_by_name(
    name:str, # Library name ('tailwind')
)->Optional: # LibraryConfig or None if not found

Get a library configuration by name.

Configuration Utilities

Helper functions for working with configurations:


list_available_configs


def list_available_configs(
    
)->List: # List of available library configuration names

List all available library configurations.


get_config_info


def get_config_info(
    config:LibraryConfig, # The library configuration to get information about
)->Dict: # Dictionary with configuration details

Get information about a configuration.

Export