1<!doctype html> 2<html lang="en"> 3<head> 4<meta charset="utf-8"> 5 6<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> 7 8<title>LiveFirstAI | Burnout & Work Boundary Tracker</title>
9<script type="text/javascript"> 10 window.bubble_session_uid = '1791157439186x529073977029509200'; 11</script>
vendor: 1 bytes, line 11
11
12<script type="text/javascript"> 13 window.headers_source_maps = [["plugin_main_headers_1553183744528x903111989944909800",216,217],["plugin_main_headers_1656156230536x298565765509152800",218,219],["custom_app_header",221,269]] 14</script>
vendor: 1 bytes, line 14
14
15<script type="text/javascript"> 16function make_proxy(target, name) { 17 return new Proxy(target, { 18 get: function(target, prop) { 19 if (prop in target) { 20 return target[prop]; 21 } 22 throw new Error('The variable ' + name + ' is not fully initialized yet'); 23 } 24 }); 25} 26window.appquery = make_proxy({ 27 app_version: function() { return "live"; }, 28 last_change: function() { return "61633506712";}, 29}, 'appquery'); 30window.Lib = new Proxy(function() {}, { 31 get: function(target, prop) { 32 if (prop === 'is_skeleton') { 33 return true; 34 } 35 throw new Error('The variable ' + Lib + ' is not fully initialized yet'); 36 }, 37 apply: function() { 38 return make_proxy({ 39 current_user: function() { 40 return make_proxy({ id: "1791157439186x529073977029509200" }, 'Lib().current_user'); 41 } 42 }, 'Lib()'); 43 } 44}); 45</script>
vendor: 1 bytes, line 45
45
46<script type="text/javascript"> 47function load_error_function (event) { 48 return window.load_error_log.push({ msg: event.message, error_url: event.filename, line: event.lineno, col: event.colno }) 49} 50window.load_error_log = []; 51window.addEventListener('error', load_error_function); 52window.disableLoadErrorFunction = function () { 53 window.removeEventListener('error', load_error_function); 54} 55</script>
55 56<meta name="referrer" content="origin">
57<script type="text/javascript"> 58if (!window._bubble_page_load_data) { 59 window._bubble_page_load_data = {} 60} 61if (!window._bubble_page_load_data.js_execution_timings) { 62 window._bubble_page_load_data.js_execution_timings = {} 63} 64window._bubble_page_load_data.js_execution_timings['pre_early_js'] = Date.now(); 65</script>
65<script type="text/javascript" crossorigin="anonymous" charset="UTF-8" src="/package/early_js/05ae9fe83d6b755291132aab9d325d70918aafd336da1bd91a41a31c8b25734b/early.js"></script>
65<script type="text/javascript"> 66if (!window._bubble_page_load_data) { 67 window._bubble_page_load_data = {} 68} 69if (!window._bubble_page_load_data.js_execution_timings) { 70 window._bubble_page_load_data.js_execution_timings = {} 71} 72window._bubble_page_load_data.js_execution_timings['post_early_js'] = Date.now(); 73</script>
vendor: 1 bytes, line 73
73
74<script type="text/javascript">(function () { 75 function onWebFontFinish () { 76 window.google_web_fonts_active = true; 77if (window.google_web_fonts_active_cb) { 78 window.google_web_fonts_active_cb(); 79} 80 (function fontface_loaded_snippet (font) { 81 if (window.fontface_loaded == null) { 82 window.fontface_loaded = {} 83 } 84 if (font != null) { 85 window.fontface_loaded[font] = true 86 } else { 87 window.all_fontface_loaded = true 88 } 89 if (window.fontface_webfonts_loaded_cb) { 90 return window.fontface_webfonts_loaded_cb(font) 91 } 92})() 93 } 94 const WebFontConfig = {'google': { families: ["Inter Tight:300","Inter Tight:500","Inter:200","Inter:300","Inter:300","Inter:300","Inter:regular","Inter:regular","Inter:regular","Inter:regular","Inter:regular","Inter:500","Inter:500","Inter:500","Inter:500","Inter:600","Inter:600","Inter:600","Inter:600","Inter:600","Inter:700","Inter:700","Inter:700","Inter:700","Lato:700","Open Sans:regular","Open Sans:600"] }, 95 active: function() { 96 onWebFontFinish() 97 }, 98 inactive: function() { 99 console.log('Failed to load all the fonts'); 100 onWebFontFinish() 101 }, 102 fontinactive: function(family_name, fvd) { 103 console.log('fontinactive being called for ' + family_name + ', Google says the fonts didnt render'); 104 onWebFontFinish() 105 } 106 } 107 window.WebFont.load(WebFontConfig); 108})();</script>
vendor: 1 bytes, line 108
108
109<script> 110(function initialize_data() { 111const xhr = new XMLHttpRequest(); 112xhr.onreadystatechange = function() { 113 if (this.readyState === 4 && this.status === 200) { 114 const data = JSON.parse(this.responseText); 115 116 function init_data() { 117 data.forEach(function(d) { 118 Lib().db_instance().initialize_data(d.id, d.data, d.type, d.version); 119 }) 120 } 121 122 if (window.Lib && window.Lib.is_skeleton == null) { 123 init_data(); 124 } else { 125 window.Lib_post_load = init_data; 126 } 127 } 128}; 129xhr.open("GET", "https://livefirstai.com/api/1.1/init/data?location=" + encodeURIComponent(window.location.href), true); 130xhr.send(); 131})(); 132</script>
vendor: 1 bytes, line 132
132
133<script type="text/javascript">window.gm_key = "AIzaSyAlT1MzDJL1hTzjgn_-PbAD3NQEIKjcJi4";</script>
vendor: 1 bytes, line 133
133
134<script type="text/javascript">window.glrl_key_status = false;</script>
vendor: 1 bytes, line 134
134
135<script type="text/javascript">window.bubble_page_load_id = "1791157439221x567";</script>
vendor: 1 bytes, line 135
135
136<script type="text/javascript">window.bubble_plp_token = "1791157439273.qm0SrlSULDfV0vkjzNQWVK6Wa3CBx+ZcFn8S/NoCBDc=";</script>
vendor: 1 bytes, line 136
136
137<script type="text/javascript">window.bubble_is_leanjs = false;</script>
vendor: 1 bytes, line 137
137
138<script type="text/javascript">window.bubble_shim_modules = false;</script>
138 139<link rel="icon" type="image/png" href="https://04ffaa931ec63d67e47911daf09d893e.cdn.bubble.io/cdn-cgi/image/w=128,h=,f=auto,dpr=1,fit=contain/f1750122442180x207585300755861660/Square%20Logo%20and%20Saying.PNG" /> 140<meta name="fragment" content="!"> 141<meta name="description" content="LiveFirstAI helps professionals spot burnout signals and protect work boundaries by tracking work, self-care, and mood with one daily SMS and private weekly AI insights."> 142<link rel="canonical" href="https://livefirstai.com/"/> 143<meta property="og:title" content="LiveFirstAI | Burnout & Work Boundary Tracker" /> 144<meta name="twitter:title" content="LiveFirstAI | Burnout & Work Boundary Tracker" /> 145<meta property="og:site_name" content="LiveFirstAI" /> 146<meta name="twitter:site_name" content="LiveFirstAI" /> 147<meta property="og:description" content="LiveFirstAI helps professionals spot burnout signals and protect work boundaries by tracking work, self-care, and mood with one daily SMS and private weekly AI insights." /> 148<meta name="twitter:description" content="LiveFirstAI helps professionals spot burnout signals and protect work boundaries by tracking work, self-care, and mood with one daily SMS and private weekly AI insights." /> 149<link rel="image_src" href="https://04ffaa931ec63d67e47911daf09d893e.cdn.bubble.io/cdn-cgi/image/w=,h=,f=auto,dpr=1,fit=contain/f1750122459152x180067019621285700/Square%20Logo%20and%20Saying.PNG" /> 150<meta property="og:image" content="https://04ffaa931ec63d67e47911daf09d893e.cdn.bubble.io/cdn-cgi/image/w=,h=,f=auto,dpr=1,fit=contain/f1750122459152x180067019621285700/Square%20Logo%20and%20Saying.PNG" /> 151<meta name="twitter:image:src" content="https://04ffaa931ec63d67e47911daf09d893e.cdn.bubble.io/cdn-cgi/image/w=,h=,f=auto,dpr=1,fit=contain/f1750122459152x180067019621285700/Square%20Logo%20and%20Saying.PNG" /> 152<meta property="og:url" content="https://livefirstai.com/" /> 153<meta property="og:type" content="website" /> 154<meta name="twitter:card" content="summary_large_image" /> 155<link rel="apple-touch-icon" href="https://04ffaa931ec63d67e47911daf09d893e.cdn.bubble.io/cdn-cgi/image/w=192,h=,f=auto,dpr=1,fit=contain/f1750122419727x645591517869884500/Square%20Logo%20and%20Saying.PNG"> 156<meta name="viewport" content="width=device-width,initial-scale=1.0">
157<script type="text/javascript">window._p = '{"id":"app_growth_2023","no_branding":true,"import_export_csv":true,"custom_domain":true}';</script>
vendor: 1 bytes, line 157
157
158<script type="text/javascript">window.bubble_page_name = "index";</script>
vendor: 1 bytes, line 158
158
159<script type="text/javascript">window.__bubble_module_mode = false;</script>
159 160<link type="text/css" href="/package/run_css/aa2b7a2197f0c11d16fa970217c80359d8e9bda554ec59d82424ade7e1e97325/tliederbach/live/index/xfalse/xfalse/run.css" rel="stylesheet">
161<script type="text/javascript"> 162if (!window._bubble_page_load_data) { 163 window._bubble_page_load_data = {} 164} 165if (!window._bubble_page_load_data.js_execution_timings) { 166 window._bubble_page_load_data.js_execution_timings = {} 167} 168window._bubble_page_load_data.js_execution_timings['pre_run_js'] = Date.now(); 169</script>
vendor: 1 bytes, line 169
169
170<script type="text/javascript" crossorigin="anonymous" charset="UTF-8" src="/package/pre_run_jquery_js/dee903a9e36db713e4c86d0cdd96d921e37be0c1293ed8dee29e2e4d7713b9ff/pre_run_jquery.js"></script>
vendor: 1 bytes, line 170
170
171<script type="text/javascript" crossorigin="anonymous" charset="UTF-8" src="/package/run_js/7071f7b382ccc6d041103d870a4570d077555f03000bb5d6d4422cbe7bed9355/xfalse/x33/run.js"></script>
vendor: 1 bytes, line 171
171
172<script type="text/javascript"> 173if (!window._bubble_page_load_data) { 174 window._bubble_page_load_data = {} 175} 176if (!window._bubble_page_load_data.js_execution_timings) { 177 window._bubble_page_load_data.js_execution_timings = {} 178} 179window._bubble_page_load_data.js_execution_timings['post_run_js'] = Date.now(); 180</script>
vendor: 1 bytes, line 180
180
181<script type="text/javascript"> 182if (!window._bubble_page_load_data) { 183 window._bubble_page_load_data = {} 184} 185if (!window._bubble_page_load_data.js_execution_timings) { 186 window._bubble_page_load_data.js_execution_timings = {} 187} 188window._bubble_page_load_data.js_execution_timings['pre_static_js'] = Date.now(); 189</script>
189<script type="text/javascript" crossorigin="anonymous" charset="UTF-8" src="/package/static_js/24c4fecc12bc9391fd63340111cf73182b0238d1d4377f04e906fec363a9626e/tliederbach/live/index/xnull/xfalse/xfalse/xfalse/static.js"></script>
189<script type="text/javascript"> 190if (!window._bubble_page_load_data) { 191 window._bubble_page_load_data = {} 192} 193if (!window._bubble_page_load_data.js_execution_timings) { 194 window._bubble_page_load_data.js_execution_timings = {} 195} 196window._bubble_page_load_data.js_execution_timings['post_static_js'] = Date.now(); 197</script>
vendor: 1 bytes, line 197
197
198<script type="text/javascript"> 199if (!window._bubble_page_load_data) { 200 window._bubble_page_load_data = {} 201} 202if (!window._bubble_page_load_data.js_execution_timings) { 203 window._bubble_page_load_data.js_execution_timings = {} 204} 205window._bubble_page_load_data.js_execution_timings['pre_dynamic_js'] = Date.now(); 206</script>
206<script type="text/javascript" crossorigin="anonymous" charset="UTF-8" src="/package/dynamic_js/afcea59550fa2c503ab43ffd97d81e2dc1ec44c1856946aaa55d89604fa68bca/tliederbach/live/index/xnull/xfalse/xfalse/en_us/xfalse/xfalse/dynamic.js"></script>
206<script type="text/javascript"> 207if (!window._bubble_page_load_data) { 208 window._bubble_page_load_data = {} 209} 210if (!window._bubble_page_load_data.js_execution_timings) { 211 window._bubble_page_load_data.js_execution_timings = {} 212} 213window._bubble_page_load_data.js_execution_timings['post_dynamic_js'] = Date.now(); 214</script>
vendor: 1 bytes, line 214
214
215<script type="text/javascript">window._bubble_page_load_data.js_execution_timings.plugin_js_start_execution = Date.now();</script>
215 216<!-- 1553183744528x903111989944909800 -->
217<script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.9.4/Chart.bundle.min.js"></script>
217 218<!-- 1656156230536x298565765509152800 --> 219<!-- powered by BlockCat -->
220<script type="text/javascript">window._bubble_page_load_data.js_execution_timings.plugin_js_end_execution = Date.now();</script>
220 221<!-- custom app meta header --> 222<!-- Google Tag Manager -->
223<script>
vendor: 327 bytes, lines 223-227
223(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': 224new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], 225j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 226'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); 227})(window,document,'script','dataLayer','
227GTM-MSHHWB5W
vendor: 3 bytes, line 227
227');
227</script>
227 228<!-- End Google Tag Manager --> 229
230<script type="application/ld+json"> 231{ 232 "@context": "https://schema.org", 233 "@graph": [ 234 { 235 "@type": "Organization", 236 "@id": "https://livefirstai.com/#organization", 237 "name": "LiveFirstAI", 238 "url": "https://livefirstai.com/", 239 "description": "LiveFirstAI helps professionals spot burnout signals and protect work boundaries by tracking work, self-care, and mood with one daily SMS and private weekly AI insights." 240 }, 241 { 242 "@type": "WebSite", 243 "@id": "https://livefirstai.com/#website", 244 "url": "https://livefirstai.com/", 245 "name": "LiveFirstAI", 246 "publisher": { 247 "@id": "https://livefirstai.com/#organization" 248 }, 249 "description": "LiveFirstAI helps professionals spot burnout signals and protect work boundaries by tracking work, self-care, and mood with one daily SMS and private weekly AI insights." 250 }, 251 { 252 "@type": "SoftwareApplication", 253 "@id": "https://livefirstai.com/#software", 254 "name": "LiveFirstAI", 255 "url": "https://livefirstai.com/", 256 "applicationCategory": "LifestyleApplication", 257 "operatingSystem": "Web, SMS", 258 "description": "LiveFirstAI helps professionals spot burnout signals and protect work boundaries by tracking work, self-care, and mood with one daily SMS and private weekly AI insights.", 259 "featureList": [ 260 "Daily SMS check-ins", 261 "Work boundary tracking", 262 "Self-care tracking", 263 "Mood tracking", 264 "Private weekly AI insights" 265 ] 266 } 267 ] 268} 269</script>
269 270</head> 271<body>
271<script type="text/javascript"> 272window.addEventListener('DOMContentLoaded', function () { 273 if (window.appquery == null) { 274 (function() { 275 const html = ` 276 <div class="error-card"> 277 <div class="error-section"> 278 <div class="error-title">Your browser was unable to load some necessary resources</div> 279 <div class="error-message">Contact your IT network administrator to allow access to: 280 ⢠d3dqmih97rcqmh.cloudfront.net 281 ⢠04ffaa931ec63d67e47911daf09d893e.cdn.bubble.io/ 282 ⢠d1muf25xaso8hp.cloudfront.net</div> 283 </div> 284 </div> 285 ` 286 287 const css = document.createElement('style') 288 css.type = 'text/css' 289 css.appendChild( 290 document.createTextNode(` 291 .error-overlay { 292 width: 100%; 293 height: 100%; 294 background: rgba(0,0,0,0.30); 295 overflow: hidden; 296 display: flex; 297 justify-content: center; 298 align-items: flex-start; 299 position: fixed; 300 inset: 0; 301 z-index: 999999; 302 } 303 304 .error-card { 305 width: 500px; 306 margin: 40px; 307 background: white; 308 box-shadow: 0px 1px 2px rgba(0,0,0,0.10); 309 border-radius: 8px; 310 display: flex; 311 flex-direction: column; 312 } 313 314 .error-section { 315 padding: 40px; 316 display: flex; 317 flex-direction: column; 318 gap: 12px; 319 } 320 321 .error-title { 322 color: #1A1A1A; 323 font-size: 18px; 324 font-family: Arial, sans-serif; 325 font-weight: 600; 326 line-height: 28px; 327 } 328 329 .error-message { 330 color: #525252; 331 font-size: 14px; 332 font-family: Arial, sans-serif; 333 font-weight: 400; 334 line-height: 20px; 335 white-space: pre-wrap; 336 } 337 `) 338 ) 339 document.head.appendChild(css) 340 341 const container = document.createElement('div') 342 container.className = 'error-overlay' 343 container.innerHTML = html 344 document.body.appendChild(container) 345 })() 346 httpRequest = new XMLHttpRequest(); 347httpRequest.open('POST', '/user/m', true); 348httpRequest.setRequestHeader('Content-Type', 'application/json'); 349httpRequest.send(JSON.stringify({measures: {page_load_error: 1, url: document.location.href, errors: window.load_error_log}})); 350 }; 351}); 352</script>
352<!-- Google Tag Manager (noscript) -->
vendor: 68 bytes, lines 352-353
352 353<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=
353GTM-MSHHWB5W
vendor: 83 bytes, lines 353-354
353" 354height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
355<!-- End Google Tag Manager (noscript) -->
355<script type="text/javascript">window.addEventListener('DOMContentLoaded', function () {if (window.appquery && window.app == null) {(function() { 356 const html = ` 357 <div class="error-card"> 358 <div class="error-section"> 359 <div class="error-title">Your browser was unable to load the application</div> 360 <div class="error-message">We've been notified of the issue. Please try again in a few moments and make sure not to use ad-blockers.</div> 361 </div> 362 </div> 363 ` 364 365 const css = document.createElement('style') 366 css.type = 'text/css' 367 css.appendChild( 368 document.createTextNode(` 369 .error-overlay { 370 width: 100%; 371 height: 100%; 372 background: rgba(0,0,0,0.30); 373 overflow: hidden; 374 display: flex; 375 justify-content: center; 376 align-items: flex-start; 377 position: fixed; 378 inset: 0; 379 z-index: 999999; 380 } 381 382 .error-card { 383 width: 500px; 384 margin: 40px; 385 background: white; 386 box-shadow: 0px 1px 2px rgba(0,0,0,0.10); 387 border-radius: 8px; 388 display: flex; 389 flex-direction: column; 390 } 391 392 .error-section { 393 padding: 40px; 394 display: flex; 395 flex-direction: column; 396 gap: 12px; 397 } 398 399 .error-title { 400 color: #1A1A1A; 401 font-size: 18px; 402 font-family: Arial, sans-serif; 403 font-weight: 600; 404 line-height: 28px; 405 } 406 407 .error-message { 408 color: #525252; 409 font-size: 14px; 410 font-family: Arial, sans-serif; 411 font-weight: 400; 412 line-height: 20px; 413 white-space: pre-wrap; 414 } 415 `) 416 ) 417 document.head.appendChild(css) 418 419 const container = document.createElement('div') 420 container.className = 'error-overlay' 421 container.innerHTML = html 422 document.body.appendChild(container) 423 })()}});</script>
423 424<img style="display: none;" src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" /> 425</body> 426</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.