CINXE.COM
daily.dev | Where developers suffer together
<!DOCTYPE html><!-- Last Published: Wed Mar 12 2025 12:37:05 GMT+0000 (Coordinated Universal Time) --><html data-wf-domain="daily.dev" data-wf-page="65e5e3b598fc7bae6d20ebfa" data-wf-site="5e0a5d9d743608d0f3ea6753" lang="en" data-wf-locale="en-US"><head><meta charset="utf-8"/><title>daily.dev | Where developers suffer together</title><link rel="alternate" hrefLang="x-default" href="https://daily.dev/"/><link rel="alternate" hrefLang="en-US" href="https://daily.dev/"/><link rel="alternate" hrefLang="it" href="https://daily.dev/it"/><link rel="alternate" hrefLang="fr-FR" href="https://daily.dev/fr-fr"/><link rel="alternate" hrefLang="es" href="https://daily.dev/es"/><meta content="daily.dev is the open-source professional network developers deserve. Get free access to unlimited amounts of quality knowledge from all over the web every day." name="description"/><meta content="daily.dev | Where developers suffer together" property="og:title"/><meta content="daily.dev is the open-source professional network developers deserve. Get free access to unlimited amounts of quality knowledge from all over the web every day." property="og:description"/><meta content="https://media.daily.dev/image/upload/s--VAY5ToZt--/f_auto/v1724209435/public/daily.dev%20-%20open%20graph" property="og:image"/><meta content="daily.dev | Where developers suffer together" property="twitter:title"/><meta content="daily.dev is the open-source professional network developers deserve. Get free access to unlimited amounts of quality knowledge from all over the web every day." property="twitter:description"/><meta content="https://media.daily.dev/image/upload/s--VAY5ToZt--/f_auto/v1724209435/public/daily.dev%20-%20open%20graph" property="twitter:image"/><meta property="og:type" content="website"/><meta content="summary_large_image" name="twitter:card"/><meta content="width=device-width, initial-scale=1" name="viewport"/><link href="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/css/daily-e786b5.f54d79cc4.min.css" rel="stylesheet" type="text/css"/><link href="https://fonts.googleapis.com" rel="preconnect"/><link href="https://fonts.gstatic.com" rel="preconnect" crossorigin="anonymous"/><script src="https://ajax.googleapis.com/ajax/libs/webfont/1.6.26/webfont.js" type="text/javascript"></script><script type="text/javascript">WebFont.load({ google: { families: ["Open Sans:300,300italic,400,400italic,600,600italic,700,700italic,800,800italic","Poppins:200,300,regular,500,600,700,800"] }});</script><script type="text/javascript">!function(o,c){var n=c.documentElement,t=" w-mod-";n.className+=t+"js",("ontouchstart"in o||o.DocumentTouch&&c instanceof DocumentTouch)&&(n.className+=t+"touch")}(window,document);</script><link href="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/5f350958935a5ccf103429ce_daily.dev%20-%2032.png" rel="shortcut icon" type="image/x-icon"/><link href="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/5f35091372cfa97ba7438461_daily.dev%20-%20Favicon%4030x.ico" rel="apple-touch-icon"/><script async="" src="https://www.googletagmanager.com/gtag/js?id=G-88PBR8PHX0"></script><script type="text/javascript">window.dataLayer = window.dataLayer || [];function gtag(){dataLayer.push(arguments);}gtag('js', new Date());gtag('set', 'developer_id.dZGVlNj', true);gtag('config', 'G-88PBR8PHX0');</script><script type="text/javascript">!function(f,b,e,v,n,t,s){if(f.fbq)return;n=f.fbq=function(){n.callMethod?n.callMethod.apply(n,arguments):n.queue.push(arguments)};if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0';n.agent='plwebflow';n.queue=[];t=b.createElement(e);t.async=!0;t.src=v;s=b.getElementsByTagName(e)[0];s.parentNode.insertBefore(t,s)}(window,document,'script','https://connect.facebook.net/en_US/fbevents.js');fbq('init', '519268979315924');fbq('track', 'PageView');</script><!-- Start iubenda --> <script type="text/javascript"> var _iub = _iub || []; _iub.csConfiguration = {"askConsentAtCookiePolicyUpdate":true,"cookiePolicyInOtherWindow":true,"countryDetection":true,"enableLgpd":true,"enableUspr":true,"floatingPreferencesButtonDisplay":"bottom-right","inlineDelay":100,"lang":"en","perPurposeConsent":true,"siteId":1334205,"whitelabel":false,"cookiePolicyId":14695236,"i18n":{"en":{"banner":{"title":"We value your privacy","dynamic":{"body":"This site uses cookies to improve your experience. By continuing to use our site, you accept our use of cookies, Privacy Policy, and Terms of Service."}}}}, "banner":{ "acceptButtonDisplay":true,"closeButtonRejects":true,"customizeButtonDisplay":true,"explicitWithdrawal":true,"fontSizeBody":"12px","fontSizeCloseButton":"18px","logo":null,"position":"bottom","slideDown":false }}; </script> <script type="text/javascript" src="//cs.iubenda.com/sync/1334205.js"></script> <script type="text/javascript" src="//cdn.iubenda.com/cs/gpp/stub.js"></script> <script type="text/javascript" src="//cdn.iubenda.com/cs/iubenda_cs.js" charset="UTF-8" async></script> <style> h1#iubenda-cs-title { line-height: 20px; } </style> <!-- End iubenda --> <!-- Start GrowthBook --> <script async data-api-host="https://cdn.growthbook.io" data-client-key="sdk-RN7XL3hj682dqj38" src="https://cdn.jsdelivr.net/npm/@growthbook/growthbook/dist/bundles/auto.min.js" ></script> <!-- End GrowthBook --> <style>{-webkit-font-smoothing: antialiased; -moz-font-smoothing: antialiased; -o-font-smoothing: antialiased;}</style> <!-- Start VWO Async SmartCode --> <link rel="preconnect" href="https://dev.visualwebsiteoptimizer.com" /> <script type='text/javascript' id='vwoCode'> window._vwo_code || (function() { var account_id=777898, version=2.0, settings_tolerance=2000, hide_element='body', hide_element_style = 'opacity:0 !important;filter:alpha(opacity=0) !important;background:none !important', /* DO NOT EDIT BELOW THIS LINE */ f=false,w=window,d=document,v=d.querySelector('#vwoCode'),cK='_vwo_'+account_id+'_settings',cc={};try{var c=JSON.parse(localStorage.getItem('_vwo_'+account_id+'_config'));cc=c&&typeof c==='object'?c:{}}catch(e){}var stT=cc.stT==='session'?w.sessionStorage:w.localStorage;code={use_existing_jquery:function(){return typeof use_existing_jquery!=='undefined'?use_existing_jquery:undefined},library_tolerance:function(){return typeof library_tolerance!=='undefined'?library_tolerance:undefined},settings_tolerance:function(){return cc.sT||settings_tolerance},hide_element_style:function(){return'{'+(cc.hES||hide_element_style)+'}'},hide_element:function(){return typeof cc.hE==='string'?cc.hE:hide_element},getVersion:function(){return version},finish:function(){if(!f){f=true;var e=d.getElementById('_vis_opt_path_hides');if(e)e.parentNode.removeChild(e)}},finished:function(){return f},load:function(e){var t=this.getSettings(),n=d.createElement('script'),i=this;if(t){n.textContent=t;d.getElementsByTagName('head')[0].appendChild(n);if(!w.VWO||VWO.caE){stT.removeItem(cK);i.load(e)}}else{n.fetchPriority='high';n.src=e;n.type='text/javascript';n.onerror=function(){_vwo_code.finish()};d.getElementsByTagName('head')[0].appendChild(n)}},getSettings:function(){try{var e=stT.getItem(cK);if(!e){return}e=JSON.parse(e);if(Date.now()>e.e){stT.removeItem(cK);return}return e.s}catch(e){return}},init:function(){if(d.URL.indexOf('__vwo_disable__')>-1)return;var e=this.settings_tolerance();w._vwo_settings_timer=setTimeout(function(){_vwo_code.finish();stT.removeItem(cK)},e);var t=d.currentScript,n=d.createElement('style'),i=this.hide_element(),r=t&&!t.async&&i?i+this.hide_element_style():'',c=d.getElementsByTagName('head')[0];n.setAttribute('id','_vis_opt_path_hides');v&&n.setAttribute('nonce',v.nonce);n.setAttribute('type','text/css');if(n.styleSheet)n.styleSheet.cssText=r;else n.appendChild(d.createTextNode(r));c.appendChild(n);this.load('https://dev.visualwebsiteoptimizer.com/j.php?a='+account_id+'&u='+encodeURIComponent(d.URL)+'&vn='+version)}};w._vwo_code=code;code.init();})(); </script> <!-- End VWO Async SmartCode --> <!-- Twitter conversion tracking base code --> <script> !function(e,t,n,s,u,a){e.twq||(s=e.twq=function(){s.exe?s.exe.apply(s,arguments):s.queue.push(arguments); },s.version='1.1',s.queue=[],u=t.createElement(n),u.async=!0,u.src='https://static.ads-twitter.com/uwt.js', a=t.getElementsByTagName(n)[0],a.parentNode.insertBefore(u,a))}(window,document,'script'); twq('config','o6izs'); </script> <!-- End Twitter conversion tracking base code --> <!-- Google Tag Manager --> <script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer','GTM-MLVHQ754');</script> <!-- End Google Tag Manager --> <!-- Systems Operational Status --> <script src="https://www.dailydevstatus.com/embed/script.js"></script> <!-- End Systems Operational Status --><script type="application/ld+json"> { "@context": "https://schema.org", "@type": "Organization", "name": "Daily Dev Ltd.", "url": "http://daily.dev/", "sameAs": "http://app.daily.dev/", "email": "hi@daily.dev", "address": { "@type": "PostalAddress", "name": "9 Derech HaTikva Street, Ganei Tikva, Israel 5591252" }, "logo": { "@type": "ImageObject", "width":512, "height":512, "url": "https://daily-now-res.cloudinary.com/image/upload/v1614088267/landing/Daily.dev_logo.png" } } </script> <style> body.no-scroll { overflow: hidden; position: fixed; width: 100%; height: 100%; } </style> <script> document.addEventListener('DOMContentLoaded', function() { // Function to detect the browser function detectBrowser() { const userAgent = navigator.userAgent.toLowerCase(); const vendor = navigator.vendor.toLowerCase(); if (userAgent.indexOf("edg") > -1) { return "edge"; } else if ( userAgent.indexOf("chrome") > -1 && vendor.indexOf("google") > -1 && userAgent.indexOf("opr") === -1 && userAgent.indexOf("edg") === -1 ) { return "chrome"; } else { return "other"; } } // Get browser type const browser = detectBrowser(); // Select button elements const chromeButton = document.querySelector('.chrome-main'); const edgeButton = document.querySelector('.edge-main'); const defaultButton = document.querySelector('.default-main'); const webapp = document.querySelector('.webapplink'); if (chromeButton && edgeButton) { // Show/hide buttons based on detected browser if (browser==='chrome') { chromeButton.style.display = 'flex'; edgeButton.style.display = 'none'; defaultButton.style.display = 'none'; webapp.style.display = 'none'; } else if (browser==='edge') { chromeButton.style.display = 'none'; edgeButton.style.display = 'flex'; defaultButton.style.display = 'none'; webapp.style.display = 'none'; } else { chromeButton.style.display = 'none'; edgeButton.style.display = 'none'; defaultButton.style.display = 'flex'; webapp.style.display = 'block'; } } }); </script> <!-- Start iOS --> <script type="text/javascript"> document.addEventListener('DOMContentLoaded', function() { // Function to detect iOS devices function isIOS() { return [ 'iPad Simulator', 'iPhone Simulator', 'iPod Simulator', 'iPad', 'iPhone', 'iPod' ].includes(navigator.platform) || (navigator.userAgent.includes("Mac") && "ontouchend" in document); } // Select default and iOS buttons const defaultButton = document.querySelector('.google-play-button'); const iosButton = document.querySelector('.ios-button'); // Check if both buttons exist if (defaultButton && iosButton) { if (isIOS()) { // Hide default button defaultButton.style.display = 'none'; // Ensure iOS button is visible iosButton.style.display = 'block'; } } }); </script> <!-- End iOS --> <script> // Get the lang attribute from the HTML element const htmlLang = document.documentElement.lang; // Check the lang attribute and run a script accordingly if (htmlLang === 'en') { console.log('This page is in English. You can run English-specific code here.'); // Add your English-specific code here } else { console.log('This page is in a language other than English'); // Add code for other languages here <meta content="noindex" name="robots"> } </script> <script type="text/javascript">window.__WEBFLOW_CURRENCY_SETTINGS = {"currencyCode":"USD","symbol":"$","decimal":".","fractionDigits":2,"group":",","template":"{{wf {\"path\":\"symbol\",\"type\":\"PlainText\"} }} {{wf {\"path\":\"amount\",\"type\":\"CommercePrice\"} }} {{wf {\"path\":\"currencyCode\",\"type\":\"PlainText\"} }}","hideDecimalForWholeNumbers":false};</script></head><body class="body"><div class="cta-popover"><div class="popup"><div class="cpopup-review"><div class="richtext-popup w-richtext"><h2>We noticed you've decided to pass on the extension.. not that we care 🙄 Well, fine, of course we care.</h2><p>We tried to avoid it, but marketing asked us to make sure you know that daily.dev lets you: <br/></p><p>🚀 Supercharge your dev news game<br/></p><p>💡 Discover new tools & tricks (Warning: May cause spontaneous "Aha!" moments)<br/></p><p>📚 Personalize your feed based on your tech stack<br/></p><p>Still not convinced? There’s always the web app. We’d recommend installing the extension. Totally objective advice. if it's not your cup of code, uninstalling is just a click away.</p></div><a ta="extension-popover" href="https://api.daily.dev/get" target="_blank" class="link-block popup-button-chrome cta w-inline-block"><div class="text-button cpopup">Add daily.dev to browser<span class="text-span-2 show"></span></div></a><div data-w-id="c3a34f3f-9a90-4d47-049e-08b0a909ddfb" class="dismiss-button"><div class="text-button sec">Dismiss<span class="text-span-2 show"></span></div></div></div><div class="cpopup-content"><div class="div-block-206 cpopup"><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/5f1d8b1b9c7814aae6b69044_Daily%20Full%20logo.svg" width="186" alt="Daily Logo" class="logo-link cpopup"/><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/665f15382e3f8d04d26d5962_Review%20Stats.png" loading="lazy" sizes="(max-width: 479px) 100vw, 384px" alt="Images of 11k stars on GitHub, 1600+ reviews on Google Chrome store, Golden Kitty Awards winner" width="384" srcset="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/665f15382e3f8d04d26d5962_Review%20Stats-p-500.png 500w, https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/665f15382e3f8d04d26d5962_Review%20Stats-p-800.png 800w, https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/665f15382e3f8d04d26d5962_Review%20Stats-p-1080.png 1080w, https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/665f15382e3f8d04d26d5962_Review%20Stats-p-1600.png 1600w, https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/665f15382e3f8d04d26d5962_Review%20Stats.png 1640w" class="popup-reviews cpopup"/><div class="stats-logos cpopup"><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/6400c621b55b470d8c1bf98e_Apple.svg" loading="lazy" width="27" alt="Apple logo" class="apple-logo"/><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/6400c621d4daa519ea9a93ac_google.svg" loading="lazy" width="71" alt="Google logo" class="google-logo"/><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/6400c621805aed406f939429_Group.svg" loading="lazy" width="51" alt="AWS logo" class="aws-logo"/><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/6405a2b6257c741de01cdc82_Microsoft_logo_(2012)%201.svg" loading="lazy" width="143" alt="Microsoft logo" class="microsoft-logo"/><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/6400c621b23daf3a80a0e4b8_Meta_Platforms_Inc._logo%201.svg" loading="lazy" width="95" alt="Meta logo" class="meta-logo"/></div></div></div></div><div class="fadebg"></div></div><section class="hero-strip"><div class="hero-strip-text">Over 1,000,000 developers served!!!! 🍔🍟</div></section><header class="header"><div data-collapse="small" data-animation="default" data-duration="0" data-easing="ease" data-easing2="ease" role="banner" class="navbar w-nav"><div class="navigation-strip w-container"><a href="/?r=0" aria-current="page" class="logo-link w-nav-brand w--current"><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/5f1d8b1b9c7814aae6b69044_Daily%20Full%20logo.svg" width="152" alt="Daily Logo" class="logo-link"/></a><a ta="extension" href="https://api.daily.dev/get" target="_blank" class="button cta w-button">Start reading <span class="text-span-21"><strong class="bold-text-3">- Free forever</strong></span></a><a ta="mobile" href="https://api.daily.dev/get" target="_blank" class="m-button cta w-button">Get it now</a></div></div><div class="bg-behind-header"></div></header><section class="hero-stack mobile-d"><div class="d-hero-wrapper"><h1 class="hero-heading">Where developers<br/><span class="static-type">suffer together</span><br/></h1><p class="hero-p">We know how hard it is to be a developer. It doesn’t have to be. <br/>Personalized news feed, dev communities and search, much better than what’s out there. Maybe ;)</p><a ta="appstore" href="https://apps.apple.com/app/daily-dev/id6740634400" target="_blank" class="ios-button cta w-inline-block"><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/67a1d747a33f5e26c766ecfd_Download_on_the_App_Store_Badge_US-UK_RGB_wht_092917.svg" loading="lazy" width="141" alt="daily.dev on App Store" class="main-appstore"/></a><a id="google-play-button" ta="googleplay" href="https://play.google.com/store/apps/details?id=dev.daily" target="_blank" class="google-play-button cta w-inline-block"><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/67a1e56f9bb1080f810aca8c_GetItOnGooglePlay_Badge_Web_color_English%201.svg" loading="lazy" width="141" alt="daily.dev on Google Play" class="main-googleplay"/></a><div class="container-main"><a ta="extension" href="https://api.daily.dev/get" target="_blank" class="edge-main b cta w-inline-block"><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/5eb07f5ca3602a29506297b8_Firefox.svg" alt="Chrome Web Store" loading="lazy" class="browser-icon hide"/><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/5f7338a6af28f577fb56f87e_Edge.svg" alt="Edge Browser Addons" loading="lazy" class="browser-icon middle"/><div class="text-button">Start reading <span class="text-span-2 show">- Free forever</span></div></a><a ta="extension" href="https://api.daily.dev/get" target="_blank" class="default-main b cta w-inline-block"><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/5eb07f5ca3602a29506297b8_Firefox.svg" alt="Chrome Web Store" loading="lazy" class="browser-icon hide"/><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/5f7338a6af28f577fb56f87e_Edge.svg" alt="Edge Browser Addons" loading="lazy" class="edge-icon middle"/><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/5eb07f5c89c6a0ebd1e429eb_Chrome.svg" alt="Chrome Web Store" loading="lazy" class="browser-icon last"/><div class="text-button">Start reading <span class="text-span-2 show">- Free forever</span></div></a><a ta="extension" href="https://api.daily.dev/get" target="_blank" class="chrome-main b cta w-inline-block"><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/5eb07f5ca3602a29506297b8_Firefox.svg" alt="Chrome Web Store" loading="lazy" class="browser-icon hide"/><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/5eb07f5c89c6a0ebd1e429eb_Chrome.svg" alt="Chrome Web Store" loading="lazy" class="browser-icon last"/><div class="text-button">Start reading <span class="text-span-2 show">- Free forever</span></div></a><a id="webapplink" ta="webapp" href="https://app.daily.dev/?utm_source=landing&utm_medium=cta&utm_campaign=landing_conversions" target="_blank" class="webapplink cta">Or try our web version</a><a ta="webapp" href="https://app.daily.dev/?utm_source=landing&utm_medium=cta&utm_campaign=landing_conversions" target="_blank" class="button-mobile cta w-button">Start now <span class="text-span-14">- it's free</span></a></div></div><a href="#" class="lightbox-link w-inline-block w-lightbox"><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/6406fd3c3e9f3b4d5ab04042_Play%20button.svg" loading="lazy" width="200" data-w-id="a9aa0469-0e70-7edf-609f-abf39c024090" alt="Play button" class="hero-play-button"/><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/64070707e3e10633530f0a08_daily.dev%20feed%20-%20mobile.webp" loading="lazy" sizes="(max-width: 1876px) 100vw, 1876px" srcset="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/64070707e3e10633530f0a08_daily.dev%20feed%20-%20mobile-p-500.webp 500w, https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/64070707e3e10633530f0a08_daily.dev%20feed%20-%20mobile-p-800.webp 800w, https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/64070707e3e10633530f0a08_daily.dev%20feed%20-%20mobile-p-1080.webp 1080w, https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/64070707e3e10633530f0a08_daily.dev%20feed%20-%20mobile-p-1600.webp 1600w, https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/64070707e3e10633530f0a08_daily.dev%20feed%20-%20mobile.webp 1876w" alt="mobile hero image" class="mobile-ui"/><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/640706a01a142c3ca77671d6_daily.dev%20feed%20-%20tablet.webp" loading="lazy" sizes="(max-width: 2772px) 100vw, 2772px" srcset="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/640706a01a142c3ca77671d6_daily.dev%20feed%20-%20tablet-p-500.webp 500w, https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/640706a01a142c3ca77671d6_daily.dev%20feed%20-%20tablet-p-800.webp 800w, https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/640706a01a142c3ca77671d6_daily.dev%20feed%20-%20tablet-p-1080.webp 1080w, https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/640706a01a142c3ca77671d6_daily.dev%20feed%20-%20tablet-p-1600.webp 1600w, https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/640706a01a142c3ca77671d6_daily.dev%20feed%20-%20tablet-p-2000.webp 2000w, https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/640706a01a142c3ca77671d6_daily.dev%20feed%20-%20tablet-p-2600.webp 2600w, https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/640706a01a142c3ca77671d6_daily.dev%20feed%20-%20tablet.webp 2772w" alt="mobile hero image" class="tablet-ui"/><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/6638bcb6a71f89ec30bb8a05_Feed.png" loading="lazy" width="1000" height="1000" alt="daily.dev UI" srcset="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/6638bcb6a71f89ec30bb8a05_Feed-p-500.png 500w, https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/6638bcb6a71f89ec30bb8a05_Feed-p-800.png 800w, https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/6638bcb6a71f89ec30bb8a05_Feed-p-1080.png 1080w, https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/6638bcb6a71f89ec30bb8a05_Feed-p-1600.png 1600w, https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/6638bcb6a71f89ec30bb8a05_Feed-p-2000.png 2000w, https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/6638bcb6a71f89ec30bb8a05_Feed-p-2600.png 2600w, https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/6638bcb6a71f89ec30bb8a05_Feed.png 3952w" sizes="(max-width: 1279px) 100vw, 1000px" class="desktop-ui"/><script type="application/json" class="w-json">{ "items": [ { "url": "https://www.youtube.com/watch?v=igZCEr3HwCg?autoplay=1", "originalUrl": "https://www.youtube.com/watch?v=igZCEr3HwCg?autoplay=1", "width": 940, "height": 528, "thumbnailUrl": "http://i.ytimg.com/vi/igZCEr3HwCg/hqdefault.jpg", "html": "<iframe class=\"embedly-embed\" src=\"//cdn.embedly.com/widgets/media.html?src=https%3A%2F%2Fwww.youtube.com%2Fembed%2FigZCEr3HwCg%3Fautoplay%3D1&display_name=YouTube&url=https%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DigZCEr3HwCg&image=http%3A%2F%2Fi.ytimg.com%2Fvi%2FigZCEr3HwCg%2Fhqdefault.jpg&key=96f1f04c5f4143bcb0f2e68c87d65feb&autoplay=1&type=text%2Fhtml&schema=youtube\" width=\"940\" height=\"528\" scrolling=\"no\" title=\"YouTube embed\" frameborder=\"0\" allow=\"autoplay; fullscreen; encrypted-media; picture-in-picture;\" allowfullscreen=\"true\"></iframe>", "type": "video" } ], "group": "" }</script></a><div class="div-block-208"></div><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/6405ebc66eec1b7027005bdf_Stars.svg" loading="lazy" alt="background image with stars" class="starbg"/><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/6405ec1049bd67549a85793f_Space.svg" loading="lazy" alt="background image with stars" class="starbg"/></section><section class="hero-proof mobile-d"><div class="d-hero-wrapper"><h1 class="hero-heading">Where developers<br/><span class="static-type">suffer together</span><br/></h1><p class="hero-p">We know how hard it is to be a developer. It doesn’t have to be. Personalized news feed, dev communities and search, much better than what’s out there. Maybe ;)</p><div class="container-main"><a ta="extension" href="https://api.daily.dev/get" target="_blank" class="link-block button-chrome cta w-inline-block"><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/5f7338a6af28f577fb56f87e_Edge.svg" alt="Edge Browser Addons" loading="lazy" class="browser-icon"/><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/5eb07f5ca3602a29506297b8_Firefox.svg" alt="Firefox Browser Addons" loading="lazy" class="browser-icon middle"/><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/5eb07f5c89c6a0ebd1e429eb_Chrome.svg" alt="Chrome Web Store" loading="lazy" class="browser-icon last"/><div class="text-button">Start reading <span class="text-span-2 show">- Free forever</span></div></a><a ta="webapp" href="https://app.daily.dev/?utm_source=landing&utm_medium=cta&utm_campaign=landing_conversions" target="_blank" class="button-mobile cta w-button">Start now <span class="text-span-14">- it's free</span></a><a id="webapplink" ta="webapp" href="https://app.daily.dev/?utm_source=landing&utm_medium=cta&utm_campaign=landing_conversions" target="_blank" class="webapplink cta">Or try our web version</a></div><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/65d1cbf03dcf2f045564791e_daily.dev%20-%20social%20proof.png" loading="lazy" sizes="100vw" srcset="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/65d1cbf03dcf2f045564791e_daily.dev%20-%20social%20proof-p-500.png 500w, https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/65d1cbf03dcf2f045564791e_daily.dev%20-%20social%20proof-p-800.png 800w, https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/65d1cbf03dcf2f045564791e_daily.dev%20-%20social%20proof-p-1080.png 1080w, https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/65d1cbf03dcf2f045564791e_daily.dev%20-%20social%20proof-p-1600.png 1600w, https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/65d1cbf03dcf2f045564791e_daily.dev%20-%20social%20proof-p-2000.png 2000w, https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/65d1cbf03dcf2f045564791e_daily.dev%20-%20social%20proof-p-2600.png 2600w, https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/65d1cbf03dcf2f045564791e_daily.dev%20-%20social%20proof-p-3200.png 3200w, https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/65d1cbf03dcf2f045564791e_daily.dev%20-%20social%20proof.png 3236w" alt="daily.dev - social proof "/></div><div class="div-block-208"></div><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/6405ebc66eec1b7027005bdf_Stars.svg" loading="lazy" alt="background image with stars" class="starbg"/><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/6405ec1049bd67549a85793f_Space.svg" loading="lazy" alt="background image with stars" class="starbg"/></section><div class="reviews"><div class="div-block-209"><div class="div-block-206"><div class="paragraph-4">The world's best developer platform for <strong class="text-span-15">knowledge and community</strong></div><div class="stats-logos"><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/6400c621b55b470d8c1bf98e_Apple.svg" loading="lazy" width="27" alt="Apple logo" class="apple-logo"/><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/6400c621d4daa519ea9a93ac_google.svg" loading="lazy" width="71" alt="Google logo" class="google-logo"/><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/6400c621805aed406f939429_Group.svg" loading="lazy" width="51" alt="AWS logo" class="aws-logo"/><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/6405a2b6257c741de01cdc82_Microsoft_logo_(2012)%201.svg" loading="lazy" width="143" alt="Microsoft logo" class="microsoft-logo"/><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/6400c621b23daf3a80a0e4b8_Meta_Platforms_Inc._logo%201.svg" loading="lazy" width="95" alt="Meta logo" class="meta-logo"/></div></div><div class="stats-image-main"><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/66f91e9d1761f930582b04db_r%20side%20(1).png" loading="lazy" sizes="(max-width: 1640px) 100vw, 1640px" srcset="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/66f91e9d1761f930582b04db_r%20side%20(1)-p-500.png 500w, https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/66f91e9d1761f930582b04db_r%20side%20(1)-p-800.png 800w, https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/66f91e9d1761f930582b04db_r%20side%20(1)-p-1080.png 1080w, https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/66f91e9d1761f930582b04db_r%20side%20(1).png 1640w" alt="14K+ GitHub Stars" class="github-starts-image"/></div><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/6405f93920dd6552a7cca55f_Reviews.svg" loading="lazy" width="384" alt="Images of 11k stars on GitHub, 1600+ reviews on Google Chrome store, Golden Kitty Awards winner" class="stats-image"/></div></div><div class="social-test"><div class="div-block-209 _2"><div class="div-block-206 _2"><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/65d1cd0e2ed18186f1ef44a3_Stars.png" loading="lazy" width="185" sizes="185px" alt="daily.dev - stats" srcset="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/65d1cd0e2ed18186f1ef44a3_Stars-p-500.png 500w, https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/65d1cd0e2ed18186f1ef44a3_Stars-p-800.png 800w, https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/65d1cd0e2ed18186f1ef44a3_Stars-p-1080.png 1080w, https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/65d1cd0e2ed18186f1ef44a3_Stars.png 1454w"/><div class="paragraph-4">The world's best dev platform for <strong class="text-span-15">staying up to date</strong></div><div class="stats-logos hide"><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/6400c621b55b470d8c1bf98e_Apple.svg" loading="lazy" width="27" alt="Apple logo" class="apple-logo"/><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/6400c621d4daa519ea9a93ac_google.svg" loading="lazy" width="71" alt="Google logo" class="google-logo"/><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/6400c621805aed406f939429_Group.svg" loading="lazy" width="51" alt="AWS logo" class="aws-logo"/><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/6405a2b6257c741de01cdc82_Microsoft_logo_(2012)%201.svg" loading="lazy" width="143" alt="Microsoft logo" class="microsoft-logo"/><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/6400c621b23daf3a80a0e4b8_Meta_Platforms_Inc._logo%201.svg" loading="lazy" width="95" alt="Meta logo" class="meta-logo"/></div></div><div class="stats-image-main _2"><div class="stats-image-block hide"><a href="https://github.com/dailydotdev/daily" target="_blank" class="link-block-4 w-inline-block"><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/65a5250b85f22f600ea50bbd_15K-stars.svg" loading="lazy" alt="14K+ GitHub Stars" class="github-starts-image"/></a><a href="https://chrome.google.com/webstore/detail/dailydev-the-homepage-dev/jlmpjdjjbgclbocgajdjefcidcncaied" target="_blank" class="w-inline-block"><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/65129d4a92fd50dc20cc5403_Frame%20897.svg" loading="lazy" alt="1,800+ reviews on Google Chrome store" class="google-reviews"/></a><a href="https://www.producthunt.com/products/daily-dev" target="_blank" class="link-block-3 w-inline-block"><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/641b25ba5e756f582222dafb_golden-kitty.svg" loading="lazy" alt="Golden Kitty Awards 2022 winner" class="golden-kitty-image"/></a><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/65d1cbf03dcf2f045564791e_daily.dev%20-%20social%20proof.png" loading="lazy" width="590" sizes="(max-width: 767px) 100vw, 590px" alt="daily.dev - social proof " srcset="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/65d1cbf03dcf2f045564791e_daily.dev%20-%20social%20proof-p-500.png 500w, https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/65d1cbf03dcf2f045564791e_daily.dev%20-%20social%20proof-p-800.png 800w, https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/65d1cbf03dcf2f045564791e_daily.dev%20-%20social%20proof-p-1080.png 1080w, https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/65d1cbf03dcf2f045564791e_daily.dev%20-%20social%20proof-p-1600.png 1600w, https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/65d1cbf03dcf2f045564791e_daily.dev%20-%20social%20proof-p-2000.png 2000w, https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/65d1cbf03dcf2f045564791e_daily.dev%20-%20social%20proof-p-2600.png 2600w, https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/65d1cbf03dcf2f045564791e_daily.dev%20-%20social%20proof-p-3200.png 3200w, https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/65d1cbf03dcf2f045564791e_daily.dev%20-%20social%20proof.png 3236w"/></div><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/641ab4d8f6e7797ecce78d33_blur.svg" loading="lazy" alt="pink shadow blur" class="pink-shadow hide"/><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/65d1cd0e01dd4f836a787d10_Reviews.png" loading="lazy" width="648" sizes="(max-width: 767px) 100vw, 648px" alt="daily.dev - reviews" srcset="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/65d1cd0e01dd4f836a787d10_Reviews-p-500.png 500w, https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/65d1cd0e01dd4f836a787d10_Reviews-p-800.png 800w, https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/65d1cd0e01dd4f836a787d10_Reviews-p-1080.png 1080w, https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/65d1cd0e01dd4f836a787d10_Reviews-p-1600.png 1600w, https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/65d1cd0e01dd4f836a787d10_Reviews-p-2000.png 2000w, https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/65d1cd0e01dd4f836a787d10_Reviews-p-2600.png 2600w, https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/65d1cd0e01dd4f836a787d10_Reviews-p-3200.png 3200w, https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/65d1cd0e01dd4f836a787d10_Reviews.png 3236w"/></div><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/6405f93920dd6552a7cca55f_Reviews.svg" loading="lazy" width="384" alt="Images of 11k stars on GitHub, 1600+ reviews on Google Chrome store, Golden Kitty Awards winner" class="stats-image"/></div></div><footer class="footer"><div class="website-max-width w-container"><div class="footer-info first"><div class="div-block-14"><a href="/?r=0" aria-current="page" class="w-inline-block w--current"><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/5f1d8b1b9c7814aae6b69044_Daily%20Full%20logo.svg" loading="lazy" alt="daily.dev logo" class="image-60 hide"/></a><div class="paragraph xs sitemap hide">daily.dev is a professional network for developers to learn, collaborate, and grow together.</div><div class="w-layout-hflex flex-block-16"><a ta="appstore" href="https://apps.apple.com/app/daily-dev/id6740634400" target="_blank" class="appstore cta w-inline-block"><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/67a1d747a33f5e26c766ecfd_Download_on_the_App_Store_Badge_US-UK_RGB_wht_092917.svg" loading="lazy" width="141" alt="daily.dev on App Store" class="image-121"/></a><a ta="googleplay" href="https://play.google.com/store/apps/details?id=dev.daily" target="_blank" class="googleplay cta w-inline-block"><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/67a1e56f9bb1080f810aca8c_GetItOnGooglePlay_Badge_Web_color_English%201.svg" loading="lazy" width="141" alt="daily.dev on Google Play" class="image-121-b"/></a></div><div class="social-icons"><a href="https://app.daily.dev/squads/daily_updates" target="_blank" class="social-link w-inline-block"><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/66e174de6a17acea46d7f208_dailydev.svg" width="30" alt="Twitter" loading="lazy" class="social-icon daily-dev"/></a><a href="https://twitter.com/dailydotdev" target="_blank" class="social-link w-inline-block"><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/652013281659e3772def4d45_logo.svg" width="30" alt="Twitter" loading="lazy" class="social-icon x"/></a><a href="https://github.com/dailydotdev/daily" target="_blank" class="social-link w-inline-block"><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/5e19de93a7d3a2e0db2e086a_github.svg" width="30" alt="GitHub" loading="lazy" class="social-icon"/></a><a href="https://www.instagram.com/dailydotdev/" target="_blank" class="social-link w-inline-block"><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/5e4e39ab47c62082de2e8889_Instagram.svg" width="30" alt="Instagram" loading="lazy" class="social-icon last"/></a><a href="https://www.tiktok.com/@dailydotdev" target="_blank" class="social-link w-inline-block"><img src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/6345cbe66cf515e13bf26193_White.svg" width="30" alt="Instagram" loading="lazy" class="social-icon last"/></a></div></div><div class="sitemap"><div class="sitemap-column"><div class="sitemap-title">Product</div><a ta="extension" href="https://r.daily.dev/chrome" target="_blank" class="link cta">Chrome extension </a><a ta="extension" href="https://microsoftedge.microsoft.com/addons/detail/dailydev-the-homepage-/cbdhgldgiancdheindpekpcbkccpjaeb?hl=en-GB" target="_blank" class="link cta">Edge add-on<br/></a><a ta="extension" href="https://addons.mozilla.org/en-US/firefox/addon/daily/" target="_blank" class="link cta hide">Firefox add-ons<br/></a><a ta="appstore" href="https://apps.apple.com/app/daily-dev/id6740634400" target="_blank" class="link cta">iOS app</a><a ta="googleplay" href="https://play.google.com/store/apps/details?id=dev.daily" target="_blank" class="link cta">Android app</a><a ta="webapp" href="https://app.daily.dev/?utm_source=landing&utm_medium=cta&utm_campaign=landing_conversions" target="_blank" class="link cta">Web version</a><a href="https://app.daily.dev/squads/daily_updates" target="_blank" class="link">Changelog</a><a href="https://www.dailydevstatus.com/" target="_blank" class="link">Status</a></div><div class="sitemap-column first"><div class="sitemap-title">Community</div><a href="https://docs.daily.dev/docs/intro" target="_blank" class="link">Docs</a><a href="https://github.com/dailydotdev/daily" target="_blank" class="link">Open source</a><a href="https://github.com/dailydotdev/daily/discussions" target="_blank" class="link">Feature requests</a><a href="https://www.meetup.com/the-monthly-dev-world-class-talks-by-expert-developers/" target="_blank" class="link">Online events</a><a href="https://store.daily.dev/" target="_blank" class="link">Swag store</a></div><div class="sitemap-column"><div class="sitemap-title">Company</div><a href="/careers" class="link">Careers</a><a href="/blog-superold" class="link">Blog</a><a href="https://business.daily.dev/?ref=homepage" target="_blank" class="link">Advertise</a><a href="https://brand.daily.dev/" class="link">Brand book</a><a href="/about-us" class="link">About us</a><a href="/contact" class="link">Contact</a></div></div></div><div class="separator-w"></div><div class="fotter-more"></div><div class="rights-reserved"><div class="div-block-81"><div class="paragraph-xs credit">© 2025 Daily Dev Ltd.</div><div class="policy"><a href="/tos" target="_blank" class="link">Terms</a><div class="separator-h small"></div><a href="/privacy" target="_blank" class="link">Privacy</a><div class="separator-h small"></div><a href="https://r.daily.dev/content-guidelines" target="_blank" class="link">Guidelines</a></div></div><div class="div-block-82"><div class="paragraph-xs flag-text">Working remotely wherever we're happiest<br/></div><div class="flags">🇮🇱 🇮🇹 🇵🇭 🇳🇱 🇬🇧 🇭🇷 🇱🇹 🇦🇺 🇵🇱 🇳🇴 🇦🇱 🇵🇹</div></div></div></div></footer><script src="https://d3e54v103j8qbb.cloudfront.net/js/jquery-3.5.1.min.dc5e7f18c8.js?site=5e0a5d9d743608d0f3ea6753" type="text/javascript" integrity="sha256-9/aliU8dGd2tb6OSsuzixeV4y/faTqgFtohetphbbj0=" crossorigin="anonymous"></script><script src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/js/daily-e786b5.schunk.4a394eb5af8156f2.js" type="text/javascript"></script><script src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/js/daily-e786b5.schunk.9e63a7a4b31640ef.js" type="text/javascript"></script><script src="https://cdn.prod.website-files.com/5e0a5d9d743608d0f3ea6753/js/daily-e786b5.d4d0d8fc.d40be51c613f2281.js" type="text/javascript"></script><script type="text/javascript"> window.growthbook_config = window.growthbook_config || {}; window.growthbook_config.antiFlicker = true; window.growthbook_config.antiFlickerTimeout = 100; window.growthbook_config.trackingCallback = (experiment, result) => { sendAllocation(experiment.key, result.key); }; const COOKIES = ['_ga', '_fbp', '_fbc', 'gbuuid']; function getCookies(names) { const cookies = document?.cookie?.split(';')?.map((cookie) => cookie.trim()) || []; if (!cookies.length) { return undefined; } return names.reduce((acc, name) => { const foundCookie = cookies.find((cookie) => cookie.startsWith(`${name}=`)); if (!foundCookie) { return acc; } return { ...acc, [name]: decodeURIComponent(foundCookie.split('=')[1]), }; }, {}); } function generateEventId(now) { const randomStr = (Math.random() + 1).toString(36).substring(8); const timePart = (now.getTime() / 1000).toFixed(0); return `${timePart}${randomStr}`; } function triggerEvent(ev) { const boot = window.boot; if (!boot) { return; } const urlSearchParams = new URLSearchParams(window.location.search); const query = Object.fromEntries(urlSearchParams.entries()); const queryStr = JSON.stringify(query); const now = new Date(); const cookies = JSON.stringify(getCookies(COOKIES)); const events = [{ ...ev, event_timestamp: now, event_id: generateEventId(now), event_page: `/landing${window.location.pathname}`, app_platform: 'landing', query_params: queryStr.length > 2 ? queryStr : undefined, session_id: boot.visit.sessionId, user_first_visit: boot.user.firstVisit, user_id: boot.user.id, visit_id: boot.visit.visitId, utm_campaign: query?.utm_campaign, utm_content: query?.utm_content, utm_medium: query?.utm_medium, utm_source: query?.utm_source, utm_term: query?.utm_term, screen_height: window.screen?.height, screen_width: window.screen?.width, page_referrer: document.referrer, window_height: window.innerHeight, window_width: window.innerWidth, user_registration_date: boot.user?.createdAt, cookies: cookies === '{}' ? undefined : cookies, }]; return fetch('https://api.daily.dev/e', { method: 'POST', body: JSON.stringify({ events }), credentials: 'include', headers: { 'content-type': 'application/json', }, }); } function sendAllocation(experiment_id, variation_id) { if (!window.boot) { setTimeout(() => sendAllocation(experiment_id, variation_id), 100); return; } const cookies = getCookies(COOKIES) return fetch('https://api.daily.dev/e/x', { method: 'POST', body: JSON.stringify({ event_timestamp: new Date(), user_id: window.boot.user.id, gbuuid: cookies['gbuuid'], experiment_id, variation_id, }), credentials: 'include', headers: { 'content-type': 'application/json', }, }) } fetch('https://api.daily.dev/boot', { credentials: 'include' }) .then((res) => res.json()) .then((boot) => { window.boot = boot; return triggerEvent({ event_name: 'page view' }); }); </script> <script> window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; ga('create', 'UA-109059578-3', 'auto', {'allowLinker': true}); ga('require', 'linker'); ga('linker:autoLink', ['r.daily.dev', 'chrome.google.com', 'api.daily.dev', 'app.daily.dev']); window.VWO = window.VWO || []; VWO.event = VWO.event || function () {VWO.push(["event"].concat([].slice.call(arguments)))}; function gtag_report_conversion(e, redirect) { var callback = function () { const href = e.currentTarget.getAttribute('href'); if (href && redirect && e.currentTarget.getAttribute('target') !== '_blank') { window.location = href; } }; gtag('event', 'conversion', { 'send_to': 'AW-619408403/8JaXCNWU7voBEJPYracC', 'event_callback': callback }); return false; } $(document).ready(function() { $('.cta, a[href="https://api.daily.dev/get?r=blog"]').on('mouseup', function(e) { if (e.which === 1 || e.which === 2) { e.preventDefault(); const ta = e.currentTarget.getAttribute('ta') || 'unknown'; triggerEvent({ event_name: 'click cta', feed_item_target_url: e.currentTarget.href, target_type: ta, feed_item_title: e.currentTarget.text }); // fbq('track', 'ADD TO CART'); gtag('event', 'Click', { event_category: 'CTA', event_label: ta }); VWO.event("cta"); gtag_report_conversion(e, e.which !== 2); } }); $('.r-cta').on('mouseup', function(e) { if (e.which === 1 || e.which === 2) { e.preventDefault(); VWO.event("r-cta"); } }); }); </script> <!-- LinkedIn --> <script type="text/javascript"> _linkedin_partner_id = "3001529"; window._linkedin_data_partner_ids = window._linkedin_data_partner_ids || []; window._linkedin_data_partner_ids.push(_linkedin_partner_id); </script><script type="text/javascript"> (function(l) { if (!l){window.lintrk = function(a,b){window.lintrk.q.push([a,b])}; window.lintrk.q=[]} var s = document.getElementsByTagName("script")[0]; var b = document.createElement("script"); b.type = "text/javascript";b.async = true; b.src = "https://snap.licdn.com/li.lms-analytics/insight.min.js"; s.parentNode.insertBefore(b, s);})(window.lintrk); </script> <noscript> <img height="1" width="1" style="display:none;" alt="" src="https://px.ads.linkedin.com/collect/?pid=3001529&fmt=gif" /> <!-- End LinkedIn --> </noscript> <!-- Google Tag Manager (noscript) --> <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-MLVHQ754" height="0" width="0” style="display:none;visibility:hidden”></iframe></noscript> <!-- End Google Tag Manager (noscript) --><script> $(document).ready(function() { let clicked_cta = false; $('.cta[ta="extension"]').on('mouseup', function(e) { if (e.which === 1 || e.which === 2) { clicked_cta = true; // Directly show the popover when CTA is clicked gtag('event', 'Impression', { event_category: 'CTA', event_label: 'extension-popover' }); setTimeout(() => { $('.cta-popover').css('display', 'flex'); $('body').addClass('no-scroll'); }, 1000); } }); // Optional: Handle window focus if needed $(window).on('focus', function () { if (clicked_cta) { clicked_cta = false; } }); }); </script> <script> document.addEventListener('DOMContentLoaded', () => { // Dismiss button functionality document.querySelectorAll('.dismiss-button').forEach(trigger => { trigger.addEventListener('click', function(){ // Hide popover and remove no-scroll document.querySelector('.cta-popover').style.display = 'none'; document.body.classList.remove('no-scroll'); }); }); // Optional: Close popover when clicking outside the content document.querySelector('.cta-popover').addEventListener('click', function(e) { if (e.target === this) { this.style.display = 'none'; document.body.classList.remove('no-scroll'); } }); }); </script> <script async src="https://unpkg.com/typer-dot-js@0.1.0/typer.js"></script></body></html>