To accommodate the asynchronous loading of web applications, I like to use an `initializeApp` function within the `DOMContentLoaded` event listener to capture all application startup tasks in one place. ```javascript title="JavaScript.html" // initialize app function initializeApp(data){ setData(data); populateUI(data); document.getElementById('spinner').classList.add('d-none'); } // DOM Content Loaded event listener document.addEventListener('DOMContentLoaded', function(){ // Get data google.script.run .withSuccessHandler(initializeApp) .getData(); } ```