def main() -> None:
CONTEXT.configuration.validate_configuration()
CONTEXT.configuration.initialize_watcher()
CONTEXT.configuration.start_watching()
is_containerized = (
CONTEXT.configuration.pyproject
.get_dev_tool_config()
.get('containerized', False)
)
container = DependencyContainer()
ServiceRegistry.register_all_services(container)
CommandGroupRegistry.register_command_groups(container)
container.resolve(HomeCommandGroup)
container.resolve(DjangoCommandGroup)
container.resolve(PythonCommandGroup)
container.resolve(AICommandGroup)
container.resolve(DatabaseCommandGroup)
if is_containerized:
container.resolve(JavaScriptCommandGroup)
container.resolve(TaskCommandGroup)
container.resolve(OtherCommandGroup)
if len(sys.argv) > 1:
run_cli_application()
else:
run_tui_application()