graph LR
CLI_Entry_Point["CLI Entry Point"]
Bootstrap_Pre_Processor["Bootstrap Pre-Processor"]
Core_Bootstrap_Orchestrator["Core Bootstrap Orchestrator"]
Web_Server_Manager["Web Server Manager"]
Configuration_Loader["Configuration Loader"]
Configuration_Updater["Configuration Updater"]
Configuration_Change_Handler["Configuration Change Handler"]
CLI_Entry_Point -- "delegates to" --> Bootstrap_Pre_Processor
Bootstrap_Pre_Processor -- "initiates" --> Core_Bootstrap_Orchestrator
Core_Bootstrap_Orchestrator -- "initiates" --> Web_Server_Manager
Configuration_Updater -- "interacts with" --> Configuration_Loader
Configuration_Change_Handler -- "refreshes settings from" --> Configuration_Loader
The Streamlit Server & Bootstrap subsystem is the foundational layer responsible for initializing and launching the Streamlit application. It encompasses the command-line interface, the core bootstrapping logic, the web server startup, and the application's configuration management.
The primary command-line interface entry point for starting a Streamlit application. It parses initial command-line arguments and orchestrates the delegation to the core bootstrapping process. It can also handle downloading remote scripts.
Related Classes/Methods:
Handles essential pre-server setup routines, such as fixing environment-specific issues (e.g., PyDeck, sys paths, Tornado crashes) and installing configuration watchers. It then initiates the core bootstrap process.
Related Classes/Methods:
A central internal function that orchestrates the main sequence of the Streamlit application's bootstrapping process. It is responsible for initiating the server startup.
Related Classes/Methods:
Manages the actual startup of the Tornado web server. This includes setting up signal handlers for graceful shutdown and executing post-startup routines.
Related Classes/Methods:
Provides a unified interface for retrieving all Streamlit configuration settings. It is responsible for loading and merging configurations from various sources, including default values, environment variables, and TOML files.
Related Classes/Methods:
Allows external modules and internal processes to dynamically modify individual Streamlit configuration options, ensuring consistency and proper application of settings.
Related Classes/Methods:
An internal function that defines actions to be taken when Streamlit's configuration changes. It ensures that the application reacts appropriately to updates.
Related Classes/Methods: