1<!DOCTYPE html> 2<html lang="en-US"> 3 <head> 4 <title>About GetDevDone - GetDevDoneâ¢</title> 5 <meta charset="utf-8"> 6 <meta name="format-detection" content="telephone=no"> 7 <meta name="description" content="GetDevDoneâ¢, powered by P2H®, is the engineering partner for digital agencies since 2005"> 8 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 9 10 <link rel="icon" href="/images/favicon.ico" sizes="any"><!-- 32Ã32 --> 11 <link rel="icon" href="/images/icon.svg" type="image/svg+xml"> 12 <link rel="apple-touch-icon" href="/images/apple-touch-icon.png"><!-- 180Ã180 --> 13 14 15 <link rel="canonical" href="https://getdevdone.com/about-us.html"/> 16 17 18 <!-- Meta tags for social sharing --> 19 <meta property="og:title" content="About GetDevDone - GetDevDoneâ¢"> 20 <meta property="og:description" content="GetDevDoneâ¢, powered by P2H®, is the engineering partner for digital agencies since 2005"> 21 <meta property="og:image" content="https://getdevdone.com/images/og-image-how-websites.webp"> 22 <meta property="og:url" content="https://getdevdone.com/about-us.html"> 23 <!-- Twitter Card meta tags --> 24 <meta name="twitter:card" content="summary_large_image"> 25 <meta name="twitter:title" content="About GetDevDone - GetDevDoneâ¢"> 26 <meta name="twitter:description" content="GetDevDoneâ¢, powered by P2H®, is the engineering partner for digital agencies since 2005"> 27 <meta name="twitter:image" content="https://getdevdone.com/images/og-image-how-websites.webp"> 28 <link rel="preconnect" href="https://fonts.googleapis.com"> 29 <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> 30 <link href="https://fonts.googleapis.com/css2?family=Inter:opsz,[email protected],200;14..32,300;14..32,400;14..32,500;14..32,600;14..32,700&family=Inter+Tight:wght@400;500;600&family=Poppins:wght@400;500;600&display=swap" rel="stylesheet"> 31 <link rel="stylesheet" href="/build/css/who-we-are.096457d5.css"> 32 <!-- Google Tag Manager --> 33
33<script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': 34 new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], 35 j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 36 'https://sst.getdevdone.com/main_js';f.parentNode.insertBefore(j,f); 37 })(window,document,'script','dataLayer','');</script>
37 38 <!-- End Google Tag Manager --> 39 40 41
41<script type="application/ld+json"> 42{ 43 "@context": "https://schema.org", 44 "@graph": [ 45 { 46 "@type": "BreadcrumbList", 47 "@id": "https://getdevdone.com/about-us.html#breadcrumb", 48 "itemListElement": [ 49 { 50 "@type": "ListItem", 51 "position": 1, 52 "name": "Home", 53 "item": "https://getdevdone.com/" 54 }, 55 { 56 "@type": "ListItem", 57 "position": 2, 58 "name": "About GetDevDone", 59 "item": "https://getdevdone.com/about-us.html" 60 } 61 ] 62 }, 63 { 64 "@type": "AboutPage", 65 "@id": "https://getdevdone.com/about-us.html#webpage", 66 "url": "https://getdevdone.com/about-us.html", 67 "name": "About GetDevDone", 68 "description": "GetDevDoneâ¢, powered by P2H®, is the engineering partner for digital agencies since 2005", 69 "inLanguage": "en-US", 70 "dateModified": "2026-04-27T11:46:43+03:00" 71 } 72 ] 73} 74</script>
74 75 </head> 76 <body class="who-we-are" 77> 78 <!-- Google Tag Manager --> 79 <noscript><iframe src="https://sst.getdevdone.com/main_js" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> 80 <!-- End Google Tag Manager --> 81 82 83 84 <header id="header" role="banner" class="header"> 85 86 87 88 89 90 <div class="container"> 91 <div class="header-logo"> 92 <div class="logo"> 93 <a href="/" id="logo" title="GetDevDone" accesskey="1" class="logo-link"> 94 <img src="/images/header/logo-gdd.svg" alt="GetDevDone®" width="190" height="32" class="logo-image"> 95 </a> 96 </div> 97 98 <a href="#" class="nav-opener" aria-label="Menu"> 99 <span></span> 100 </a> 101 102 </div> 103 <div class="header-content header-slide js-hide-on-load-mobile"> 104 <address class="header-contacts"> 105 <a class="contact contact--chat chat chat-link " href="/contact-us.html">Chat</a> 106 <a class="contact contact--phone" href="tel:+1.888.724.9414">+1.888.724.9414</a> 107 </address> 108 <nav role="navigation"> 109 <ul class="nav"> 110
111 <li class="is-wide-drop menu-services" tabindex="0"> 112 <span class="opener drop-name">Services</span> 113 <div class="nav-drop nav-drop--with-bullet-2"> 114 <div class="category-level-1-list"> 115 <div class="category-level-1-item"> 116 <a href="/website-development-services.html" class="category-level-1-title category-level-1-title--link"> 117 <span class="category-level-1-title-text">WEBSITE DEVELOPMENT</span> 118 </a> 119 <ul class="category-level-2-list"> 120 <li class="category-level-2-item"> 121 <a href="/website-development-services.html" class="link category-level-2-link">Website Development Services</a> 122 <ul class="category-level-3-list"> 123 <li class="category-level-3-item"> 124 <a href="/wordpress-development-services.html" class="link category-level-3-link">WordPress Development</a> 125 </li> 126 <li class="category-level-3-item"> 127 <a href="/drupal-development.html" class="link category-level-3-link">Drupal Development</a> 128 </li> 129 <li class="category-level-3-item"> 130 <a href="/craft-cms-development.html" class="link category-level-3-link">Craft CMS Development</a> 131 </li> 132 <li class="category-level-3-item"> 133 <a href="/hubspot-cms-development.html" class="link category-level-3-link">HubSpot CMS Development</a> 134 </li> 135 <li class="category-level-3-item"> 136 <a href="/webflow-development.html" class="link category-level-3-link">Webflow Development</a> 137 </li> 138 <li class="category-level-3-item"> 139 <a href="/headless-wordpress-development-services.html" class="link category-level-3-link">Headless WordPress development</a> 140 </li> 141 </ul> 142 </li> 143 <li class="category-level-2-item"> 144 <a href="/custom-website-development.html" class="link category-level-2-link">Custom Website Development</a> 145 </li> 146 <li class="category-level-2-item"> 147 <a href="/low-code-web-development.html" class="link category-level-2-link">Low Code/No Code Development</a> 148 </li> 149 </ul> 150 </div> 151 <div class="category-level-1-item"> 152 <a href="/ecommerce-web-development.html" class="category-level-1-title category-level-1-title--link"> 153 <span class="category-level-1-title-text">ECOMMERCE DEVELOPMENT</span> 154 </a> 155 <ul class="category-level-2-list"> 156 <li class="category-level-2-item"> 157 <a href="/ecommerce-web-development.html" class="link category-level-2-link">eCommerce Website Development</a> 158 <ul class="category-level-3-list"> 159 <li class="category-level-3-item"> 160 <a href="/shopify-development.html" class="link category-level-3-link">Shopify Development</a> 161 </li> 162 <li class="category-level-3-item"> 163 <a href="/bigcommerce-development.html" class="link category-level-3-link">BigCommerce Development</a> 164 </li> 165 <li class="category-level-3-item"> 166 <a href="/magento-development.html" class="link category-level-3-link">Magento Development</a> 167 </li> 168 <li class="category-level-3-item"> 169 <a href="/woocommerce-development.html" class="link category-level-3-link">WooCommerce Development</a> 170 </li> 171 <li class="category-level-3-item"> 172 <a href="/headless-commerce-development.html" class="link category-level-3-link">Headless commerce development</a> 173 </li> 174 </ul> 175 </li> 176 177 <li class="category-level-2-item"> 178 <a href="/shopify-theme-development.html" class="link category-level-2-link">Shopify Theme Development</a> 179 </li> 180 <li class="category-level-2-item"> 181 <a href="/woocommerce-theme-development.html" class="link category-level-2-link">WooCommerce Theme Development</a> 182 </li> 183 </ul> 184 </div> 185 <div class="category-level-1-item"> 186 <a href="/ai-engineering-services.html" class="category-level-1-title category-level-1-title--link"> 187 <span class="category-level-1-title-text">AI ENGINEERING</span> 188 </a> 189 <ul class="category-level-2-list"> 190 <li class="category-level-2-item"> 191 <a href="/ai-engineering-services.html" class="link category-level-2-link">AI Engineering Services</a> 192 <ul class="category-level-3-list"> 193 <li class="category-level-3-item"> 194 <a href="/ai-code-security-audit-services.html" class="link category-level-3-link">AI Code Security Audit and Remediation Services</a> 195 </li> 196 <li class="category-level-3-item"> 197 <a href="/ai-website-prototype-to-production.html" class="link category-level-3-link">AI website prototype to production</a> 198 </li> 199 <li class="category-level-3-item"> 200 <a href="/embedded-ai-features.html" class="link category-level-3-link">Embedded AI features for website & eCommerce</a> 201 </li> 202 <li class="category-level-3-item"> 203 <a href="/ai-build-rescue-and-rebuild.html" class="link category-level-3-link">AI build rescue and rebuild</a> 204 </li> 205 </ul> 206 </li> 207 </ul> 208 </div> 209 <div class="category-level-1-item"> 210 <a href="/front-end-development-services.html" class="category-level-1-title category-level-1-title--link"> 211 <span class="category-level-1-title-text">FRONT-END DEVELOPMENT</span> 212 </a> 213 <ul class="category-level-2-list"> 214 <li class="category-level-2-item"> 215 <a href="/front-end-development-services.html" class="link category-level-2-link">Front-End Development Services</a> 216 <ul class="category-level-3-list"> 217 <li class="category-level-3-item"> 218 <a href="/react-js-development.html" class="link category-level-3-link">React JS Development</a> 219 </li> 220 <li class="category-level-3-item"> 221 <a href="/vue-development.html" class="link category-level-3-link">Vue Development</a> 222 </li> 223 <li class="category-level-3-item"> 224 <a href="/angular-development.html" class="link category-level-3-link">Angular Development</a> 225 </li> 226 </ul> 227 </li> 228 <li class="category-level-2-item"> 229 <a href="/figma-to-html.html" class="link category-level-2-link">Figma to HTML</a> 230 </li> 231 <li class="category-level-2-item"> 232 <a href="/psd-to-html-conversion.html" class="link category-level-2-link">PSD to HTML</a> 233 </li> 234 <li class="category-level-2-item"> 235 <a href="/psd-to-email-templates.html" class="link category-level-2-link">HTML Email Development</a> 236 <ul class="category-level-3-list"> 237 <li class="category-level-3-item"> 238 <a href="/email-signatures.html" class="link category-level-3-link">Email Signatures</a> 239 </li> 240 </ul> 241 </li> 242 <li class="category-level-2-item"> 243 <a href="/html5-banners-development.html" class="link category-level-2-link">HTML5 Banners</a> 244 </li> 245 </ul> 246 </div> 247 <div class="category-level-1-item"> 248 <a href="/digital-design-services.html" class="category-level-1-title category-level-1-title--link"> 249 <span class="category-level-1-title-text">DIGITAL DESIGN</span> 250 </a> 251 <ul class="category-level-2-list"> 252 <li class="category-level-2-item"> 253 <a href="/digital-design-services.html" class="link category-level-2-link">Digital Design Services</a> 254 </li> 255 </ul> 256 </div> 257 </div> 258 </div> 259 </li> 260 261 <li class="menu-about active" tabindex="0"> 262 <span class="drop-name opener">About</span> 263 <div class="nav-drop"> 264 <ul> 265 <li><a href="/about-us.html" class="link">Our Company</a></li> 266 <li><a href="/who-we-are.html" class="link">Who We Are</a></li> 267 <li><a href="/information-security.html" class="link">Information Security</a></li> 268 <li><a href="/faq.html" class="link">FAQ</a></li> 269 </ul> 270 </div> 271 </li> 272 <li> 273 <a href="/blog/category/case-study" class="link drop-name">Case Studies</a> 274 </li> 275 <li class="menu-blog"> 276 <a href="/blog/" class="link drop-name">Blog</a> 277 </li> 278 <li class="order-now-link"> 279 <a href="/order-now/website-development" class="link drop-name" id="order-now-header-button">Order Now</a> 280 </li> 281 <li class="button-outlined"> 282 <a class="link drop-name js-menu-get-in-touch" href="/#start-project">Get In Touch</a> 283 </li> 284 <li class="login-box"> 285 <a href="/login.html" class="link drop-name" aria-label="Client Area">Client Area</a> 286 </li> 287 288 </ul> 289 </nav> 290 </div> 291 </div> 292 293 294 295 </header> 296 297 298 <section class="section section-hero"> 299 <div class="container"> 300 <div class="breadcrumbs-list"> 301 <div class="breadcrumbs-item"> 302 <a href="/" class="breadcrumbs-link text-body-14-sb">home</a> 303 </div> 304 <div class="breadcrumbs-item">
305 <span class="breadcrumbs-text text-body-14-sb">About</span> 306 </div> 307 </div> 308 <h1>Our Company</h1> 309 </div> 310 </section> 311 312 <nav class="section-nav section-white js-section-nav"> 313 <div class="container"> 314 <div class="tabs"> 315 <ul > 316 <li class="tab-active"><a href="#section-20-years" class="link">About</a></li> 317 <li><a href="#section-people" class="link">People</a></li> 318 <li><a href="#section-milestones" class="link">Milestones</a></li> 319 <li><a href="#section-sustainability" class="link">Sustainability and impact</a></li> 320 </ul> 321 </div> 322 </div> 323 </nav> 324 325 <section class="section section-white section-20-years" id="section-20-years"> 326 <div class="container"> 327 <h2>21 Years of Engineering Delivery for Digital Agencies. Building for the Next 21.</h2> 328 <div class="h2-description text-body-18-m-des"> 329 <p>GetDevDone⢠is the engineering partner for digital agencies. Since 2005, we've delivered 131,500+ projects for over 15,000 agencies worldwide across website development, front-end development, eCommerce development, digital design, and AI engineering.</p> 330 <p>Direct integration into agency structures, with work carried out within existing processes and tooling, helps us grow the clientâs delivery capacity and handle technically demanding work without added overhead.</p> 331 </div> 332 <h3>Key figures</h3> 333 </div> 334 <div class="numbers-wrapper"> 335 <div class="container"> 336 <div class="list"> 337 <div class="item"> 338 <div class="number">131,500+</div> 339 <div class="text text-body-16-sb-des text-body-14-sb-mob">projects</div> 340 </div> 341 <div class="divider"></div> 342 <div class="item"> 343 <div class="number">15,180+</div> 344 <div class="text text-body-16-sb-des text-body-14-sb-mob">agency partners</div> 345 </div> 346 <div class="divider"></div> 347 <div class="item"> 348 <div class="number">35</div> 349 <div class="text text-body-16-sb-des text-body-14-sb-mob">Fortune 500 clients</div> 350 </div> 351 <div class="divider"></div> 352 <div class="item"> 353 <div class="number">98%</div> 354 <div class="text text-body-16-sb-des text-body-14-sb-mob">first-pass audit success</div> 355 </div> 356 357 </div> 358 </div> 359 </div> 360 </section> 361 362 <section class="section section-white section-people" id="section-people"> 363 <div class="container"> 364 <h2>Engineers by trade. Craftspeople by calling</h2> 365 <div class="content"> 366 <div class="video-wrapper" id="videoWrapper"> 367 <video id="myVideo" preload="metadata" controls="false" poster="/images/who-we-are/P2H-promo-poster.webp" width="708" height="502"> 368 <source src="/video/who-we-are/P2H_promo.mp4" type="video/mp4"> 369 Your browser does not support the video tag. 370 </video> 371 <div class="play-button" id="playBtn"></div> 372 </div> 373 374 <div class="numbers list"> 375 <div class="item"> 376 <div class="number">400+</div> 377 <div class="title text-body-18-sb-des text-body-16-sb-mob">Specialists across 21 countries</div> 378 <div class="text">Developers, designers, QA engineers, DevOps, data scientists, and PMs</div> 379 </div> 380 <div class="item"> 381 <div class="number">42h</div> 382 <div class="title text-body-18-sb-des text-body-16-sb-mob">Trainings per teammate in 2024 </div> 383 <div class="text">Cloud certifications, modern JavaScript, AI pipelines, accessibility</div> 384 </div> 385 <div class="item"> 386 <div class="number">32%</div> 387 <div class="title text-body-18-sb-des text-body-16-sb-mob">Women in technical roles</div> 388 <div class="text">
388Above the global software industry average</div> 389 </div> 390 <div class="item"> 391 <div class="number">10+</div> 392 <div class="title text-body-18-sb-des text-body-16-sb-mob">Time zones</div> 393 <div class="text">Collaboration that follows the sun â and many cultures</div> 394 </div> 395 <div class="item"> 396 <div class="number">1:4</div> 397 <div class="title text-body-18-sb-des text-body-16-sb-mob">Mentor ratio </div> 398 <div class="text">Senior specialists pair with juniors on every project</div> 399 </div> 400 <div class="item"> 401 <div class="number">Expertise</div> 402 <div class="title text-body-18-sb-des text-body-16-sb-mob">Networks</div> 403 <div class="text">Women-in-Tech, Pride-in-Code, Green Dev Guild</div> 404 </div> 405 </div> 406 </div> 407 408 409 <div class="btn-wrapper"> 410 <a href="/contact-us.html" class="btn">Contact Our Expert</a> 411 </div> 412 </div> 413 </section> 414 415 <section class="section section-porcelain section-talents"> 416 <div class="container"> 417 <div class="card"> 418 <div class="content"> 419 <h2>GetDevDone - a people-first company</h2> 420 <div class="h2-description text-body-18-m-des text-body-18-m-mob">We build a culture where people feel genuinely included, valued, and set up to do the best work of their careers across borders and geographies. We believe that diverse perspectives, skills, backgrounds, and experiences are what make teams sharper and innovation real.</div> 421 <ul> 422 <li class="text-body-18-m-des text-body-18-m-mob"> 423 <span><b>Digital-first learning.</b> 424 Quarterly skill-gap audits fund certifications across the full stack, from Kubernetes to WCAG 2.2, so expertise stays current and billable.</span> 425 </li> 426 <li class="text-body-18-m-des text-body-18-m-mob"> 427 <span><b>Green Commit workshops.</b> 428 Engineers learn to identify energy-intensive code paths before they hit the merge queue, building sustainability into the habit from day one.</span> 429 </li> 430 <li class="text-body-18-m-des text-body-18-m-mob"> 431 <span><b>Mobility without borders.</b> 432 Teammates can spend up to three months working from another GetDevDone hub: different city, same team, broader perspective.</span> 433 </li> 434 <li class="text-body-18-m-des text-body-18-m-mob"> 435 <span><b>Life in the stack.</b> 436 Remote-first by design, regional co-work labs for when presence matters, no-meeting Fridays, and counseling and parenting stipends, because reliable output starts with balance.</span> 437 </li> 438 </ul> 439 </div> 440 <div class="image-wrapper"> 441 <img src="/images/who-we-are/talent-1.webp" srcset="/images/who-we-are/[email protected] 2x" alt="image" width="600" height="570" class="image"> 442 </div> 443 </div> 444 </div> 445 </section> 446 447 <section class="section section-porcelain section-talents"> 448 <div class="container"> 449 <div class="card"> 450 <div class="image-wrapper"> 451 <img src="/images/who-we-are/talent-2.webp" srcset="/images/who-we-are/[email protected] 2x" alt="image" width="600" height="570" class="image"> 452 </div> 453 <div class="content"> 454 <h2>A powerful brand beyond code</h2> 455 <div class="h2-description text-body-18-m-des text-body-18-m-mob">Born as PSD2HTML, we pioneered flat-rate, overnight â¨design-to-code delivery. Today, the GetDevDone name stands for disciplined engineering, transparent partnership, and predictable execution.</div> 456 <div class="text text-body-18-sb-des text-body-18-sb-mob">We extend our impact through:</div> 457 <ul> 458 <li class="text-body-18-m-des text-body-18-m-mob">
459 <span><b>Community leadership. </b> Open-source contributions and 400+ pro bono engineering hours each quarter.</span> 460 </li> 461 <li class="text-body-18-m-des text-body-18-m-mob"> 462 <span><b>Sport and culture sponsorships. </b> Inclusive hackathons, digital art residencies, and local STEM programs.</span> 463 </li> 464 <li class="text-body-18-m-des text-body-18-m-mob"> 465 <span><b>Client co-innovation. </b> Joint research sprints that turn bold ideas into shared IP.</span> 466 </li> 467 </ul> 468 </div> 469 </div> 470 </div> 471 </section> 472 473 <section class="section section-white section-milestones" id="section-milestones"> 474 475 <div class="container"> 476 <h2>Milestones</h2> 477 <div class="subtitle">21 years of forward thinking</div> 478 479 <div class="slider-wrapper"> 480 <div class="slider-list js-milestones-slider"> 481 <article class="slider-item"> 482 <div class="item"> 483 <div class="dot"></div> 484 <div class="content"> 485 <div class="year">2005</div> 486 <div class="text text-body-16-m-des text-body-16-m-mob">PSD2HTML launched â first â¨design-to-code productized service.</div> 487 </div> 488 </div> 489 </article> 490 <article class="slider-item"> 491 <div class="item item--bottom"> 492 <div class="dot"></div> 493 <div class="content"> 494 <div class="year">2007</div> 495 <div class="text text-body-16-m-des text-body-16-m-mob">Becomes the first and undisputed market leader, growth hits hundreds of orders per month, multi-step QA introduced to ensure pixel perfection.</div> 496 </div> 497 </div> 498 </article> 499 <article class="slider-item"> 500 <div class="item"> 501 <div class="dot"></div> 502 <div class="content"> 503 <div class="year">2009</div> 504 <div class="text text-body-16-m-des text-body-16-m-mob">New leadership team appointed to support strategic growth, the company scales from 50 to 100 professionals</div> 505 </div> 506 </div> 507 </article> 508 <article class="slider-item"> 509 <div class="item item--bottom"> 510 <div class="dot"></div> 511 <div class="content"> 512 <div class="year">2010</div> 513 <div class="text text-body-16-m-des text-body-16-m-mob">Coding 2,000 sites every month at the peak of demand for simple frontend work. Expands service lines and launches EmailCraft for email newsletter coding.</div> 514 </div> 515 </div> 516 </article> 517 <article class="slider-item"> 518 <div class="item"> 519 <div class="dot"></div> 520 <div class="content"> 521 <div class="year">2013</div> 522 <div class="text text-body-16-m-des text-body-16-m-mob">Nepal delivery center opens</div> 523 </div> 524 </div> 525 </article> 526 <article class="slider-item"> 527 <div class="item item--bottom"> 528 <div class="dot"></div> 529 <div class="content"> 530 <div class="year">2014</div> 531 <div class="text text-body-16-m-des text-body-16-m-mob">Custom Solutions Division launches, handling complex apps for long-time clients.</div> 532 </div> 533 </div> 534 </article> 535 <article class="slider-item"> 536 <div class="item"> 537 <div class="dot"></div> 538 <div class="content"> 539 <div class="year">2018</div> 540 <div class="text text-body-16-m-des text-body-16-m-mob">Named a Clutch Global Leader, the team grows beyond 400 professionals.</div> 541 </div> 542 </div> 543 </article> 544 <article class="slider-item"> 545 <div class="item item--bottom"> 546 <div class="dot"></div> 547 <div class="content"> 548 <div class="year">2019</div> 549 <div class="text text-body-16-m-des text-body-16-m-mob">Polish hub opens, providing EU time-zone coverage and access to top Magento, Drupal, and JavaScript talent.</div> 550 </div> 551 </div> 552 </article> 553 <article class="slider-item"> 554 <div class="item"> 555 <div class="dot"></div> 556 <div class="content"> 557 <div class="year">2021</div> 558 <div class="text text-body-16-m-des text-body-16-m-mob">Team surpasses 500, listed by Clutch as a leading WordPress development partner.</div> 559 </div> 560 </div> 561 </article> 562 <article class="slider-item"> 563 <div class="item item--bottom"> 564 <div class="dot"></div> 565 <div class="content"> 566 <div class="year">2022</div> 567 <div class="text text-body-16-m-des text-body-16-m-mob">PSD2HTML becomes GetDevDone which reflects the companyâs broader service offering across web, mobile, cloud, and data.</div> 568 </div> 569 </div> 570 </article> 571 <article class="slider-item"> 572 <div class="item"> 573 <div class="dot"></div> 574 <div class="content"> 575 <div class="year">2023</div> 576 <div class="text text-body-16-m-des text-body-16-m-mob">Wins Clutch Global Award and Champion title, listed in Techreviewer's Top 100.</div> 577 </div> 578 </div> 579 </article> 580 <article class="slider-item"> 581 <div class="item item--bottom"> 582 <div class="dot"></div> 583 <div class="content"> 584 <div class="year">2024</div> 585 <div class="text text-body-16-m-des text-body-16-m-mob">Earns ISO/IEC 27001:2022 certification, expands pro bono program, rebuilding community websites at 50% cost.</div> 586 </div> 587 </div> 588 </article> 589 <article class="slider-item"> 590 <div class="item"> 591 <div class="dot"></div> 592 <div class="content"> 593 <div class="year">2025</div> 594 <div class="text text-body-16-m-des text-body-16-m-mob">20-year milestone. â¨GetDevDone AI Studio opens.</div> 595 </div> 596 </div> 597 </article> 598 </div> 599 </div> 600 </div> 601 602 </section> 603 604 <section class="section section-porcelain section-sustainability" id="section-sustainability"> 605 <div class="container"> 606 <h2>Sustainability and impact</h2> 607 608 <div class="process-dots js-sustainability-dots"></div> 609 610 <div class="list js-sustainability-slider"> 611 <div class="item"> 612 <div class="content"> 613 <h3>Responsible engineering</h3> 614 <ul> 615 <li class="text-body-18-m-des text-body-18-m-mob">The âGreen Commitâ checklist flags high-energy code and recommends low-carbon hosting.</li> 616 <li class="text-body-18-m-des text-body-18-m-mob">Core Web Vitals optimization reduces client hosting energy usage by up to 30%.</li> 617 </ul> 618 </div> 619 <img src="/images/who-we-are/sustainability-1.webp" srcset="/images/who-we-are/[email protected] 2x" alt="image sustainability and impact" width="600" height="400" class="image"> 620 </div> 621 <div class="item"> 622 <div class="content"> 623 <h3>Environmental goals</h3> 624 <ul> 625 <li class="text-body-18-m-des text-body-18-m-mob">100% renewable energy offsets for primary data centers since 2023.</li> 626 <li class="text-body-18-m-des text-body-18-m-mob">20% year-over-year COâe reduction per specialist through remote-first work and efficie
626nt hubs.</li> 627 </ul> 628 </div> 629 <img src="/images/who-we-are/sustainability-2.webp" srcset="/images/who-we-are/[email protected] 2x" alt="image sustainability and impact" width="600" height="400" class="image"> 630 </div> 631 <div class="item"> 632 <div class="content"> 633 <h3>Social impact</h3> 634 <ul> 635 <li class="text-body-18-m-des text-body-18-m-mob">Quarterly Code-for-All programs donate engineering hours â¨to non-profits.</li> 636 <li class="text-body-18-m-des text-body-18-m-mob">Women lead 70% of our technical teams.</li> 637 </ul> 638 </div> 639 <img src="/images/who-we-are/sustainability-3.webp" srcset="/images/who-we-are/[email protected] 2x" alt="image sustainability and impact" width="600" height="400" class="image"> 640 </div> 641 <div class="item"> 642 <div class="content"> 643 <h3>Governance</h3> 644 <ul> 645 <li class="text-body-18-m-des text-body-18-m-mob">ISO 27001 controls and GDPR/CCPA compliance built into every SOW.</li> 646 <li class="text-body-18-m-des text-body-18-m-mob">Weâre committed to scaling our CSR efforts, with a board-level ESG committee in place and plans to publish regular impact reports moving forward.</li> 647 </ul> 648 </div> 649 <img src="/images/who-we-are/sustainability-4.webp" srcset="/images/who-we-are/[email protected] 2x" alt="image sustainability and impact" width="600" height="400" class="image"> 650 </div> 651 </div> 652 </div> 653 </section> 654 655 <section class="section section-white section-philosophy"> 656 <div class="container"> 657 <div class="title-wrapper"> 658 <h2>Our philosophy</h2> 659 <div class="h2-description text-body-18-m-des text-body-18-m-mob">These principles keep clients confident and our delivery consistent</div> 660 </div> 661 <div class="list"> 662 <div class="item-wrapper"> 663 <div class="item item--1"> 664 <div class="item-number text-body-18-sb-des text-body-16-sb-mob">01</div> 665 <div class="item-title">Start with the target. Goals come before features</div> 666 </div> 667 <div class="item item--2"> 668 <div class="item-number text-body-18-sb-des text-body-16-sb-mob">02</div> 669 <div class="item-title">Hold the date. We own the results and deadlines</div> 670 </div> 671 </div> 672 <div class="item item--3"> 673 <div class="item-number text-body-18-sb-des text-body-16-sb-mob">03</div> 674 <div class="item-title">Full transparency. Progress tracked at every stage</div> 675 </div> 676 <div class="item item--4"> 677 <div class="item-number text-body-18-sb-des text-body-16-sb-mob">04</div> 678 <div class="item-title">Deliver to standards. Production-ready and compliant at every commit</div> 679 </div> 680 </div> 681 </div> 682 </section> 683 <section class="section section-porcelain section-talk"> 684 <div class="container"> 685 <div class="content"> 686 <h2>Ready to move from project pressure to delivery certainty?</h2> 687 <a href="/contact-us.html" class="btn">Letâs talk</a> 688 </div> 689 </div> 690 </section> 691 692 <footer id="footer" class="footer"> 693 694 695 <div class="footer-content"> 696 <div class="container"> 697 698 <div class="footer-general"> 699 <div class="column column--logo"> 700 <div class="footer-logo"></div> 701 <div class="item footer-logo-text">Engineering partner for digital agencies</div> 702 <div class="item social-list-title">Follow us</div> 703 <div class="social-list"> 704 <a href="https://www.facebook.com/getdevdone/" rel="nofollow noopener" target="_blank" class="social-item icon-footer-facebook" aria-label="Facebook"></a> 705 <a href="https://x.com/GetDevDone" rel="nofollow noopener" target="_blank" class="social-item icon-footer-twitter-x" aria-label="Twitter"></a> 706 <a href="https://www.linkedin.com/company/getdevdone/" rel="nofollow noopener" target="_blank" class="social-item icon-footer-linkedin" aria-label="Linkedin"></a> 707 </div> 708 </div> 709 <div class="right"> 710 <div class="column column--about"> 711 <div class="title">Navigation</div> 712 <ul class="about-list"> 713 <li class="item"> 714 <a href="/wordpress-development-services.html">Services</a> 715 </li> 716 <li class="item"> 717 <a href="/white-label-web-development.html">Services for Agencies</a> 718 </li> 719 <li class="item"> 720 <a href="/blog/category/case-study">Case Studies</a> 721 </li> 722 <li class="item"> 723 <a href="/who-we-are.html">Who We Are</a> 724 </li> 725 <li class="item"> 726 <a href="/blog/">Blog</a> 727 </li> 728 <li class="item"> 729 <a href="/contact-us.html">Contact</a> 730 </li> 731 732 </ul> 733 </div> 734 <div class="column column--get-in-touch"> 735 <div class="title">GET IN TOUCH</div> 736 <div class="contacts-list"> 737 <a href="mailto:[email protected]" class="item item--email">[email protected]</a> 738 <a href="tel:+1.888.724.9414" class="item item--phone">+1.888.724.9414</a>
739 <span class="item item--address">201 Spear Street, Suite 1100, San Francisco, CA 94105</span> 740 </div> 741 </div> 742 <div class="column column--certified"> 743 <div class="title">Certified and Top-ranked</div> 744 <div class="iso-clutch-wrapper"> 745 <a href="https://clutch.co/profile/getdevdone" target="_blank" class="clutch-logo" aria-label="clutch"></a> 746 </div> 747 </div> 748 </div> 749 750 </div> 751 752 <div class="footer-bottom"> 753 <div class="left"> 754 <div class="item">© 2026 GetDevDone. All rights reserved.</div> 755 756 </div> 757 <div class="right"> 758 <div class="item"> 759 <a href="/privacy-policy.html">Privacy Policy</a> 760 </div> 761 <div class="item"> 762 <a href="/terms-and-conditions.html">Terms of Services</a> 763 </div> 764 <div class="item"> 765 <a href="/ai-tools-register.html">AI Tools Register</a> 766 </div> 767 </div> 768 </div> 769 770 </div> 771 </div> 772 773</footer> 774 775 <!-- popup --> 776 <div class="subscribe-popup hidden-popup" style="display: none"> 777 <div class="scroll-area"> 778 <div class="indent-area"> 779 <div class="inner-area"> 780 <div class="text-holder"> 781 <div class="text">I consent to processing of my personal data and accept <a href="/privacy-policy.html" target="_blank">Privacy Policy</a></div> 782 </div> 783 <a href="#" class="subscribe-close icon-cancel"></a> 784 <a href="#" class="popup-btn btn-blue">Agree and continue</a> 785 <a href="#" class="popup-btn close-btn">Disagree</a> 786 </div> 787 </div> 788 </div> 789 </div> 790<!-- popup ending --> 791 792 793 794 795
795<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.3/jquery.min.js"></script>
795 796
796<script> 797 window.jQuery || document.write('
797<script src="js/jquery-3.6.3.min.js"><\/script>'); 798 </script>
798 799 800 801
801<script src="/js/jquery.mains-libs.min.js"></script>
801 802
802<script src="/build/js/runtime.4fa33217.js" defer></script>
802<script src="/build/js/0.61fc5668.js" defer></script>
802<script src="/build/js/1.e6517e0b.js" defer></script>
802<script src="/build/js/who-we-are.99ad6fa1.js" defer></script>
802 803
803<script type="text/javascript"> 804 var serviceList = {"amazon":{"swfUri":"\/swf\/swiff.uploader.3.swf","bucketUri":"https:\/\/s3.amazonaws.com\/storage.getdevdone.com\/","putBucketUri":"https:\/\/s3.amazonaws.com\/storage.getdevdone.com\/","accessKey":"AKIAW3IFH2Q36RAB5YFR","acl":"public-read","title":"Browse","signUrl":"\/upload-sign-helper.html","credentialsUrl":"\/upload-credentials.html","fileListContainer":".textarea-box","maxUploadSize":"9999999999"},"link":[],"dropbox":{"appKey":"3pbh9wsmqiqqwtc"},"dropfile":{"title":"drop files here"}}; 805 </script>
805 806
806<script src="/js/headroom.min.js"></script>
806 807
807<script src="/js/slick.min.js"></script>
807 808
808<script src="/js/multi-amazon-uploader-custom.min.js"></script>
808 809 810
810<script src="/js/headroom.min.js"></script>
vendor: 132 bytes, lines 810-814
810 811 812 <script src="https://www.google.com/recaptcha/api.js?onload=recaptchaCallBack&render=explicit" async defer></script> 813 814
814<script type="text/javascript"> 815 var recaptcha_key = '6LceS78fAAAAAC-TusEMyjiyBg-NGxPa-v2ykJYD'; 816 function recaptchaCallBack(){ 817 818 var captchaEl = document.getElementsByClassName('grecaptcha'); 819 var grecaptchaWidget = []; 820 821 if(!window.recaptchaCallBackOn && captchaEl.length) 822 { 823 setTimeout(recaptchaCallBack, 100); 824 return false; 825 } 826 827 for (var i = 0; i < captchaEl.length; i++) 828 { 829 captchaEl[i].setAttribute('data-i', i); 830 831 var form = captchaEl[i].closest('form'); 832 // Deferred contact forms own their complete CSRF/CAPTCHA submission flow. 833 if (form && form.hasAttribute('data-csrf-url')) continue; 834 if(form) 835 { 836 form.addEventListener('submit', function(event){ 837 event.preventDefault(); 838 var t = this; 839 840 841 // mootools and jquery error or loading file process 842 if(t.getElementsByClassName('error').length || t.getElementsByClassName('js-error').length || t.getElementsByClassName('loading-process').length) 843 { 844 return false; 845 } 846 847 var captchaElCurrent = t.getElementsByClassName('grecaptcha'); 848 if(captchaElCurrent.length) 849 { 850 var interval = null; 851 var submit = captchaElCurrent[0]; 852 var value = submit.getAttribute('value'); 853 854 var i = submit.getAttribute('data-i'); 855 856 try { 857 grecaptchaWidget[i] = grecaptcha.render(captchaEl[i], { 858 'sitekey': '6LceS78fAAAAAC-TusEMyjiyBg-NGxPa-v2ykJYD', 859 'badge': 'bottomleft', 860 'expired-callback': function(){ 861 console.log('expired-callback'); 862 clearInterval(interval); 863 submit.setAttribute('value', value); 864 submit.removeAttribute('disabled'); 865 grecaptcha.reset(); 866 }, 867 'error-callback': function(){ 868 console.log('error-callback'); 869 clearInterval(interval); 870 submit.setAttribute('value', value); 871 submit.removeAttribute('disabled'); 872 grecaptcha.reset(); 873 }, 874 'callback': function(token){ 875 clearInterval(interval); 876 877 submit.setAttribute('disabled', 'disabled'); 878 879 var intervalString = ''; 880 var count = 3; 881 var interval = setInterval(function(){ 882 if(intervalString.length > count) 883 { 884 count = parseInt(Math.random() * 3 + 3); 885 intervalString = ''; 886 } 887 intervalString += '.'; 888 submit.setAttribute('value', value + intervalString); 889 }, 500); 890 891 t.submit(); 892 grecaptcha.reset(); 893 } 894 })} catch(error) {}; 895 896 //////////////////////////////////////////////////////////////////// 897 // this code for not to click outside captcha modal window BEGIN // 898 899 var recaptchaWindow; 900 901 if(!window.recaptchaCloseListener) { 902 // find the open reCaptcha window 903 HTMLCollection.prototype.find = Array.prototype.find 904 905 //timer for waiting recaptcha modal window 906 var timer = setInterval(checkRecaptchaWindowExist, 100); 907 function checkRecaptchaWindowExist() { 908 try { 909 recaptchaWindow = document 910 .getElementsByTagName('iframe') 911 .find(x=>x.src.includes('google.com/recaptcha/api2/bframe')) 912 .parentNode.parentNode 913 } 914 catch { 915 recaptchaWindow = false; 916 } 917 918 if( recaptchaWindow) { 919 clearInterval(timer); 920 initListener(); 921 return; 922 } 923 } 924 } 925 926 927 function initListener() { 928 // set a global to tell that we are listening 929 window.recaptchaCloseListener = true 930 931 var recaptchaOutside = recaptchaWindow.firstChild; 932 recaptchaOutside.addEventListener('click', function (e){ 933 e.stopPropagation(); 934 e.preventDefault(); 935 grecaptcha.execute(); 936 }) 937 } 938 // this code for not to click outside captcha modal window END // 939 ///////////////////////////////////////////////////////////////// 940 941 grecaptcha.reset(); 942 grecaptcha.execute(); 943 } 944 }); 945 } 946 } 947 }; 948 </script>
948 949 950
950<script type="text/javascript"> 951 function mailchimpSignupCompleted(arg) { 952 if(arg) 953 { 954 var msg = ''; 955 if(arg.result == "error") 956 { 957 if(arg.msg.indexOf('is already subscribed') + 1) 958 { 959 msg = 'This email is already subscribed to GetDevDone newsletter.'; 960 } 961 else 962 { 963 msg = 'Too many subscribe attempts. Please try again in 5 minutes.'; 964 } 965 } 966 else 967 { 968 msg = 'Thank you! Please check and confirm your email.'; 969 } 970 $$('form.active-subscribe .answer span').set('html', msg); 971 $$('form.active-subscribe .answer span').addClass('answer-'+arg.result); 972 $$('form.active-subscribe').addClass('subscribe-'+arg.result); 973 974 setTimeout(function() { 975 $$('form.active-subscribe input.blog-email-subscribe').set('value',''); 976 $$('form.active-subscribe input#footer-email-subscribe').set('placeholder','Enter your email to get deals & news'); 977 $$('form.active-subscribe input#blog-email-subscribe').set('placeholder','Email'); 978 }, 1000); 979 setTimeout(function() { 980 $$('form.active-subscribe').removeClass('subscribe-'+arg.result); 981 }, 5000); 982 } 983 } 984 function mailchimpSignupCompletedBanner(arg) { 985 if (arg) { 986 var msg = ''; 987 if (arg.result == "error") { 988 if (arg.msg.indexOf('is already subscribed') + 1) { 989 msg = 'This email is already subscribed to GetDevDone newsletter.'; 990 } 991 else { 992 msg = 'Too many subscribe attempts. Please try again in 5 minutes.'; 993 } 994 } 995 else { 996 msg = 'Thank you! Please check and confirm your email.'; 997 } 998 999 jQuery('form.subscribe-form .answer span').html(msg); 1000 jQuery('form.subscribe-form .answer span').addClass('answer-' + arg.result); 1001 jQuery('form.subscribe-form').addClass('subscribe-' + arg.result); 1002 1003 setTimeout(function () { 1004 jQuery('form.subscribe-form input.blog-email-subscribe').val(''); 1005 }, 1000); 1006 setTimeout(function () { 1007 jQuery('form.subscribe-form').removeClass('subscribe-' + arg.result); 1008 }, 5000); 1009 1010 } 1011 } 1012 </script>
1012 1013 1014 <!-- Start of LiveChat (www.livechatinc.com) code --> 1015
1015<script type="text/javascript"> 1016 window.__lc = window.__lc || {}; 1017 var LiveChatState = 'online_for_chat'; 1018 var LC_API = LC_API || {}; 1019 LC_API.on_chat_started = function() 1020 { 1021 // track this chat in Google AdWords 1022 var google_conversion_id, google_conversion_label, img; 1023 google_conversion_id = 1001171815; 1024 google_conversion_label = 'FCNzCNC3rPICEOfWst0D'; 1025 img = new Image(1, 1); 1026 img.src = 'https://www.googleadservices.com/pagead/conversion/'+google_conversion_id+'/?label='+google_conversion_label+'&script=0'; 1027 }; 1028 LC_API.on_ticket_created = function(data) 1029 { 1030 // track this chat in Google AdWords 1031 var google_conversion_id, google_conversion_label, img; 1032 google_conversion_id = 1001171815; 1033 google_conversion_label = 'SRyiCIT5rfICEOfWst0D'; 1034 img = new Image(1, 1); 1035 img.src = 'https://www.googleadservices.com/pagead/conversion/'+google_conversion_id+'/?label='+google_conversion_label+'&script=0'; 1036 }; 1037 LC_API.on_chat_state_changed = function(data) 1038 { 1039 LiveChatState = data.state; 1040 if(typeof LiveChatState === 'string' && LiveChatState != 'offline') 1041 { 1042 if(typeof jQuery == 'undefined') 1043 { 1044 $$('#header .chat-link').addClass('chat-online'); 1045 $$('.online').removeClass('hidden'); 1046 $$('.offline').addClass('hidden'); 1047 } 1048 else 1049 { 1050 jQuery('#header .chat-link').addClass('chat-online'); 1051 jQuery('.online').removeClass('hidden'); 1052 jQuery('.offline').addClass('hidden'); 1053 } 1054 } 1055 else 1056 { 1057 if(typeof jQuery == 'undefined') 1058 { 1059 $$('#header .chat-link').removeClass('chat-online'); 1060 $$('.offline').removeClass('hidden'); 1061 $$('.online').addClass('hidden'); 1062 } 1063 else 1064 { 1065 jQuery('#header .chat-link').removeClass('chat-online'); 1066 jQuery('.offline').removeClass('hidden'); 1067 jQuery('.online').addClass('hidden'); 1068 } 1069 } 1070 }; 1071 </script>
1071 1072 <!-- End of LiveChat code --> 1073 1074 1075 1076
1076<script async> 1077(function(){"use strict";var o;!function(o){o.gclid="gclid",o.utm_source="utm_source",o.utm_medium="utm_medium",o.utm_campaign="utm_campaign",o.utm_term="utm_term",o.utm_content="utm_content"}(o||(o={}));var e=function(o){if(!o)return null;var e=document.createElement("a");return e.href=o,{href:e.href,domain:e.hostname.replace(/^www\./,""),search:e.search,origin:e.origin,pathname:e.pathname}},t=function(){return t=Object.assign||function(o){for(var e,t=1,n=arguments.length;t<n;t++)for(var r in e=arguments[t])Object.prototype.hasOwnProperty.call(e,r)&&(o[r]=e[r]);return o},t.apply(this,arguments)},n=function(o){var e=o.startsWith("?")?o.substring(1):o;return e?e.split("&").reduce((function(o,e){var n,r=e.split("="),c=r[0],a=r[1];return t(t({},o),((n={})[decodeURIComponent(c)]=decodeURIComponent(a),n))}),{}):{}},r=function(){return r=Object.assign||function(o){for(var e,t=1,n=arguments.length;t<n;t++)for(var r in e=arguments[t])Object.prototype.hasOwnProperty.call(e,r)&&(o[r]=e[r]);return o},r.apply(this,arguments)},c=function(){return c=Object.assign||function(o){for(var e,t=1,n=arguments.length;t<n;t++)for(var r in e=arguments[t])Object.prototype.hasOwnProperty.call(e,r)&&(o[r]=e[r]);return o},c.apply(this,arguments)},a=function(){return a=Object.assign||function(o){for(var e,t=1,n=arguments.length;t<n;t++)for(var r in e=arguments[t])Object.prototype.hasOwnProperty.call(e,r)&&(o[r]=e[r]);return o},a.apply(this,arguments)},i=function(){function e(o){this._storageKey=o,this._cookieMaxAge=31536e4}return e.prototype.getData=function(){var o=this._getFromLocalStorage(),e=this._getFromCookies();return o||e||null},e.prototype.saveData=function(o,e){this._saveToLocalStorage(o),this._saveToCookies(o,e)},e.prototype._saveToLocalStorage=function(o){localStorage.setItem(this._storageKey,JSON.stringify(o))},e.prototype._saveToCookies=function(o,e){var t={path:"/","max-age":this._cookieMaxAge,domain:".".concat(e)};Object.entries(o).forEach((function(o){!function(o,e,t){void 0===t&&(t={}),document.cookie=Object.entries(t).reduce((function(o,e){var t=e[0],n=e[1];return"".concat(o,";").concat(t,"=").concat(n)}),"".concat(encodeURIComponent(o),"=").concat(encodeURIComponent(e)))}(o[0],o[1]||"null",t)}))},e.prototype._getFromLocalStorage=function(){var o=localStorage.getItem(this._storageKey);return o?JSON.parse(o):null},e.prototype._getFromCookies=function(){return Object.keys(o).reduce((function(o,e){var t,n,r=function(o){var e=new RegExp("(?:^|; )"+o.replace(/([.$?*|{}()[\]\\/+^])/g,"\\$1")+"=([^;]*)"),t=document.cookie.match(e);if(t){var n=t[1];return"null"===n?null:decodeURIComponent(n)}}(e);return void 0===r?o:o?a(a({},o),((t={})[e]=r,t)):((n={})[e]=r,n)}),null)},e}(),s={"360.cn":"360.cn","alice.com":"alice","aliceadsl.fr":"alice","alltheweb.com":"alltheweb","altavista.com":"altavista","aol.com":"aol","ask.com":"ask","search.aol.fr":"ask","alicesuche.aol.de":"ask","auone.jp":"auone","avg.com":"avg","babylon.com":"babylon","baidu.com":"baidu","biglobe.ne.jp":"biglobe","bing.com":"bing","centrum.cz":"centrum.cz","comcast.net":"comcast","conduit.com":"conduit","cnn.com":"cnn","daum.net":"daum","duckduckgo.com":"duckduckgo","ecosia.org":"ecosia","ekolay.net":"ekolay","eniro.se":"eniro","globo.com":"globo","go.mail.ru":"go.mail.ru","google.com":"google","google.com.ar":"google","google.com.au":"google","google.com.br":"google","google.com.co":"google","google.com.hk":"google","google.com.mx":"google","google.com.my":"google","google.com.ng":"google","google.com.pe":"google","google.com.ph":"google","google.com.pk":"google","google.com.sa":"google","google.com.sg":"google","google.com.tr":"google","google.com.tw":"google","google.com.ua":"google","google.com.vn":"google","google.de":"google","google.es":"google","google.fr":"google","google.gr":"google","google.ae":"google","google.be":"google","google.bg":"google","google.ca":"google","google.ch":"google","google.cl":"google","google.co.il":"google","google.co.in":"google","google.co.jp":"google","google.co.kr":"google","google.co.th":"google","google.co.uk":"google","google.co.za":"google","google.com.bo":"google","google.com.kh":"google","google.dk":"google","google.ee":"google","google.fi":"google","google.gg"
1077:"google","google.lt":"google","google.no":"google","google.hu":"google","google.ie":"google","google.it":"google","google.nl":"google","google.pl":"google","google.pt":"google","google.ro":"google","google.ru":"google","google.se":"google","goo.ne.jp":"goo.ne","haosou.com":"haosou.com","incredimail.com":"incredimail","kvasir.no":"kvasir","lycos.com":"lycos","search.lycos.de":"lycos","mamma.com":"mamma","msn.com":"msn","money.msn.com":"msn","local.msn.com":"msn","mynet.com":"mynet","najdi.si":"najdi","naver.com":"naver","netscape.com":"netscape","search.netscape.com":"netscape","onet.pl":"onet","szukaj.onet.pl":"onet","ozu.es":"ozu","qwant.com":"qwant","rakuten.co.jp":"rakuten","rambler.ru":"rambler","search-results.com":"search-results","search.smt.docomo.ne.jp":"search.smt.docomo","sesam.no":"sesam","seznam.cz":"seznam","so.com":"so.com","sogou.com":"sogou","startsidan.se":"startsidan","szukacz.pl":"szukacz","terra.com.br":"terra","tut.by":"tut.by","search.tut.by":"tut.by","ukr.net":"ukr","search.ukr.net":"ukr","search.virgilio.it":"virgilio","voila.fr":"voila","wp.pl":"wirtualna-polska","yahoo.com":"yahoo","yahoo.cn":"yahoo","m.yahoo.com":"yahoo","yandex.com":"yandex","yandex.ru":"yandex","yam.com":"yam"},u={"facebook.com":"facebook","twitter.com":"twitter","linkedin.com":"linkedin","instagram.com":"instagram","youtube.com":"youtube","reddit.com":"reddit","tumblr.com":"tumblr","vk.com":"vk","ok.ru":"ok"},g="(none)",l={gclid:null,utm_source:g,utm_medium:g,utm_campaign:g,utm_term:g,utm_content:g},m=function(){function o(){this.searchEnginesMap=s,this.socialNetworksMap=u}return o.prototype.getSearchEngineName=function(o){return this.searchEnginesMap[o]||null},o.prototype.getSocialNetworkName=function(o){return this.socialNetworksMap[o]||null},o}(),h=function(){return h=Object.assign||function(o){for(var e,t=1,n=arguments.length;t<n;t++)for(var r in e=arguments[t])Object.prototype.hasOwnProperty.call(e,r)&&(o[r]=e[r]);return o},h.apply(this,arguments)},d=function(){function e(){this._searchEnginesService=new m}return e.prototype.processParams=function(e,t,n){var r,c,a,i,s=this.checkHasParams(e),u=this.checkHasGclid(e),g=(null==n?void 0:n.domain)||"",m=this._searchEnginesService.getSearchEngineName(g),d=this._searchEnginesService.getSocialNetworkName(g),p=t.domain===(null==n?void 0:n.domain);return u?h(h(h({},l),e),((r={})[o.utm_source]="google",r[o.utm_medium]="cpc",r)):h(h({},l),s?e:!s&&p?((c={})[o.utm_source]="(direct)",c):!s&&g?((a={})[o.utm_source]=m||d||g,a[o.utm_medium]=m?"organic":d?"social":"referral",a):((i={})[o.utm_source]="(direct)",i))},e.prototype.checkHasGclid=function(e){return o.gclid in e},e.prototype.checkHasParams=function(o){return Object.keys(o).length>0},e}(),p=function(){function o(o,e){this.ownDomains=o,this.excludedDomains=e}return o.prototype.getConfiguration=function(){return{ownDomains:this.ownDomains,excludedDomains:this.excludedDomains}},o.create=function(e){return new o(e.ownDomains||[],e.excludedDomains||[])},o.prototype.checkIsDomainExcluded=function(o){return this.excludedDomains.includes(o)},o.prototype.checkIsOwnDomain=function(o){return this.ownDomains.includes(o)},o}(),f=function(){function t(){this._configService=null,this._paramsProcessor=new d,this._storageService=new i("traffic-source-params")}return t.prototype.getConfig=function(){if(!this._configService)throw new Error("Traffic source manager is not initialized!");return this._configService.getConfiguration()},t.prototype.getTrafficSource=function(){if(!this._configService)throw new Error("Traffic source manager is not initialized!");return this._storageService.getData()},t.prototype.init=function(o){if(this._configService)throw new Error("Traffic source manager is already initialized!");this._configService=p.create(o);var t=e(window.location.href),n=e(document.referrer);this.runChecks(t,n),this.watchLinkClicks(t),this.watchTransitions(t)},t.prototype.runChecks=function(e,t){var r,a,i=!!t&&(null===(r=this._configService)||void 0===r?void 0:r.checkIsDomainExcluded(t.domain)),s=(a=n(e.search),Object.entries(a).reduce((function(e,t){var n,r=t[0],a=t[1];return r in o?c(c({},e),((n={})[r]=a,n)):e}),{})),u=(!!t&&this.checkIsOwnDomain(t.domain),this.getTrafficSource()),g=this._paramsProcessor.processParams(s,e,t),l="(direct)"===g.utm_source;u&&(l||i)?this.saveData(u,e.domain):this.saveData(g,e.domain)},t.prototype.checkIsOwnDomain=function(o){var e;return!!(null===(e=this._configService)||void 0===e?void 0:e.checkIsOwnDomain(o))},t.prototype.saveData=function(o,e){this._storageService.saveData(o,e)},t.prototype.addParamsToOwnDomainUrl=function(o,t){var c=e(o),a=(null==c?void 0:c.domain)===t.domain;return(null==c?void 0:c.domain)&&!a&&this.checkIsOwnDomain(c.domain)?function(o,t){var c=e(o);return c?Object.entries(r(r({},n(c.search)),t)).reduce((function(o,e,t){var n=e[0],r=e[1];if(null==r)return o;var c="".concat(encodeURIComponent(n),"=").concat(encodeURIComponent(r));
1077return"".concat(o).concat(o.endsWith("?")?"":"&").concat(c)}),"".concat(c.origin).concat(c.pathname,"?")):""}(o,this.getTrafficSource()):o},t.prototype.watchLinkClicks=function(o){var e=this;document.addEventListener("click",(function(t){for(var n,r=t.target;r;){if("A","A"===(null==(n=r)?void 0:n.tagName)){var c=e.addParamsToOwnDomainUrl(r.getAttribute("href"),o);return void r.setAttribute("href",c)}if(t.cancelBubble)return;r=r.parentElement}}))},t.prototype.watchTransitions=function(o){var e=this,t=window.open;window.open=function(n,r,c){var a="string"==typeof n?e.addParamsToOwnDomainUrl(n,o):n;return t(a,r,c)}},t}();window.trafficSourceManager||Object.defineProperty(window,"trafficSourceManager",{value:new f})})(); 1078 1079if(document.referrer == '' || document.location.host != new URL(document.referrer).host){ 1080 1081 1082trafficSourceManager.init({ 1083 // List of domains that should share traffic source params. Expected that TSM installed on all of them. 1084 ownDomains: ["getdevdone.com"], 1085 // A list of domains that should be ignored. For example, your payment gateway domain. 1086 excludedDomains: ["paypal.com"] 1087}); 1088} 1089</script>
1089 1090 </body> 1091</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.