PageSourceSearch

https://sketchhaus.com/our-story

html sketchhaus.com collected 2026-10-05 18:06:50 UTC 35,559 bytes, 454 lines download raw bytes

1<!DOCTYPE html>
2<html lang="en">
3 <head>
4  <meta charset="utf-8"/>
5  <link href="https://media.base44.com/images/public/69c55066b86bf5910c6d54fc/d5711a19b_sketchhausfavicon.jpg" rel="icon" type="image/jpeg"/>
6  <link href="https://media.base44.com/images/public/69c55066b86bf5910c6d54fc/d5711a19b_sketchhausfavicon.jpg" rel="apple-touch-icon"/>
7  <meta content="width=device-width, initial-scale=1.0" name="viewport"/>
8  <link href="/manifest.json" rel="manifest"/>
9  <!-- Google tag (gtag.js) -->
vendor: 69 bytes, lines 9-10
9
10  <script async="" src="https://www.googletagmanager.com/gtag/js?id=
10G-LKDT31HT89
vendor: 17 bytes, lines 10-12
10">
11  </script>
12  
12<script>
13   
vendor: 139 bytes, lines 13-16
13window.dataLayer = window.dataLayer || [];
14    function gtag(){dataLayer.push(arguments);}
15    gtag('js', new Date());
16    gtag('config', '
16G-LKDT31HT89
vendor: 8 bytes, lines 16-17
16');
17    
17gtag('config', 'AW-18399611827');
18  </script>
18
19  <meta content="hl3h25ol68klgygmzpkegu96ita0rg" name="facebook-domain-verification"/>
20  <title>
21   Our Story | SketchHaus Architects
22  </title>
23  <meta content="Our Story on SketchHaus Architects. An all-in-one management platform for architecture and design studios to." name="description"/>
24  
24<script type="application/ld+json">
25   {
26    "@context": "https://schema.org",
27    "@type": "ArchitecturalService",
28    "name": "SketchHaus",
29    "url": "https://www.sketchhaus.com",
30    "logo": "https://media.base44.com/images/public/69c55066b86bf5910c6d54fc/4beef9012_SketchHauslogo_2026.jpg",
31    "description": "SketchHaus is a residential architecture firm serving homeowners in Atlanta, GA, Jacksonville, FL, and Nashville, TN, specializing in home renovations, facelifts, and new construction permit documents.",
32    "telephone": "+1-844-222-3326",
33    "address": {
34      "@type": "PostalAddress",
35      "streetAddress": "Atlanta",
36      "addressLocality": "Atlanta",
37      "addressRegion": "GA",
38      "postalCode": "30326",
39      "addressCountry": "US"
40    },
41    "geo": {
42      "@type": "GeoCoordinates",
43      "latitude": 33.749,
44      "longitude": -84.388
45    },
46    "areaServed": [
47      { "@type": "City", "name": "Atlanta" },
48      { "@type": "City", "name": "Jacksonville" },
49      { "@type": "City", "name": "Nashville" }
50    ],
51    "priceRange": "$$$$",
52    "sameAs": []
53  }
54  </script>
54
55  <!-- Meta Pixel Code -->
56  
56<script>
vendor: 418 bytes, lines 56-65
56
57   !function(f,b,e,v,n,t,s)
58  {if(f.fbq)return;n=f.fbq=function(){n.callMethod?
59  n.callMethod.apply(n,arguments):n.queue.push(arguments)};
60  if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0';
61  n.queue=[];t=b.createElement(e);t.async=!0;
62  t.src=v;s=b.getElementsByTagName(e)[0];
63  s.parentNode.insertBefore(t,s)}(window, document,'script',
64  'https://connect.facebook.net/en_US/fbevents.js');
65  fbq('init', '
65553956308908666
vendor: 34 bytes, lines 65-67
65');
66  fbq('track', 'PageView');
67  
67</script>
67
68  <!-- End Meta Pixel Code -->
69  
69<script crossorigin="" src="/assets/index-src9JL14.js" type="module">
70  </script>
70
71  <link crossorigin="" href="/assets/index-Ux8rhe9T.css" rel="stylesheet"/>
72  
72<script type="module">
73   if (window.self === window.top) {
74  let lastPath = "";
75  function getPageNameFromPath(path) {
76    const segments = path.split("/").filter(Boolean);
77    return segments[0] || null;
78  }
79  function trackPageView() {
80    const path = window.location.pathname;
81    if (path === lastPath) return;
82    lastPath = path;
83    const pageName = getPageNameFromPath(path) || "home";
84    const appId = "69c55066b86bf5910c6d54fc";
85    if (!appId) return;
86    fetch(`/api/app-logs/${appId}/log-user-in-app/${pageName}`, {
87      method: "POST",
88    }).catch(() => {});
89  }
90  const originalPushState = history.pushState.bind(history);
91  history.pushState = function (...args) {
92    originalPushState(...args);
93    trackPageView();
94  };
95  const originalReplaceState = history.replaceState.bind(history);
96  history.replaceState = function (...args) {
97    originalReplaceState(...args);
98    trackPageView();
99  };
100  window.addEventListener("popstate", trackPageView);
101  trackPageView();
102}
103  </script>
103
104  <meta content="Our Story | SketchHaus Architects" property="og:title"/>
105  <meta content="Our Story on SketchHaus Architects. An all-in-one management platform for architecture and design studios to." property="og:description"/>
106  <meta content="https://media.base44.com/images/public/69c55066b86bf5910c6d54fc/334a7f28d_sketchhausfavicon.jpg/v1/fill/w_1200,h_630/334a7f28d_sketchhausfavicon.jpg" property="og:image"/>
107  <meta content="https://sketchhaus.com/our-story" property="og:url"/>
108  <meta content="website" property="og:type"/>
109  <meta content="SketchHaus Architects" property="og:site_name"/>
110  <meta content="Our Story | SketchHaus Architects" name="twitter:title"/>
111  <meta content="Our Story on SketchHaus Architects. An all-in-one management platform for architecture and design studios to." name="twitter:description"/>
112  <meta content="https://media.base44.com/images/public/69c55066b86bf5910c6d54fc/334a7f28d_sketchhausfavicon.jpg/v1/fill/w_1200,h_630/334a7f28d_sketchhausfavicon.jpg" name="twitter:image"/>
113  <meta content="summary_large_image" name="twitter:card"/>
114  <meta content="https://sketchhaus.com/our-story" name="twitter:url"/>
115  
115<script>
116   (function () {
117  var titles = {"/": "SketchHaus Architects", "/services": "Services | SketchHaus Architects", "/our-story": "Our Story | SketchHaus Architects", "/work-samples": "Work Samples | SketchHaus Architects", "/resources": "Resources | SketchHaus Architects", "/insights": "Insights | SketchHaus Architects", "/renovation-bundle": "Renovation Bundle | SketchHaus Architects", "/schedule-appointment": "Schedule Appointment | SketchHaus Architects", "/black-label-experience": "Black Label Experience | SketchHaus Architects", "/new-construction-bundle": "New Construction Bundle | SketchHaus Architects", "/reschedule-appointment": "Reschedule Appointment | SketchHaus Architects", "/access-pending": "Access Pending | SketchHaus Architects", "/contact": "Contact Us | SketchHaus Architects", "/residential-architects-atlanta": "Residential Architects Atlanta | SketchHaus Architects", "/jacksonville-architect": "Jacksonville Architect | SketchHaus Architects", "/nashville-architect": "Nashville Architect | SketchHaus Architects", "/contact-facelift": "Contact Facelift | SketchHaus Architects", "/contact-renovation": "Contact Renovation | SketchHaus Architects", "/contact-new-construction": "Contact New Construction | SketchHaus Architects", "/contact-black-label": "Contact Black Label | SketchHaus Architects", "/deposit-renovation-bundle": "Deposit Renovation Bundle | SketchHaus Architects", "/privacy-policy": "Privacy Policy | SketchHaus Architects", "/admin": "Admin / Admin Dashboard | SketchHaus Architects", "/admin/boards": "Admin / Admin Boards | SketchHaus Architects", "/admin/projects": "Admin / Admin Projects | SketchHaus Architects", "/admin/sbn": "Admin / Admin SBN | SketchHaus Architects", "/admin/insights": "Admin / Admin Insights | SketchHaus Architects", "/admin/resources": "Admin / Admin Resources | SketchHaus Architects", "/admin/chatbot": "Admin / Admin Chatbot | SketchHaus Architects", "/admin/settings": "Admin / Admin Settings | SketchHaus Architects", "/admin/appointments": "Admin / Admin Appointments | SketchHaus Architects", "/admin/users": "Admin / Admin Users | SketchHaus Architects", "/admin/calendar": "Admin / Admin Calendar | SketchHaus Architects", "/admin/marketing": "Admin / Admin Marketing | SketchHaus Architects", "/admin/image-optimizer": "Admin / Admin Image Optimizer | SketchHaus Architects", "/admin/customers": "Admin / Admin Customers | SketchHaus Architects", "/client-dashboard": "Client Dashboard | SketchHaus Architects", "/builder": "Builder / Builder Dashboard | SketchHaus Architects", "/builder/profile": "Builder / Builder Profile | SketchHaus Architects", "/profile": "User Profile | SketchHaus Architects", "/home": "SketchHaus Architects"};
118  // PascalCase boundaries -> "-", mirroring _PASCAL_BOUNDARY_RE without lookbehind
119  // (old Safari fails to PARSE a lookbehind, taking the whole script down).
120  var dashed = function (s) {
121    return s.replace(/([a-z0-9])([A-Z])/g, "$1-$2").replace(/([A-Z])([A-Z][a-z])/g, "$1-$2");
122  };
123  var decode = function (s) {
124    // A %2F inside ONE segment must not become a structural separator: /blog/foo%2Fbar is a
125    // dynamic slug, and letting it split would match a static /blog/foo/bar and write ITS title.
126    try { var d = decodeURIComponent(s); return d.indexOf("/") < 0 ? d : s; } catch (e) { return s; }
127  };
128  var segments = function (path) { return path.split("/").filter(Boolean).map(decode); };
129  var norm = function (path) {
130    var parts = segments(path).map(function (s) { return dashed(s).toLowerCase(); });
131    return parts.length ? "/" + parts.join("/") : "/";
132  };
133  var lastPath = location.pathname, written = document.title, on = true;
134  var sync = function () {
135    // Path only: a hash/query change is the same page, and the SDK strips its own auth
136    // params with replaceState -- neither must clobber a server-rendered title in place.
137    if (!on || location.pathname === lastPath) return;
138    lastPath = location.pathname;
139    if (document.title !== written) { on = false; return; }
140    // Write ONLY a title the map proves. An unmapped path is a dynamic route (/blog/:slug) the
141    // map cannot carry, and writing a placeholder there is destructive, not merely vague: the
142    // prerender worker runs no setUserAgent, so its capture browser reads as human and executes
143    // this script, and coordinator.js's settle wait explicitly tolerates a full navigation --
144    // a redirect landing on an unmapped path would bake the placeholder into the stored
145    // snapshot. Leaving the title alone degrades to today's behavior instead.
146    // Exact lookup only. A dash-stripped retry here would let a genuinely different /set-up
147    // claim /setup: the map carries a dash-free key only where a PascalCase boundary put the
148    // dashes there, and the client cannot tell the two apart. The map emits every reach
148able
149    // shape per segment instead (_client_url_variants).
150    var title = titles[norm(location.pathname)];
151    if (title === undefined) return;
152    document.title = title;
153    // Re-read: the setter stores verbatim but the getter strips and collapses whitespace, so
154    // keeping the assigned string would make the next sync() read our own write as the app's.
155    written = document.title;
156  };
157  var wrap = function (fn) {
158    // The history entry is already pushed by the time sync() runs, so a throw here would
159    // surface inside the host app's router and break navigation. This is injected into apps
160    // we cannot test, so it swallows rather than trusting the trace.
161    return function () {
162      var r = fn.apply(this, arguments);
163      try { sync(); } catch (e) {}
164      return r;
165    };
166  };
167  history.pushState = wrap(history.pushState);
168  history.replaceState = wrap(history.replaceState);
169  window.addEventListener("popstate", sync);
170})();
171  </script>
171
172  <meta content="yes" name="mobile-web-app-capable"/>
173  <meta content="black" name="apple-mobile-web-app-status-bar-style"/>
174  <meta content="SketchHaus Architects" name="apple-mobile-web-app-title"/>
175  <link href="https://sketchhaus.com/our-story" rel="canonical"/>
176  
176<script data-seo-source="builder" type="application/ld+json">
177   {"name": "SketchHaus Architects", "@context": "https://schema.org", "@type": "WebSite", "url": "https://sketchhaus.com"}
178  </script>
178
179  
179<script data-seo-source="builder" type="application/ld+json">
180   {"name": "SketchHaus Architects", "logo": "https://media.base44.com/images/public/69c55066b86bf5910c6d54fc/3d2d8548e_sketchhausfavicon.png", "@context": "https://schema.org", "@type": "Organization", "url": "https://sketchhaus.com"}
181  </script>
181
182  
182<script data-seo-source="builder" type="application/ld+json">
183   {"@context": "https://schema.org", "@type": "BreadcrumbList", "itemListElement": [{"@type": "ListItem", "position": 1, "name": "Home", "item": "https://sketchhaus.com/"}, {"@type": "ListItem", "position": 2, "name": "Our Story", "item": "https://sketchhaus.com/our-story"}]}
184  </script>
184
185  
185<script>
186   (function(){var SAMPLING_RATE=1.0;var sid=(crypto.randomUUID&&crypto.randomUUID())||(Date.now()+'-'+Math.random().toString(36).slice(2));function samplingValue(v){var h=2166136261;for(var i=0;i<v.length;i++){h^=v.charCodeAt(i);h=Math.imul(h,16777619);}return(h>>>0)/4294967296;}var _sampledOut=samplingValue(sid)>=SAMPLING_RATE;window.Base44=window.Base44||{};if(_sampledOut){var _noop=function(){};window.Base44.recordings=Object.freeze({version:'1',setUserID:_noop,setUserAnonymousID:_noop,setMetadata:_noop,event:_noop,issue:_noop,start:_noop,stop:_noop,isActive:function(){return false;},getSessionID:function(){return null;},getSessionURL:function(){return null;},forceFlushBatch:_noop});try{console.debug('[base44 recordings] session sampled out');}catch(_){}return;}var s=document.createElement('script');window.Base44.__preQ=window.Base44.__preQ||[];if(!window.Base44.recordings){var _pre=function(m){return function(){if(window.Base44.__preQ.length<100)window.Base44.__preQ.push([m,Array.prototype.slice.call(arguments)]);};};window.Base44.recordings={version:'1',setUserID:_pre('setUserID'),setUserAnonymousID:_pre('setUserAnonymousID'),setMetadata:_pre('setMetadata'),event:_pre('event'),issue:_pre('issue'),start:_pre('start'),stop:_pre('stop'),isActive:function(){return false;},getSessionID:function(){return null;},getSessionURL:function(){return null;},forceFlushBatch:_pre('forceFlushBatch')};}s.src='https://unpkg.com/[email protected]/dist/rrweb.umd.cjs';s.integrity='sha384-vi2VGEOczLoSZVrAqXzYd5VWgeBvxiOEgda6/sVzRK+lvhbs9TuqZ474UUptLXLB';s.crossOrigin='anonymous';s.async=true;s.onload=function(){if(!window.rrweb)return;var _started=false;var APP_ID="69c55066b86bf5910c6d54fc";var INGEST_TOKEN="D1Iu4BuTY_KRLITqo3pMhATSCKdw60_-GdnWt_4umTc";var NETWORK_IGNORE_HEADERS=["cookie", "set-cookie", "authorization", "x-api-key"];var buffer=[];var lastFlush=Date.now();var recorderStopFn=null;var _stopRequested=false;var MAX_SESSION_MS=1800000;var IDLE_TIMEOUT_MS=900000;var lastActivityAt=0;var idleTimer=null;var maxTimer=null;var _sdkActive=null;var _sdkPending=[];var SDK_CAP=256;var sdkSafe=function(v){try{return String(v).slice(0,SDK_CAP);}catch(_){return '';}};var sdkDeep=function(v){try{return JSON.parse(JSON.stringify(v||{}));}catch(_){return {};}};var sdkEmit=function(method,payload){if(_sampledOut)return;var ev={method:method,payload:payload||{}};if(_sdkActive){try{_sdkActive('base44_sdk',Object.assign({method:method},payload||{}));}catch(_){}return;}if(_sdkPending.length<100)_sdkPending.push(ev);};window.Base44=window.Base44||{};window.Base44.recordings=Object.freeze({version:'1',setUserID:function(id){sdkEmit('setUserID',{value:sdkSafe(id)});},setUserAnonymousID:function(id){sdkEmit('setUserAnonymousID',{value:sdkSafe(id)});},setMetadata:function(key,value){if(_sampledOut)return;if(typeof key!=='string'||key.length>64)return;var v;try{v=JSON.parse(JSON.stringify(value));}catch(_){return;}sdkEmit('setMetadata',{key:key,value:v});},event:function(name,payload){if(_sampledOut)return;if(typeof name!=='string')return;sdkEmit('event',{name:name.slice(0,64),payload:sdkDeep(payload)});},issue:function(name,payload){if(_sampledOut)return;if(typeof name!=='string')return;sdkEmit('issue',{name:name.slice(0,64),payload:sdkDeep(payload)});},start:function(){},stop:function(){stopRecording('manual',true);},isActive:function(){return !_sampledOut&&!_stopRequested&&!!recorderStopFn;},getSessionID:function(){return _sampledOut?null:sid;},getSessionURL:function(){return null;},forceFlushBatch:function(){if(_sampledOut)return;try{flush(false);}catch(_){}}});if(window.Base44.__preQ&&window.Base44.__preQ.length){var _pq=window.Base44.__preQ;window.Base44.__preQ=[];for(var _qi=0;_qi<_pq.length;_qi++){var _m=_pq[_qi][0],_a=_pq[_qi][1];try{var _fn=window.Base44.recordings[_m];if(typeof _fn==='function')_fn.apply(null,_a);}catch(_){}}}function redactUrl(u){try{u=String(u||'');var q=u.indexOf('?');if(q>=0)u=u.slice(0,q);var h=u.indexOf('#');if(h>=0)u=u.slice(0,h);return u;}catch(_){return'';}}function redactText(s){try{s=String(s||'');return s.replace(/https?:\/\/[^\s)'\"]+|\/[^\s)'\"]*[?#][^\s)'\"]*/g,function(m){return redactUrl(m);});}catch(_){return'';}}function stopRecording(reason,dropBuffered){if(_stopRequested){if(dropBuffered)buffer.length=0;return;}if(!dropBuffered){try{flush(false);}catch(_){}}_stopRequested=true;buffer.length=0;if(idleTimer){try{clearTimeout(idleTimer);}catch(_){}idleTimer=null;}if(maxTimer){try{clearTimeout(maxTimer);}catch(_){}maxTimer=null;}if(recorderStopFn){try{recorderStopFn();recorderStopFn=null;}catch(_){}}
186try{if(reason)console.debug('[base44 recordings] stopped: '+reason);}catch(_){}}function scheduleIdleStop(){if(_stopRequested)return;if(idleTimer){try{clearTimeout(idleTimer);}catch(_){}}var wait=IDLE_TIMEOUT_MS-(Date.now()-lastActivityAt);if(wait<0)wait=0;idleTimer=setTimeout(function(){if(_stopRequested)return;if(Date.now()-lastActivityAt>=IDLE_TIMEOUT_MS)stopRecording('idle_timeout',false);else scheduleIdleStop();},wait);}function markActivity(){if(_stopRequested)return;lastActivityAt=Date.now();scheduleIdleStop();}function isMeaningfulActivityEvent(ev){try{return !!(ev&&ev.type===3&&ev.data&&((ev.data.source===2&&(ev.data.type===2||ev.data.type===4||ev.data.type===9))||ev.data.source===3||ev.data.source===5));}catch(_){return false;}}function sessionLifetimeCapture(){lastActivityAt=Date.now();maxTimer=setTimeout(function(){stopRecording('max_duration',false);},MAX_SESSION_MS);scheduleIdleStop();}function flush(ka){if(_stopRequested){buffer.length=0;return;}if(!buffer.length)return;var tok=null;try{tok=localStorage.getItem('base44_access_token');}catch(_){}var payload={app_id:APP_ID,session_id:sid,events:buffer.splice(0),page_url:redactUrl(location.href),user_agent:navigator.userAgent,access_token:tok};lastFlush=Date.now();var opts={method:'POST',headers:{'Content-Type':'application/json','X-Base44-Recording-Token':INGEST_TOKEN},body:JSON.stringify(payload)};if(ka)opts.keepalive=true;fetch('/api/runtime/session-recordings/ingest',opts).then(function(r){try{var skip=r.headers.get('X-Base44-Recording-Skip');if(skip==='excluded'||skip==='admin'){stopRecording('excluded',true);return;}if(skip==='sampled'){stopRecording('sampled',true);return;}}catch(_){}if(!r.ok){try{console.warn('session-recordings ingest http',r.status);}catch(_){}try{if(r.status===429&&r.headers.get('X-Base44-Recording-Limit')==='reached'){stopRecording('quota_reached',true);}}catch(_){}}}).catch(function(e){try{console.warn('session-recordings ingest err',e);}catch(_){}});}function devtoolsCapture(){if(!(window.rrweb&&window.rrweb.record&&window.rrweb.record.addCustomEvent))return;var add=window.rrweb.record.addCustomEvent;var inside=false;function safe(fn){return function(){if(inside)return;inside=true;try{return fn.apply(this,arguments);}finally{inside=false;}};}['log','info','warn','error','debug'].forEach(function(level){var orig=console[level];if(!orig)return;console[level]=function(){try{add('console',{level:level});}catch(_){}return orig.apply(console,arguments);};});window.addEventListener('error',safe(function(e){add('error',{message:redactText(String(e.message||'unknown')),source:redactUrl(e.filename||''),line:e.lineno||0,col:e.colno||0,stack:e.error&&e.error.stack?redactText(String(e.error.stack).slice(0,1000)):''});}));window.addEventListener('unhandledrejection',safe(function(e){var r=e.reason||{};add('error',{message:redactText(String(r.message||r||'unhandled rejection')),stack:r.stack?redactText(String(r.stack).slice(0,1000)):'',rejection:true});}));if(window.fetch){var of=window.fetch.bind(window);window.fetch=function(input,init){var t0=performance.now();var method=(init&&init.method)||(input&&input.method)||'GET';var url=typeof input==='string'?input:(input&&input.url)||'';if(url.indexOf('/api/runtime/session-recordings/ingest')>=0)return of(input,init);var rurl=redactUrl(url);return of(input,init).then(function(r){try{add('network',{kind:'fetch',method:method,url:rurl,status:r.status,duration:Math.round(performance.now()-t0)});}catch(_){}return r;}).catch(function(e){try{add('network',{kind:'fetch',method:method,url:rurl,status:0,duration:Math.round(performance.now()-t0),error:String(e&&e.message||e)});}catch(_){}throw e;});};}if(window.XMLHttpRequest){var xp=window.XMLHttpRequest.prototype;var oo=xp.open,os=xp.send;xp.open=function(m,u){this.__gp_m=m;this.__gp_u=u;return oo.apply(this,arguments);};xp.send=function(){var xhr=this,t0=performance.now();xhr.addEventListener('loadend',function(){try{if((xhr.__gp_u||'').indexOf('/api/runtime/session-recordings/ingest')<0)add('network',{kind:'xhr',method:xhr.__gp_m||'GET',url:redactUrl(xhr.__gp_u),status:xhr.status,duration:Math.round(performance.now()-t0)});}catch(_){}});return os.apply(this,arguments);};}}var EMAIL_RE=/([a-zA-Z0-9._%+-]+)@([a-zA-Z0-9.-]+\.[a-zA-Z]{2,})/g;var MASK_EMAILS=true;var MASK_NUMBERS=false;var CAPTURE_IFRAMES=true;function maskTextFn(text){if(!MASK_EMAILS||typeof text!=='string')return text;return text.replace(EMAIL_RE,'[email]');}function performanceCapture(){if(!('PerformanceObserver' in window))return;if(!(window.rrweb&&window.rrweb.record&&window.rrweb.record.addCustomEvent))return;var addPerf=window.rrweb.record.addCustomEvent;function emit(metric,value){try{addPerf('performance',{metric:metric,value:value,timestamp:Date.now()});}catch(_){}}try{new PerformanceObserver(function(list){var entries=list.getEntries();var last=entries[entries.length-1];if(last)emit('LCP',Math.round(last.renderTime||last.loadTime||last.startTime||0));}).observe({type:'largest-contentful-paint',buffered:true});}catch(_){}try{new PerformanceObserver(function(list){var entries=list.getEntries();for(var i=0;i<entries.length;i++){var e=entries[i];emit('FID',Math.round(e.processingStart-e.startTime));}}).observe({type:'first-input',buffered:true});}catch(_){}try{var clsValue=0;new PerformanceObserver(function(list){var entries=list.getEntries();for(var i=0;i<entries.length;i++){var e=entries[i];if(!e.hadRecentInput){clsValue+=e.value;}}emit('CLS',Math.round(clsValue*1000)/1000);}).observe({type:'layout-shift',buffered:true});}catch(_){}try{new PerformanceObserver(function(list){var entries=list.getEntries();for(var i=0;i<entries.length;i++){var e=entries[i];if(e.name==='first-contentful-paint')emit('FCP',Math.round(e.startTime));}}).observe({type:'paint',buffered:true});}catch(_){}try{new PerformanceObserver(function(list){var entries=list.getEntries();for(var i=0;i<entries.length;i++){var e=entries[i];emit('TTFB',Math.round(e.responseStart));}}).observe({type:'navigation',buffered:true});}catch(_){}}function issueCapture(){if(_sampledOut)return;if(!(window.rrweb&&window.rrweb.record&&window.rrweb.record.addCustomEvent))return;var addIssue=window.rrweb.record.addCustomEvent;var _crashEmitted=false;function emitIssue(kind){var page='';try{page=location.pathname;}catch(_){}try{addIssue('base44_issue',{kind:kind,page:page});}catch(_){}}var isReload=false;try{if(performance.getEntriesByType){var navEntry=performance.getEntriesByType('navigation')[0];if(navEntry&&navEntry.type==='reload')isReload=true;}}catch(_){}if(!isReload){try{if(performance.navigation&&performance.navigation.type===1)isReload=true;}catch(_){}}if(isReload)emitIssue('page_refresh');try{window.addEventListener('unhandledrejection',function(){try{if(_crashEmitted)return;_crashEmitted=true;emitIssue('app_crash');}catch(_){}},true);}catch(_){}}function startRecord(){if(_started)return;if(_stopRequested){try{console.debug('[base44 recordings] stop requested before start; not recording');}catch(_){}return;}if(_sampledOut){try{console.debug('[base44 recordings] session sampled out');}catch(_){}return;}_started=true;var maskInputOptions={password:true,email:true};if(MASK_NUMBERS){maskInputOptions.number=true;maskInputOptions.tel=true;maskInputOptions.date=true;}var recordOpts={emit:function(ev){if(_stopRequested)return;if(isMeaningfulActivityEvent(ev))markActivity();try{if(ev&&ev.type===4&&ev.data&&typeof ev.data.href==='string')ev.data.href=redactUrl(ev.data.href);}catch(_){}buffer.push(ev);if(ev.type===2){flush(false);return;}if(buffer.length>=50||Date.now()-lastFlush>5000)flush(false);},maskAllInputs:true,maskInputOptions:maskInputOptions,maskTextFn:maskTextFn,maskTextSelector:'.session-record-mask,[data-no-record]',blockSelector:'.session-record-block,[data-no-record-block]',recordCanvas:false,inlineStylesheet:true,checkoutEveryNms:60000};if(CAPTURE_IFRAMES)recordOpts.iframe=true;recorderStopFn=window.rrweb.record(recordOpts);if(window.rrweb.record.addCustomEvent){_sdkActive=window.rrweb.record.addCustomEvent;for(var _i=0;_i<_sdkPending.length;_i++){var _e=_sdkPending[_i];try{_sdkActive('base44_sdk',Object.assign({method:_e.method},_e.payload||{}));}catch(_){}}_sdkPending=[];}devtoolsCapture();performanceCapture();issueCapture();sessionLifetimeCapture();setTimeout(function(){try{window.rrweb.record.takeFullSnapshot&&window.rrweb.record.takeFullSnapshot(true);}catch(_){}},1500);setInterval(function(){flush(false);},5000);window.addEventListener('beforeunload',function(){flush(true);});}function whenReady(){var tries=0;function check(){var root=document.getElementById('root')||document.querySelector('main')||document.body;if(root&&root.childElementCount>0)return startRecord();if(++tries>50)return startRecord();setTimeout(check,100);}check();}
186if(document.readyState==='complete')whenReady();else window.addEventListener('load',whenReady);};(document.head||document.body).appendChild(s);})();
187  </script>
187
188 </head>
189 <body>
190  <noscript>
191   <img height="1" src="https://www.facebook.com/tr?id=553956308908666&amp;ev=PageView&amp;noscript=1" style="display:none" width="1"/>
192  </noscript>
193  <div id="root">
194   <div data-seo-source="builder" id="seo-snapshot" style="position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;">
195    <main>
196     <header>
197      <h1>
198       Our Story | SketchHaus Architects
199      </h1>
200      <p>
201       Our Story on SketchHaus Architects. An all-in-one management platform for architecture and design studios to.
202      </p>
203     </header>
204     <nav aria-label="Pages">
205      <h2>
206       Pages
207      </h2>
208      <ul>
209       <li>
210        <a href="/">
211         Home
212        </a>
213       </li>
214       <li>
215        <a href="/services">
216         Services
217        </a>
218        — Services on SketchHaus Architects. An all-in-one management platform for architecture and design studios to.
219       </li>
220       <li>
221        <a href="/our-story">
222         Our Story
223        </a>
224        — Our Story on SketchHaus Architects. An all-in-one management platform for architecture and design studios to.
225       </li>
226       <li>
227        <a href="/work-samples">
228         Work Samples
229        </a>
230        — Work Samples on SketchHaus Architects. An all-in-one management platform for architecture and design studios to.
231       </li>
232       <li>
233        <a href="/resources">
234         Resources
235        </a>
236        — Resources on SketchHaus Architects. An all-in-one management platform for architecture and design studios to.
237       </li>
238       <li>
239        <a href="/insights">
240         Insights
241        </a>
242        — Insights on SketchHaus Architects. An all-in-one management platform for architecture and design studios to.
243       </li>
244       <li>
245        <a href="/renovation-bundle">
246         Renovation Bundle
247        </a>
248        — Renovation Bundle on SketchHaus Architects. An all-in-one management platform for architecture and design studios to.
249       </li>
250       <li>
251        <a href="/schedule-appointment">
252         Schedule Appointment
253        </a>
254        — Schedule Appointment on SketchHaus Architects. An all-in-one management platform for architecture and design studios to.
255       </li>
256       <li>
257        <a href="/black-label-experience">
258         Black Label Experience
259        </a>
260        — Black Label Experience on SketchHaus Architects. An all-in-one management platform for architecture and design studios to.
261       </li>
262       <li>
263        <a href="/new-construction-bundle">
264         New Construction Bundle
265        </a>
266        — New Construction Bundle on SketchHaus Architects. An all-in-one management platform for architecture and design studios to.
267       </li>
268       <li>
269        <a href="/reschedule-appointment">
270         Reschedule Appointment
271        </a>
272        — Reschedule Appointment on SketchHaus Architects. An all-in-one management platform for architecture and design studios to.
273       </li>
274       <li>
275        <a href="/access-pending">
276         Access Pending
277        </a>
278        — Access Pending on SketchHaus Architects. An all-in-one management platform for architecture and design studios to.
279       </li>
280       <li>
281        <a href="/contact">
282         Contact Us
283        </a>
284        — Contact Us on SketchHaus Architects. An all-in-one management platform for architecture and design studios to.
285       </li>
286       <li>
287        <a href="/residential-architects-atlanta">
288         Residential Architects Atlanta
289        </a>
290        — Residential Architects Atlanta on SketchHaus Architects. An all-in-one management platform for architecture and design studios to.
291       </li>
292       <li>
293        <a href="/jacksonville-architect">
294         Jacksonville Architect
295        </a>
296        — Jacksonville Architect on SketchHaus Architects. An all-in-one management platform for architecture and design studios to.
297       </li>
298       <li>
299        <a href="/nashville-architect">
300         Nashville Architect
301        </a>
302        — Nashville Architect on SketchHaus Architects. An all-in-one management platform for ar
302chitecture and design studios to.
303       </li>
304       <li>
305        <a href="/contact-facelift">
306         Contact Facelift
307        </a>
308        — Contact Facelift on SketchHaus Architects. An all-in-one management platform for architecture and design studios to.
309       </li>
310       <li>
311        <a href="/contact-renovation">
312         Contact Renovation
313        </a>
314        — Contact Renovation on SketchHaus Architects. An all-in-one management platform for architecture and design studios to.
315       </li>
316       <li>
317        <a href="/contact-new-construction">
318         Contact New Construction
319        </a>
320        — Contact New Construction on SketchHaus Architects. An all-in-one management platform for architecture and design studios to.
321       </li>
322       <li>
323        <a href="/contact-black-label">
324         Contact Black Label
325        </a>
326        — Contact Black Label on SketchHaus Architects. An all-in-one management platform for architecture and design studios to.
327       </li>
328       <li>
329        <a href="/deposit-renovation-bundle">
330         Deposit Renovation Bundle
331        </a>
332        — Deposit Renovation Bundle on SketchHaus Architects. An all-in-one management platform for architecture and design studios to.
333       </li>
334       <li>
335        <a href="/privacy-policy">
336         Privacy Policy
337        </a>
338        — Privacy Policy on SketchHaus Architects. An all-in-one management platform for architecture and design studios to.
339       </li>
340       <li>
341        <a href="/admin">
342         Admin Dashboard
343        </a>
344        — Admin / Admin Dashboard on SketchHaus Architects. An all-in-one management platform for architecture and design studios to.
345       </li>
346       <li>
347        <a href="/admin/boards">
348         Admin Boards
349        </a>
350        — Admin / Admin Boards on SketchHaus Architects. An all-in-one management platform for architecture and design studios to.
351       </li>
352       <li>
353        <a href="/admin/projects">
354         Admin Projects
355        </a>
356        — Admin / Admin Projects on SketchHaus Architects. An all-in-one management platform for architecture and design studios to.
357       </li>
358       <li>
359        <a href="/admin/sbn">
360         Admin SBN
361        </a>
362        — Admin / Admin SBN on SketchHaus Architects. An all-in-one management platform for architecture and design studios to.
363       </li>
364       <li>
365        <a href="/admin/insights">
366         Admin Insights
367        </a>
368        — Admin / Admin Insights on SketchHaus Architects. An all-in-one management platform for architecture and design studios to.
369       </li>
370       <li>
371        <a href="/admin/resources">
372         Admin Resources
373        </a>
374        — Admin / Admin Resources on SketchHaus Architects. An all-in-one management platform for architecture and design studios to.
375       </li>
376       <li>
377        <a href="/admin/chatbot">
378         Admin Chatbot
379        </a>
380        — Admin / Admin Chatbot on SketchHaus Architects. An all-in-one management platform for architecture and design studios to.
381       </li>
382       <li>
383        <a href="/admin/settings">
384         Admin Settings
385        </a>
386        — Admin / Admin Settings on SketchHaus Architects. An all-in-one management platform for architecture and design studios to.
387       </li>
388       <li>
389        <a href="/admin/appointments">
390         Admin Appointments
391        </a>
392        — Admin / Admin Appointments on SketchHaus Architects. An all-in-one management platform for architecture and design studios to.
393       </li>
394       <li>
395        <a href="/admin/users">
396         Admin Users
397        </a>
398        — Admin / Admin Users on SketchHaus Architects. An all-in-one management platform for architecture and design studios to.
399       </li>
400       <li>
401        <a href="/admin/calendar">
402         Admin Calendar
403        </a>
404        — Admin / Admin Calendar on SketchHaus Architects. An all-in-one management platform for architecture and design studios to.
405       </li>
406       <li>
407        <a href="/admin/marketing">
408         Admin Marketing
409        </a>
410        — Admin / Admin Marketing on SketchHaus Architects. An all-in-one management platform for ar
410chitecture and design studios to.
411       </li>
412       <li>
413        <a href="/admin/image-optimizer">
414         Admin Image Optimizer
415        </a>
416        — Admin / Admin Image Optimizer on SketchHaus Architects. An all-in-one management platform for architecture and design studios to.
417       </li>
418       <li>
419        <a href="/admin/customers">
420         Admin Customers
421        </a>
422        — Admin / Admin Customers on SketchHaus Architects. An all-in-one management platform for architecture and design studios to.
423       </li>
424       <li>
425        <a href="/client-dashboard">
426         Client Dashboard
427        </a>
428        — Client Dashboard on SketchHaus Architects. An all-in-one management platform for architecture and design studios to.
429       </li>
430       <li>
431        <a href="/builder">
432         Builder Dashboard
433        </a>
434        — Builder / Builder Dashboard on SketchHaus Architects. An all-in-one management platform for architecture and design studios to.
435       </li>
436       <li>
437        <a href="/builder/profile">
438         Builder Profile
439        </a>
440        — Builder / Builder Profile on SketchHaus Architects. An all-in-one management platform for architecture and design studios to.
441       </li>
442       <li>
443        <a href="/profile">
444         User Profile
445        </a>
446        — User Profile on SketchHaus Architects. An all-in-one management platform for architecture and design studios to.
447       </li>
448      </ul>
449     </nav>
450    </main>
451   </div>
452  </div>
453 </body>
454</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.