<!DOCTYPE html><html lang="en" xmlns="http://www.w3.org/1999/xhtml" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" style="font-size:16px;"><head></head><head><meta charset="utf-8"/><!--[if !mso]><!--><meta http-equiv="X-UA-Compatible" content="IE=edge"/><!--<![endif]--><meta name="viewport" content="width=device-width,initial-scale=1"/><meta name="x-apple-disable-message-reformatting"/><meta name="format-detection" content="telephone=no,address=no,email=no,date=no,url=no"/><meta name="color-scheme" content="light"/><meta name="supported-color-schemes" content="light"/><title>⚛️ Reddit is fighting about useEffect again, and this time they might be right</title><!--[if mso]><xml><o:OfficeDocumentSettings><o:AllowPNG/><o:PixelsPerInch>96</o:PixelsPerInch></o:OfficeDocumentSettings></xml><![endif]--><style>
:root { color-scheme: light; supported-color-schemes: light; }
body { margin: 0; padding: 0; min-width: 100%!important; -ms-text-size-adjust: 100% !important; -webkit-transform: scale(1) !important; -webkit-text-size-adjust: 100% !important; -webkit-font-smoothing: antialiased !important; }
.body { word-wrap: normal; word-spacing:normal; }
table.mso { width: 100%; border-collapse: collapse; padding: 0; table-layout: fixed; }
img { border: 0; outline: none; }
table { mso-table-lspace: 0px; mso-table-rspace: 0px; }
td, a, span { mso-line-height-rule: exactly; }
#root [x-apple-data-detectors=true],
a[x-apple-data-detectors=true],
#MessageViewBody a { color: inherit !important; text-decoration: inherit !important; font-size: inherit !important; font-family: inherit !important; font-weight: inherit !important; line-height: inherit !important; }
span.MsoHyperlink { color: inherit !important; mso-style-priority: 99 !important; }
span.MsoHyperlinkFollowed { color: inherit !important; mso-style-priority: 99 !important; }
.a { background-color:#FFFFFF; }
.b { background-color:#030712; }
.c { background-color:#ffffff; }
.d { background-color:#EAEBEC; }
.d2 { background-color:#FFFFFF; }
.d3 { background-color:#FFFFFF; }
h1 a { text-decoration:underline;color:#a6825a !important;font-weight:bold; }
h2 a { text-decoration:underline;color:#a6825a !important;font-weight:bold; }
h3 a { text-decoration:underline;color:#a6825a !important;font-weight:bold; }
h4 a { text-decoration:underline;color:#a6825a !important;font-weight:bold; }
h5 a { text-decoration:underline;color:#a6825a !important;font-weight:bold; }
h6 a { text-decoration:underline;color:#a6825a !important;font-weight:bold; }
h1, h1 a, h2, h2 a, h3, h3 a, h4, h4 a, h5, h5 a, h6, h6 a, ul, li, ol, p, p a { margin: 0;padding: 0; }
h1 { font-family:'Trebuchet MS','Lucida Grande',Tahoma,sans-serif;font-weight:400;font-size:28px;color:#2A2A2A;line-height:1.75;padding-bottom:4px;padding-top:16px;mso-margin-top-alt:16px;mso-margin-bottom-alt:4px }
h2 { font-family:'Trebuchet MS','Lucida Grande',Tahoma,sans-serif;font-weight:400;font-size:24px;color:#2A2A2A;line-height:1.5;padding-bottom:4px;padding-top:16px;mso-margin-top-alt:16px;mso-margin-bottom-alt:4px }
h3 { font-family:'Trebuchet MS','Lucida Grande',Tahoma,sans-serif;font-weight:400;font-size:20px;color:#a6825a;line-height:1.25;padding-bottom:4px;padding-top:16px;mso-margin-top-alt:16px;mso-margin-bottom-alt:4px }
h4 { font-family:'Trebuchet MS','Lucida Grande',Tahoma,sans-serif;font-weight:400;font-size:18px;color:#2A2A2A;line-height:1.125;padding-bottom:4px;padding-top:16px;mso-margin-top-alt:16px;mso-margin-bottom-alt:4px }
h5 { font-family:'Trebuchet MS','Lucida Grande',Tahoma,sans-serif;font-weight:400;font-size:16px;color:#2A2A2A;line-height:1;padding-bottom:4px;padding-top:16px;mso-margin-top-alt:16px;mso-margin-bottom-alt:4px }
h6 { font-family:'Trebuchet MS','Lucida Grande',Tahoma,sans-serif;font-weight:400;font-size:14px;color:#2A2A2A;line-height:0.875;padding-bottom:4px;padding-top:16px;mso-margin-top-alt:16px;mso-margin-bottom-alt:4px }
p { font-family:'Helvetica',Arial,sans-serif;font-weight:400;color:#2D2D2D;font-size:16px;line-height:1.5;padding-bottom:12px;padding-top:12px;mso-margin-top-alt:12px;mso-margin-bottom-alt:12px; }
p a, .e a, ul a, li a, .h a, .h2 a, .h3 a { word-break:break-word;color:#a6825a !important;text-decoration:underline;text-decoration-color:#a6825a;font-weight:bold; }
p a span, .e a span, ul a span, li a span { color: inherit }
p .bold { font-weight:bold;color:#2D2D2D; }
p span[style*="font-size"] { line-height: 1.6; }
.f p { font-size:12px;line-height:15px;color:#2D2D2D;padding:0; }
.f p a { color:#2D2D2D !important; }
.g p { font-family:'Helvetica',Arial,sans-serif;font-size:14px;line-height:20px;font-weight:400;margin:0; }
.g p a { text-decoration: underline; }
.i p { font-family:'Helvetica',Arial,sans-serif;line-height:1.5;font-size:15px;color:#2D2D2D; }
.i p a { color:#2D2D2D !important; }
.i2 p { font-family:'Helvetica',Arial,sans-serif;line-height:1.5;font-size:15px;color:#2D2D2D; }
.i2 p a { color:#2D2D2D !important; }
.i3 p { font-family:'Helvetica',Arial,sans-serif;line-height:1.8;font-size:24px;color:#2D2D2D; }
.i3 p a { color:#2D2D2D !important; }
.h p a { color:#0C4A6E !important; }
.h2 p a { color:#0C4A6E !important; }
.h3 p a { color:#0C4A6E !important; }
.f p a, .i p a, .i2 p a, .i3 p a, .h p a, .h2 p a, .h3 p a { text-decoration:underline; }
.j { border-top:4px solid #a6825a; }
.k p { padding-left:15px;padding-bottom:0px;padding-top:6px;mso-margin-top-alt:6px;mso-margin-bottom-alt:0px;mso-margin-left-alt:15px; }
.o { background-color:#FFFFFF;border:1px solid #F1F1F1;border-radius:5px; }
.o p { font-family:'Helvetica',Arial,sans-serif;padding:0px;margin:0px; }
.l p,
.l p a, .l a { font-size:14px;line-height:20px;font-weight: bold;color:#2D2D2D;padding-bottom:6px;mso-margin-bottom-alt:6px;text-decoration:none; }
.m p,
.m p a { font-size:13px;line-height:18px;font-weight:400;color:#2D2D2D;padding-bottom:6px;mso-margin-bottom-alt:6px;text-decoration:none; }
.n p,
.n p a { font-size:12px;line-height:17px;font-weight:400;color:#2D2D2D;padding-bottom:6px;mso-margin-bottom-alt:6px;text-decoration:none; }
.p { background-color:#FFFFFF;max-width:520px;border:1px solid #E1E8ED;border:1px solid rgba(80, 80, 80, 0.3);border-radius:5px; }
.q { font-size:16px;font-family:Helvetica,Roboto,Calibri,sans-serif !important;border:1px solid #e1e8ed;border:1px solid rgba(80, 80, 80, 0.3);border-radius:10px;background-color:#FFFFFF; }
.q p { font-size:16px;font-family:system-ui,Helvetica,Roboto,Calibri,sans-serif !important;color:#222222;padding:4px 0; }
.r { border:1px solid #E1E8ED !important;border-radius:5px; }
.s p { font-size: 14px; line-height: 17px; font-weight: 400; color: #697882; text-decoration: none; }
.t p { font-family:'Helvetica',Arial,sans-serif;font-size:12px;line-height:1.5;font-weight:400;color:#000000;font-style:italic;padding:0px; }
.v { border-radius:10px;border:solid 0px #a6825a;background-color:#a6825a;font-family:'Verdana',Geneva,sans-serif;color:#000000; }
.v a { text-decoration:none;display:block;color:#000000; }
.w p { font-size:12px;line-height:15px;font-weight:400;color:#FFFFFF; }
.w p a { text-decoration: underline !important;color:#FFFFFF !important; }
ul { font-family:'Helvetica',Arial,sans-serif;margin:0px 0px 0px 25px !important;padding:0px !important;color:#2D2D2D;line-height:24px;list-style-type:disc !important;font-size:16px; }
ul ul { list-style-type:circle !important; }
ul ul ul { list-style-type:square !important; }
ul ul ul ul { list-style-type:disc !important; }
ul ul ul ul ul { list-style-type:circle !important; }
ul ul ul ul ul ul { list-style-type:square !important; }
ul ul ul ul ul ul ul { list-style-type:disc !important; }
ul ul ul ul ul ul ul ul { list-style-type:circle !important; }
ul ul ul ul ul ul ul ul ul { list-style-type:square !important; }
ul > li { font-family:'Helvetica',Arial,sans-serif;margin:10px 0px 0px 0px !important;padding: 0px 0px 0px 0px !important; color: #2D2D2D; }
.poll-choices > li { margin: 4px 0px 0px 0px !important; }
ol { font-family:'Helvetica',Arial,sans-serif;margin: 0px 0px 0px 25px !important;padding:0px !important;color:#2D2D2D;line-height:24px;list-style:decimal;font-size:16px; }
ol > li { font-family:'Helvetica',Arial,sans-serif;margin:10px 0px 0px 0px !important;padding: 0px 0px 0px 0px !important; color: #2D2D2D; }
li > p, li p { font-family:'Helvetica',Arial,sans-serif;font-size:16px;font-weight:400;line-height:24px;padding:0px; }
.e h3,
.e p,
.e span { padding-bottom:0px;padding-top:0px;mso-margin-top-alt:0px;mso-margin-bottom-alt:0px; }
.e span,
.e li { font-family:'Helvetica',Arial,sans-serif;font-size:16px;color:#2D2D2D;line-height:24px; }
.rec { font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji" !important; }
.rec__button:hover { background-color: #f9fafb !important; }
.copyright a {color: inherit !important; text-decoration: none !important; font-size: inherit !important; font-family: inherit !important; font-weight: inherit !important; line-height: inherit !important;}
.txt_social p { padding: 0; word-break: break-all; }
.table, .table-c, .table-h { border: 1px solid #C0C0C0; }
.table-c { padding:5px; background-color:#FFFFFF; }
.table-c p { color: #2D2D2D; font-family:'Helvetica',Arial,sans-serif !important;overflow-wrap: break-word; }
.table-h { padding:5px; background-color:#F1F1F1; }
.table-h p { color: #2A2A2A; font-family:'Trebuchet MS','Lucida Grande',Tahoma,sans-serif !important;overflow-wrap: break-word; }
@media only screen and (max-width:667px) {
.aa, .w100pc { width: 100% !important; }
.bb, .bb td { max-width: 100% !important; }
.bb img { max-width: 100% !important; height: auto !important; }
.dd { overflow-wrap: break-word !important; }
.cc { padding: 0px 8px !important; }
.ee { padding-top:10px !important;padding-bottom:10px !important; }
.ff ul, .ff ol { margin: 0px 0px 0px 10px !important;padding: 0px !important; }
.ff li { margin:10px 0px 0px 10px !important; }
.r {height:140px !important;}
.s p { font-size:13px !important;line-height:15px !important; }
.mob-hide {display:none !important;}
.mob-show {display: block !important; width: auto !important; overflow: visible !important; float: none !important; max-height: inherit !important; line-height: inherit !important;}
.mob-stack {width:100% !important;display:block !important;}
.mob-w-full {width:100% !important;}
.mob-block {display:block !important;}
.embed-img {padding:0px 0px 12px 0px !important;}
.socialShare {padding-top:15px !important;}
.rec { padding-left:15px!important;padding-right:15px!important; }
.bodyWrapper { padding:10px 4px 10px 4px !important; }
.social-mobile {float:left !important;margin-top:10px !important;}
}
@media screen and (max-width: 480px) {
u + .a .gg { width: 100% !important; width: 100vw !important; }
.tok-heart { padding-top:75% !important; }
.tok-play { padding-top: 250px !important; }
}
@media screen and (max-width: 320px) {
.tok-heart { padding-top:65% !important; }
}
.u { border: 1px solid #CACACA !important; border-radius: 2px !important; background-color: #ffffff !important; padding: 0px 13px 0px 13px !important; font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif !important;font-size: 12px !important; color: #767676 !important; }
.u a { text-decoration: none; display: block !important; color: #767676 !important; margin: 0px !important; }
.u span, .u img { color: #767676 !important;margin:0px !important; max-height:32px !important;background-color:#ffffff !important; }
</style><!--[if mso]><style type="text/css">
h1, h2, h3, h4, h5, h6 {font-family: Arial, sans-serif !important;}
body, table, td, p, a, span {font-family: Arial, sans-serif !important;}
sup { font-size: 100% !important;vertical-align: .5em !important;mso-text-raise: -1.5% !important;line-height: 0 !important; }
ul { margin-left:0px !important; margin-right:10px !important; margin-top:20px !important; margin-bottom:20px !important; }
ul li { margin-left: 0px !important; mso-special-format: decimal; }
ol { margin-left:0px !important; margin-right:10px !important; margin-top:20px !important; margin-bottom:20px !important; }
ol li { margin-left: 0px !important; mso-special-format: decimal; }
li.listItem { margin-left:15px !important; margin-top:0px !important; }
.paddingDesktop { padding: 10px 0 !important; }
.edm_outlooklist { margin-left: -20px !important; }
.embedImage { display:none !important; }
</style><![endif]--><!-- c88b925b-ad35-4013-ad2e-a50060159075 --><style></style></head><body class="a" style="margin:0px auto;padding:0px;word-wrap:normal;word-spacing:normal;background-color:#FFFFFF;"><div role="article" aria-roledescription="email" aria-label="email_name" lang="en" style="font-size:1rem"><div style="display:none;max-height:0px;overflow:hidden;"> Plus React 19.3 ships, a Safari bug that's been wrong for years gets fixed, and one team actually pulled off sharing logic between web and React Native.  ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ </div><table role="none" width="100%" border="0" cellspacing="0" align="center" cellpadding="0" class="gg"><tr><td align="center" valign="top"><table role="none" width="670" border="0" cellspacing="0" cellpadding="0" class="aa" style="width:670px;table-layout:fixed;"><tr><td class="bodyWrapper" align="center" valign="top" style="padding:10px 5px 10px 5px;"><table role="none" width="100%" border="0" cellspacing="0" cellpadding="0" align="center"><tr><td align="center" valign="top" style="border-width:0px 0px 0px 0px;border-style: solid; border-color: #FFFFFF;border-radius:10px 10px 0px 0px;background-color:#ffffff;" class="c"><table role="none" width="100%" border="0" cellspacing="0" cellpadding="0" align="center"><tr id="header"><td style="padding:15px 15px 0px 15px;"><div style="padding-top:0px;padding-right:0px;padding-bottom:20px;padding-left:0px;"><table role="none" width="100%" border="0" cellspacing="0" cellpadding="0" align="center"><tr><td class="f" align="right" valign="top"><p> September 10, 2026 | <a data-read-online-tooltip="true" href="https://link.mail.beehiiv.com/v2/c/35483610759f4a1529d54301b751041946abad041bff150cd9ea487d7afbb6cbf78ca6de704bb3e33927ee7fb766c313985f97ee2d99dc18ae22f139c3b933b96626dc1a3fda4a5931f60e72c1f96cbcfb7e15c6738b1fc9b32167d3f79f19e4f00215f9b35efdb4482a3467ecd246cfe9a629a22bd12bbc51e0dccaf26fa456d9a64a9b50ffb8bbb079c857440fb4a08e1c1dc6f551788f1c52aa50afdf87a2208b64f1b1b6295bdc06f6af18c8fa69/4b1d5952a7b8e976">Read online</a></p></td></tr><tr><td style="line-height:0;"><div data-open-tracking="true"><img src="https://link.mail.beehiiv.com/v2/o/97e5f5672ea7a5c84b2028a098cda718ec0d9bd1f0b5098ee507581d97ada9833cd34ea4c782d412f2dbec02f3ddad83e6a1cb5ad09925024302f2dfec1786be3af6a60d9fb3cf158f68e3d3e3c80ddec6c870e04d89542df92af181500e309a8bd87cb18eb8438ac8b810a18d72b585604a22a521d3a05a2e877834b9bc2b5ac2b98f9fa8e8d047e7c874510e0e5919b7487e74233eed180052403056ade126379d88dcf3a5de9c01eb9a91247ae5bc121784c3099ff176ad3c8a725a3acd42a300b826207b84b75187ab5b6131571f1c33584124080ed16904e96005162e4116794958ac9bb6a805ea8167d5404919e31f4798f409cbc565f96f37d2739fe1686c8cb53b648f7002aae75707ea5e8a48aafe2888c1136e2c8d50a4bb3d7646f167a4dd8a49a65397c82ab3f905b8ca21dfdddbc307199e9d72b543e13003cf7a4899f7fc1a4230aa1bc81df866e9a2cb5431821f934e67aabe448cc712517d521a5f1da5ba71626f4017c4d825cb26/bb2c9d4fddec4266.gif" alt="" width="1" height="1" style="display:block;border:0;outline:0;"></div></td></tr></table></div></td></tr><tr id="content-blocks"><td class="email-card-body" align="center" valign="top" style="padding-bottom:15px;"><table role="none" width="100%" border="0" cellspacing="0" cellpadding="0" align="center"><tr><td class="dd" align="left" style="padding:0px 15px;text-align:left;word-break:break-word;"><p style="mso-line-height-alt:150.0%;"> Hey guys, </p></td></tr><tr><td class="dd" align="left" style="padding:0px 15px;text-align:left;word-break:break-word;"><p style="mso-line-height-alt:150.0%;"> Welcome to another edition of Import React by Cosden Solutions! </p></td></tr><tr><td class="dd" align="left" style="padding:0px 15px;text-align:left;word-break:break-word;"><p style="mso-line-height-alt:150.0%;"> React 19.3 shipped this week. And a pretty reasonable question about useEffect turned into a 116-comment fight over whether the hook is actually broken. Somebody finally explained a Safari bug in await fetch() that's been quietly wrong for years. And right at the bottom, two guys got arrested for the npm worm that's been eating React-adjacent packages all year. </p></td></tr><tr><td class="dd" align="left" style="padding:0px 15px;text-align:left;word-break:break-word;"><p style="mso-line-height-alt:150.0%;"> Let's get into it. </p></td></tr><tr><td id="the-latest-in-react" class="dd" align="left" valign="top" style="color:#a6825a;font-weight:400;padding:0px 15px;text-align:left;"><h3 style="color:#a6825a;font-weight:400;mso-line-height-alt:125.0%;">⚡️ The Latest In React</h3></td></tr><tr><td class="dd" align="left" style="padding:0px 15px;text-align:left;word-break:break-word;"><p style="mso-line-height-alt:150.0%;"> ✅ <b><a class="link" href="https://link.mail.beehiiv.com/v2/c/92d92b088c390c24334af466d8f6124cdd09f28bcbaaff9b0eb43d6b9a97bb032144de7e4716051104dcb432983ce3e0fd90e01659ec671a43d8adda4f5b73c5abc521335cf4dad3d613ac7eeb1607e48ce10c5660b83c21d0e5c7d52c96997c51b95a34c9a590fbd96da0c10bfae533a7c80047306fb0f0736d0150fa2eb216bb3a8946755f9d4c6cd548084f1fa9112a67cedc19c8dcc34ec6952dc674b7879156681a5e56bfe1404562f72645da9e/53a2351076d593d6" target="_blank" rel="noopener noreferrer nofollow"><span>Reaching Developers Doesn't Require Tracking Them</span></a></b><br>ClickRelay is a CPC ad network built for dev tool marketers who are tired of paying for impressions they can't verify. No behavioral targeting, no bot-inflated click counts, every click checked by a third-party vendor before it's billed. If you're trying to get in front of an audience like this one, <a class="link" href="https://link.mail.beehiiv.com/v2/c/42bbfd42565aa6fed2e463cff092a3af3a5b28501f1c38a01f23f35023f890cd2c05f022e87a34c348d03a524cf6136a2e7b36e838bb50c701ac3e619dfe0d38231198c24e84973f93935d0394c7d6d5b06319f344c0913bc930e14767b8a65950a0faf72ef28f7281857d02aec8283adb01223765831722eef58f22aeb917c20f3c6f3cdb5cde00fc1183efe4e48fe3f28eb265c05ac9943d11689e391231e2e5811eb99a108ba70d19a1de1e6bf3c3/19e828f3ee392866" target="_blank" rel="noopener noreferrer nofollow"><span>here's how a campaign runs</span></a>. <i>[ad]</i></p></td></tr><tr><td class="dd" align="left" style="padding:0px 15px;text-align:left;word-break:break-word;"><p style="mso-line-height-alt:150.0%;"> 💬 <b><a class="link" href="https://link.mail.beehiiv.com/v2/c/f7abe32c4f3d09f620ceeafc40300778c753277aa0edc9d4ee8cb8ad259930118622d147856a6444b855b5223f6bdd4abd3e45e69ad866be691c9e696cedd18e4a6531f6c5e1b579b603033a9e655002bf431e9b8697cae0df9904b36584dcf3d04d99c7a80b13e211b53ebe4e1f1d2b792e124b7e818f78a50ef28902df582dd4475d1218f4f62843c59002dbe51c69c3b1cc38b1c787cfc51c7acdebfe6048a61eff257c063ece4944506c8aa00d3e/efef92e64adf4e95" target="_blank" rel="noopener noreferrer nofollow"><span>Is useEffect Actually Broken, Or Do We Just Suck At Using It</span></a></b><br>A dev posted an honest question on r/reactjs asking why everyone's suddenly convinced useEffect is cursed, and 116 comments later nobody's really settled it. Best line, from the top reply: <b>"if a mistake is easy to make by an inexperienced developer and somewhat hard to find by an experienced one, the library has a flaw."</b> Someone else walks through exactly how the dependency array turns into a stale-closure trap, and a chunk of the thread just devolves into a Svelte vs Vue vs React pile-on. Worth the read imo. </p></td></tr><tr><td class="dd" align="left" style="padding:0px 15px;text-align:left;word-break:break-word;"><p style="mso-line-height-alt:150.0%;"> ⚛️ <b><a class="link" href="https://link.mail.beehiiv.com/v2/c/52f57f78c6eeee265a4fd92c91911f46a70e95b3ddb6bf1f3c3e8dca691942e6e9e11d901bcb622aead0eddbdecd56efe3bf31cff582c883e7d10b721fc527efac157d8bd0616f03a14c312d679d35013ec298943a72a59489ab99199732cdeea39a3386a895d05b01c042f14b85fad5d480ff7a4517a712b604de4ba93d44aee7f3a8e6820aacdf638b2f7e6d6fddc83b5f0f5328b48d48bff8b98af07cc600d4b07958cf642af976424ed83ee98564/cb91dfb4ec236095" target="_blank" rel="noopener noreferrer nofollow"><span>React 19.3 Is Out, And View Transitions Finally Stuck The Landing</span></a></b><br><b>View Transitions and Fragment Refs are both stable now</b>, plus a first-class <code>use(browser())</code> API to opt a subtree out of SSR without the old <code>typeof window</code> dance. The blog post ships with interactive examples built right in, which is the fastest way to actually feel what Fragment Refs unlocks. </p></td></tr><tr><td class="dd" align="left" style="padding:0px 15px;text-align:left;word-break:break-word;"><p style="mso-line-height-alt:150.0%;"> 🔍 <b><a class="link" href="https://link.mail.beehiiv.com/v2/c/8032a3843ec65036fed82e24f413078e6d096b9e281a04dbbe232064d2141aeb6f1abc7ebdb76dd97f318aa18f7599942ab07793e59c91b596158fed419db6b0bf9cc2b6e5e01220c6720b4866ca019a4cb6c9f8cc8d888fca63014612b4495b1c04e8aa4a3991460ac21ac35ceb6c9302744e202677e033c9c605bf2ad8f43a4002006e068880aff865cb0964de91363cdc46e933298e6a7863c657ef7630c7ee392e5f4c9226fb4d24f08025813c86/18df1206d6c5aa6e" target="_blank" rel="noopener noreferrer nofollow"><span>Why Await Fetch() Has Been Quietly Wrong In Safari For Years</span></a></b><br>Safari's module loader was built on a spec proposal that got abandoned years ago, and bolting top-level await onto it caused a specific class of "cannot access before initialization" errors nobody could fully explain. <b>Safari 27 finally fixes it properly, but it took a ground-up rewrite of the loader to get there.</b> Good one if you've ever hit that error and just shrugged. </p></td></tr><tr><td class="dd" align="left" style="padding:0px 15px;text-align:left;word-break:break-word;"><p style="mso-line-height-alt:150.0%;"> 🧩 <b><a class="link" href="https://link.mail.beehiiv.com/v2/c/ca0453e5147d607a1bd0d798bfaae2564d05fc8b759245cf90f559e88b6397d842358a12e13ae85f3f06c1a2bb91a3d86cfa3a2da0db5fc14a0c32085a93a5e1426b81d5c69a4e4a0259794bbeaef43d7fa17a4c7efb3a98a1745c64c85a89816b5f858ae7c8615ed24020874d74104d2205b34aa4464cfc212db798b96f52f43c16918014825741d270324c80195625d3eed0841e154cbe06fa176f1d64336a66f7bc891afc8b2939173527b291635e/5a9c7b83ce1388a3" target="_blank" rel="noopener noreferrer nofollow"><span>One Team Actually Pulled Off Sharing Logic Between Web And React Native</span></a></b><br>A dev walks through splitting an app into a platform-agnostic core (no DOM, no browser APIs, just domain logic and one shared data layer) with thin UI shells on top, then reusing that same core across web and React Native. <b>Two years later, the core is still the part that ages best.</b> The comments are worth it too, people arguing pure packages vs hexagonal vs just eating some duplication and moving on. </p></td></tr><tr><td class="dd" align="left" style="padding:0px 15px;text-align:left;word-break:break-word;"><p style="mso-line-height-alt:150.0%;"> ✨ <b><a class="link" href="https://link.mail.beehiiv.com/v2/c/5e21b929bbc6a8a0ebc85e60a188745784de8f8b52751bab9f769ff38e48d772068b62ea2c27f0f46fc241a6b893838398b90d544032dde29063bedde0c713cc6d15bdd3dd3f7402495315311f960a975bf0ce200815c6b8980941f5b265ac3e3b9cad9458b6306afda7d6ee6faedca7a67aed7b35361db5b2b0599317aab7c007fbcce3bbc38e1bc5fd581b47ce7a437ba8b98eda76ef68d6f7ff415d79c948d9ad25f388bf084e4084f3cec2ca5603/d90a1f7743d17613" target="_blank" rel="noopener noreferrer nofollow"><span>This Syntax Highlighter Isn't Using A Parser At All</span></a></b><br>Shu Ding built a 27.5KB syntax highlighter that <b>skips language grammars entirely and just uses a small model trained to recognize code.</b> Paste something ugly into it and watch it work in real time. It's the kind of thing you open "just to check" and lose ten minutes to. </p></td></tr><tr><td align="center" valign="top" style="font-size:0px;line-height:0px;padding:30px 0px 30px;" class="dd"><table class="j" role="none" width="80%" border="0" cellspacing="0" cellpadding="0" align="center"><tr><td> </td></tr></table></td></tr><tr><td class="dd" align="left" style="padding:0px 15px;text-align:left;word-break:break-word;"><p style="mso-line-height-alt:150.0%;"><b>Quick Links</b></p></td></tr><tr><td style="padding-bottom:12px;padding-left:37px;padding-right:27px;padding-top:12px;" class="ee"><div style="margin-left:0px;" class="edm_outlooklist"><ul style="font-weight:400;list-style-type:disc;margin-bottom:12px !important;margin-top:12px !important;padding:0px 0px 0px 0px;"><li class="listItem ultext"><p style="mso-line-height-alt:150.0%;padding:0px;text-align:left;word-break:break-word;"><b><a class="link" href="https://link.mail.beehiiv.com/v2/c/5bcceabf0fcb6c356a5c1058a59c6f2a274cf2ab7205b4f290fa33168c8e9a76830f8020f04287d36548ca0f766b963b7e7dfee71fedb95c7750dc9345f3cfce78f723221ade2e4a92f6e41036698953eb9d4db0b1fca27c10f3bee9dc0da10e5b5a617c0c123e59d184a3c0fbb1d2823ec3b802b8b98fc3e7e7ae99951d3fddb62e534fb178ef6bf3c8ab978f656ee600d1aec3992fcfb93cb51deaf5747d4682a67f5589214c3b50dfb46619fd61a2/2043f663ac84060c" target="_blank" rel="noopener noreferrer nofollow"><span>Vitest 5.0</span></a></b> — Up to 53% faster on dependency-heavy apps, a step-through Trace View for Browser Mode, and a new <code>vitest doctor</code> command that tells you what's actually slowing your suite down. </p></li><li class="listItem ultext"><p style="mso-line-height-alt:150.0%;padding:0px;text-align:left;word-break:break-word;"><b><a class="link" href="https://link.mail.beehiiv.com/v2/c/dc580a895915a3e49049f9d56e38dd6060000d942d03500052fa4adb661cd445be6fab2d0aebad3cb14ce3129c24eacf7720d87d13c87897306302b8d314fda56d70d48b23fc98ff0dac2c5603b595d99ea60c22a095fe28dbdca1241847d585f5a7bd36b0085a136251a6a2f04f52f2d8327e7c53fbd8428e2b9b4e86fbdbc6c6017bab0cee681b5a83fea10d5a1043b9b7174e362a78983cec7b7c41330437644a3fe581bf9a7aba8b14057c3e942a/49840bf393ad5e6b" target="_blank" rel="noopener noreferrer nofollow"><span>React DevTools 8.0's Changelog Just Merged</span></a></b> — Suspense tab enabled, a new React Element panel, and the old Timeline profiler is gone in favor of Performance tracks. Not on npm yet, but the changelog's already there if you want a preview. </p></li><li class="listItem ultext"><p style="mso-line-height-alt:150.0%;padding:0px;text-align:left;word-break:break-word;"><b><a class="link" href="https://link.mail.beehiiv.com/v2/c/e54cfeeed91a70cb7149f78aa11097e63dc07aa8197c4f249df5d3ca84cbded9d65b123a0ea07cd4e617d1aa7ceae05c0b22636008cb4f14c3a6caf676385bdd2c02f7e5d2a6b1e111e6c47ce1cbb6e4e71ba2d915cdb7e22b537f366e6b9ab0a7ba8ced40069de7cfeee4317a905123c1ccd62ee4e7a5947940cebef92e9003cbaae895fee24de04940bddad05f26368ef6f60a8a1bc337c8a8ae9e695c58c007f9ef53cf65dd3952581f05fc455b6d/b6dc0b4c175746ec" target="_blank" rel="noopener noreferrer nofollow"><span>TanStack Start Gets A First-Class Vercel Deploy Guide</span></a></b> — Part of Tanner and Vercel's new partnership, confirmed on X this week. </p></li><li class="listItem ultext"><p style="mso-line-height-alt:150.0%;padding:0px;text-align:left;word-break:break-word;"><b><a class="link" href="https://link.mail.beehiiv.com/v2/c/8a00f82a8971763515b272411c91b1b3d2affd192a07d341c6fbdb019e01206a53ce021ae2f6c2b4c1ee575eab75cfd00e16d402d600e6e9ae25bf7d75182bca38ce8579a3ccb482d2859354826d349eb2503fe884720625586914e99b81be15c9328e7011cb55da0cd146ae9be09d18968f91fc8c9b39a019ac2ef49ade39ab883a828710f871a92f4bcf11b38bfc374badea1f7f48d701cf813986b7017f95cee90d4d8478f1201db9a6c52067228f/74e833382e6d5bd7" target="_blank" rel="noopener noreferrer nofollow"><span>Shopify Pushed Mobile E2E Test Stability To 98%</span></a></b> — By ditching testIDs for computer vision. The writeup covers what broke on the way there. </p></li><li class="listItem ultext"><p style="mso-line-height-alt:150.0%;padding:0px;text-align:left;word-break:break-word;"><b><a class="link" href="https://link.mail.beehiiv.com/v2/c/b48dda812dbda960b7cb4375af7b5ffb963730812f986bd4665a6c8c794bb423df56f5eeb932ab65d8dba6eddacb17887a9672d06b8ecfcb7f985960515cb8a87bebcb38844589890fc4fe34939c130e1814c3a69ac3095eaa102d025f4a103a7752a25b1908b8e13c4d8b1ff20fde432d36f8dc31df28c2ddf5c8eb5b544dc86b9d427e5434ecb04cb408c83767cdd927dd856436529f59249db333b9b1ebed375e9191a0072674717ba8f426cb0005/b51b5d8d114c2dac" target="_blank" rel="noopener noreferrer nofollow"><span>10 Anti-"Slop" Moves For Frontend Projects</span></a></b> — Concrete checks (OpenAPI codegen, layer boundaries, mutation testing) that cut down how much AI-generated code a human actually has to review line by line. </p></li><li class="listItem ultext"><p style="mso-line-height-alt:150.0%;padding:0px;text-align:left;word-break:break-word;"><b><a class="link" href="https://link.mail.beehiiv.com/v2/c/b201bd7c26b4049e950681c4344028ae82ff3c984816105614f6c07ff0234fba0c4d2a8e9c51aadbbf842f940bc58e595684e5656ddfe4d2401cf1fdf8b71e00490e250efade3b527c20e9b9cc22506ddbbb5c2b7bc0b6a859cf46831a02d5174a2edb5f4cf518a47294c497fe9a918fcd493e28d60308b79deaa86d578c573a3ba26d607d5ceb926c4137755324bf34d3bc23c44dca6011b8c586dd0bcc4f6400fc2545e20d18798cc8df2b884cdf98/9e7ec74b387a2120" target="_blank" rel="noopener noreferrer nofollow"><span>The Browser's Main Thread Is Expensive</span></a></b> — A genuinely useful, demo-heavy look at splitting, batching, and prioritizing work so it's not all fighting for the same thread. </p></li><li class="listItem ultext"><p style="mso-line-height-alt:150.0%;padding:0px;text-align:left;word-break:break-word;"><b><a class="link" href="https://link.mail.beehiiv.com/v2/c/f737eb76b43d3c67b602a1bf1c9836508dc67a1dee362ffeffa1188f5eca7ce861b6251de6cf34a99c71ee4391506afe2955e0f940049814792f92039271e698d1dfaec862c2f66241de6e8bba4269b379cc9ea06d997939a016721ba8199cfeb1d4359686ac38409d9d65b6aeed225b001cd531c1ab65c783dbdb00d7b7eb9d8ceddb4e81af29dfe999615ad1c490c680ba72e10c24f61aaf74d966f710d46cfdf459c54bd899ca09e5c12ea682ae24/d0524e492cc94464" target="_blank" rel="noopener noreferrer nofollow"><span>"Maybe We Shouldn't Be Reviewing All This Code"</span></a></b> — Thoughtworks' CTO argues code review is trying to do three jobs at once (bug-catching, teaching, architecture) and doing none of them well now that AI writes most of the diff. Her fix: move the teaching and architecture parts earlier, save review for the genuinely risky changes. </p></li><li class="listItem ultext"><p style="mso-line-height-alt:150.0%;padding:0px;text-align:left;word-break:break-word;"><b><a class="link" href="https://link.mail.beehiiv.com/v2/c/088e18f91c3c18e80237317dc0297b957d3d6b4c747992cfabd4c0a299632e535462c8a1104168f9e1c2770e6e993c0b0cfc22f797cfa3e7dfe8dc2922c362249a5e6817643bf13a43cf58c4040177eac3ac1408022af132256b5c922fd534de1581f5dc77bfec7751f96aa888171d5ff48d87c22be960635f904d4818338c55e3db3ed61bd60238519a4e142a3cf2cfe335c770e280dc01e38a08fd7acad5a3bc57411f7d6e7b4388f3d68f7c733832/2138d9a4e6206cd3" target="_blank" rel="noopener noreferrer nofollow"><span>Native HTML And CSS Features That Replaced JavaScript</span></a></b> — A running list of the accordions, dialogs, and popovers you probably don't need a library for anymore. </p></li><li class="listItem ultext"><p style="mso-line-height-alt:150.0%;padding:0px;text-align:left;word-break:break-word;"><b><a class="link" href="https://link.mail.beehiiv.com/v2/c/4e2f19b90854800f85282f0c51e6af70e293e24224b2155d1fee8a1ebf1dff53be9aceddfb6e56422fb53daedc415dc23046358b67abd8b0bffc403dbdc500a86d506d75c3f1ab8d90516058d4d9a51e59939760eb0da1ea4dc7d90308e842ac712482e7531ed2e8c1ed84972563336d82a8ce199fed9443f51bc109b924a9df78011d15760776b72b5aa4425326da8180c2c84fb02347e360f693f20eb63643667f2bb5399d853635a1b33b02263c42/45b1dd3c097cf0c2" target="_blank" rel="noopener noreferrer nofollow"><span>An Anthropic Engineer Replaced Next.js With A Framework Claude Built In An Afternoon</span></a></b> — Real before/after numbers, cost breakdown, and the browser quirks it surfaced. </p></li></ul></div></td></tr><tr><td align="center" valign="top" style="font-size:0px;line-height:0px;padding:30px 0px 30px;" class="dd"><table class="j" role="none" width="80%" border="0" cellspacing="0" cellpadding="0" align="center"><tr><td> </td></tr></table></td></tr><tr><td id="ai-general-programming" class="dd" align="left" valign="top" style="color:#a6825a;font-weight:400;padding:0px 15px;text-align:left;"><h3 style="color:#a6825a;font-weight:400;mso-line-height-alt:125.0%;">🧠 AI & General Programming</h3></td></tr><tr><td class="dd" align="left" style="padding:0px 15px;text-align:left;word-break:break-word;"><p style="mso-line-height-alt:150.0%;"> 🚨 <b><a class="link" href="https://link.mail.beehiiv.com/v2/c/3ab4030b5739ce595afb2fc18fe6b2bdf122118f6b5d599542ed1ea2b60fae85214cf63f22e85e1cae2ce957e3e82711cc4114cad7fa69fb049d6a6c4c11bff551c2e9c45f82e3711c67724bf80537e4eb2b1a3336449054ac63baf34a3118edb46320d52c29bafe2c31a6b0c85e715589bb9845d91f9106a5d980919ef7d4f8674cf993262d675cf88964a5c398ea9ed9c2610fa9be9df42e18af2f554e1f7ec554f98295d6d7168d620e569c71e183/04337c90ea944b16" target="_blank" rel="noopener noreferrer nofollow"><span>Two Men Arrested Over The npm Worm That's Been Eating Your Dependencies</span></a></b><br>The attacks behind the Mini Shai-Hulud worm wave, the one that's been picking off React-adjacent packages for months, finally led somewhere. <b>If you've been ignoring your lockfile, this is your reminder.</b></p></td></tr><tr><td class="dd" align="left" style="padding:0px 15px;text-align:left;word-break:break-word;"><p style="mso-line-height-alt:150.0%;"> 🤖 <b><a class="link" href="https://link.mail.beehiiv.com/v2/c/d46da81ad4235f59deaad8bf39fb1f0fa49723caf6c4eb75296714233e45507c941266ecee9fbed5c824ea3769aa334e6b6c7ad588f5411b010290dbc79d4f40c5de3c66ac139913d7a320899d86a037676ffa9811e44bfb9bd039f4a67c17d86160366a9292e257aabd31c6f0ade6b17cf8fcecc9c38089ccacfa45ea50452d449683d351448a9cd25920e7837e0fac2f8f27a41b82d8f1a79dd415490cd23e1abcc7a72cc329f29db7862778407ef5/77e9d4cd09a5d779" target="_blank" rel="noopener noreferrer nofollow"><span>GPT-6 Astra Is Here, And It's Still Not Clearly Better At Coding</span></a></b><br>OpenAI's calling it their most aligned model yet, and it's genuinely stronger on interactive benchmarks. <b>Anecdotally though, it's not clearly better at coding than what you're probably already using.</b></p></td></tr><tr><td class="dd" align="left" style="padding:0px 15px;text-align:left;word-break:break-word;"><p style="mso-line-height-alt:150.0%;"> 🕰️ <b><a class="link" href="https://link.mail.beehiiv.com/v2/c/f03fcc3553d3b6cd0eefd191aa7c2fe8b7bca1e73e53738c97fac980559278f54b01f92e185d9b194cadd37a7000d03487ad272a67a90c64bbbc52f82407331eec46b08bd246fa36f4b4c8e4298854832af551190f6b5aeff3fc7be550cd92943ad4b9c296aa3e2b19c7f0648b8c0a8334dd0427d2d09528c7f12bd56a452506f5f41adb39339e495138a6fa3f3856c9aa68d453afb86035e404ad706c5fa4f5312295ad30520915f58377d5491788cf/c85f6a85f7965a95" target="_blank" rel="noopener noreferrer nofollow"><span>jQuery's $() Just Turned 20</span></a></b><br>InfoQ's retrospective on how it got an entire generation of developers through the browser wars. A nice five-minute read. </p></td></tr><tr><td class="dd" align="left" style="padding:0px 15px;text-align:left;word-break:break-word;"><p style="mso-line-height-alt:150.0%;"> 🎬 <b><a class="link" href="https://link.mail.beehiiv.com/v2/c/ec25c8873c7baf4171b1c71efa0edbe1fdcc7b4303b62db9eab79df51e6e79d8385501addf3d19a1799d5df69ce28cfa5e80257dca48d0eea80426a43f00a840509221c967f6e2de855b3d81f66c9ac4ea35443f02bea385f8918213e39ab33ee9ed935488208ae2cb5d3d39ace03c17e31e21ec1cc88ca8b84306110633c8b4dbef40a785fc64acb99d3cd45143b351be804e2a82def9364250b84590f4ae64822ac9cc7906245fbefeb79e4107f648/119112b44fec867d" target="_blank" rel="noopener noreferrer nofollow"><span>The Story Of VS Code</span></a></b><br>An official, movie-length documentary on VS Code's path from a Swiss skunkworks project to the default editor. Save it for a flight. </p></td></tr><tr><td class="dd" align="left" style="padding:0px 15px;text-align:left;word-break:break-word;"><p style="mso-line-height-alt:150.0%;"> 🔒 <b><a class="link" href="https://link.mail.beehiiv.com/v2/c/714d6223051e62a6128fe8e647525aee302b0141046d50a92f937f0f647a30a0b03837129095f777c435cde20ae89a47cad92e2b5606e1815bae6f2fd42f966fb2ac9adc2ebba4b98fec03b09e8dc5def78c8e4592b2d06de7967bcee3cfffad95ef337c0e381bf0ecb6830382073c6bcf9b41d8eb10faa819166626ca2052d6b8558eb57375e07d8f10af22bd4b36808751519b1e02182dbf5920c078c5b9da1e3325b8b128c5c58aef8747da9b0b6f/afd47f733af6510d" target="_blank" rel="noopener noreferrer nofollow"><span>Drydock Diffs Your Tarball Before You Publish It</span></a></b><br>Checks what you're about to <code>npm publish</code> against the last published version, so you catch anything that snuck in. <b>Feels like exactly the tool this week's worm story makes you want.</b></p></td></tr><tr><td class="dd" align="left" style="padding:0px 15px;text-align:left;word-break:break-word;"><p style="mso-line-height-alt:150.0%;"> ⭐ <b><a class="link" href="https://link.mail.beehiiv.com/v2/c/ca439479a888743c075f1a22e0768f5d1866a4a915c1e3d4cc01f60727aa05435bf8c0ca6c658cd21fd573d4da6b731f23162ceee213eb33a953c0ed9f0fc0427b17448c14a8a401daa4ad4204266ee61454a823761bbe261d1d9dbb22745d9be95815cf135f434db013b7097f3915b4ae1bef085cd8637e6e167a3b492241a47365c538acd40e12a835ad41d941349554c8960924698de5fa40defcd571c99dc3064da32be669964d83a453e237ee21/84618af8e58e319b" target="_blank" rel="noopener noreferrer nofollow"><span>Charting A Repo's Star History No Longer Means Scraping It</span></a></b><br>GitHub shipped a real API for it. Plug in any repo and watch the line move. </p></td></tr><tr><td class="dd" align="left" style="padding:0px 15px;text-align:left;word-break:break-word;"><p style="mso-line-height-alt:150.0%;"> 📦 Also shipped: <a class="link" href="https://link.mail.beehiiv.com/v2/c/01f70c626df6fd6e8d8ac42abb551eeabb328e9f0e30b3f7011db1b3818be6678e0754c6cce6ddf5de0c8bf662fb345a4924a0774555ce3951ce6923106d9eb8d013465d07c4f10011471b304777f3ed93d4bd2178cbff7d667e42378a9e182a04fb73ea1d5fc2684ed234b29e7642b5034dcfc1045fb5468d6bc6e43a177ab170be792614e7397caf5d4f5c70335900679853685f94733121d4fbb2a7e4c3cbc357773e740cc3c0d354ceb872be0a88/96087443e86d5bca" target="_blank" rel="noopener noreferrer nofollow"><span>cn</span></a>, shadcn's 30x-faster tailwind-merge replacement · <a class="link" href="https://link.mail.beehiiv.com/v2/c/ca25ac6a0338763b95e34bde564768abf509f55a591970acdaf18875e86a8df034e2f43d4676f93cc42b6b240f496591609613e22ee37ad0b6f3c8693280756729ec91bb39be0a522f7d50ae870eb4644aac44dbb835f64e09d363d4ca614f0b354f4df65211cdc33d94f8bcd61d7c91042123bb0ebd8f9d68d2168c6b1ad9914194e16799c9cbdfcfd74605661f5c1df1cdc476ee170c233c469dc1a125144fd159b8aac7fd934c70e3ba27fd67f437/b6ad49d071d937e1" target="_blank" rel="noopener noreferrer nofollow"><span>React Native 0.88 RC</span></a> · <a class="link" href="https://link.mail.beehiiv.com/v2/c/11a3a393d2b119537e58d02de63b8578536736eb926c0bc1dd6951e9737c6cfe1a985f8fed80af049314b2979c48d99d5aba86246c7dab1456bc1aac428c6c1853a730fcf273feb2f9dcee4436924fcf87f816bb9a2e70b836991e02f5a586b092715cff9408de34f3da2841e3869e472ab51814cc7e2caabb3ac123ccdf63992dc60d16856911276d4b22f3b358a8df4870c043f8364a1a0c5192efb8ff4630f775303e5117809ae4361a2dd6ada6f8/831f983495a54d41" target="_blank" rel="noopener noreferrer nofollow"><span>Zod 4.5</span></a>, with <code>z.compile()</code> and 9x less memory · <a class="link" href="https://link.mail.beehiiv.com/v2/c/b8713015ab3906cb58a6d576f1a8ece725f2f34089c1fbc1debd1d33e2441298b87902ff765961c39ae5cd8208dcbb35fb4daacb73301f505e367555957a0aafe0e18164c0ebda8decfd16156409554ef26c25d842036d9c566bdf1ebbdc6a245b59e04fdfb4b1bf459bc396b4083774fa3c734c203417537c1392ab6c1a463f44a60cb255163a46b8abf4aa6fa23cdf7683d5242528130988f808e45e49c728ff15bcb255b47e1c25b87283d72647d6/716e78585a1a08de" target="_blank" rel="noopener noreferrer nofollow"><span>Mantine 9.6</span></a>, four new chart types. </p></td></tr><tr><td align="center" valign="top" style="font-size:0px;line-height:0px;padding:30px 0px 30px;" class="dd"><table class="j" role="none" width="80%" border="0" cellspacing="0" cellpadding="0" align="center"><tr><td> </td></tr></table></td></tr><tr><td class="dd" align="left" style="padding:0px 15px;text-align:left;word-break:break-word;"><p style="mso-line-height-alt:150.0%;"> See you next week, </p></td></tr><tr><td class="dd" align="left" style="padding:0px 15px;text-align:left;word-break:break-word;"><p style="mso-line-height-alt:150.0%;"> Darius </p></td></tr></table></td></tr></table></td></tr><tr><td align="center" valign="top"><table role="none" width="100%" border="0" cellspacing="0" cellpadding="0" align="center"><tr><td><tr><td class="b" align="center" valign="top" bgcolor="#030712" style="padding:0px 0px 0px 0px;border-style:solid;border-width: 0px 0px 0px 0px;border-color: #FFFFFF;border-bottom-left-radius:10px;border-bottom-right-radius:10px;"><table role="none" width="100%" border="0" cellspacing="0" cellpadding="0" align="center"><tr><td align="center" valign="top" bgcolor="#a6825a" style="padding:12px"><table role="none" width="100%" border="0" cellspacing="0" cellpadding="0" align="center"><tr><td><span style="padding-left:1px;"></span></td><td align="center" valign="middle" width="75" style="width:75px;"><a href="https://link.mail.beehiiv.com/v2/c/beceb7e0426819c77f6d2296b2078605b28dc732cff36b13cafee9fd6f8cd10f78d171c4fb352bb45429deab6ca451a0baec0caeba117039c136303fcb342ce7857e7bb52eb56e3daf9756b9c582c761efcfc3f8145387b6d8d1c73e3a38e4a838f764bba7a9f079a2d78fc1e02303f9913dc4c07298809e58e4fe9e2face1e71ce45d1dc90a5ddf496b3a7c798b2dcb28c86ff877dce60338030a922277378cc0744abdd8cb76c915a279a0d965344e/9ecff10f97196f5a" style="text-decoration:none;"><img width="22" height="16" alt="yt" border="0" style="display:block;max-width:22px;color:Dark" src="https://media.beehiiv.com/cdn-cgi/image/fit=scale-down,format=auto,onerror=redirect,quality=80/static_assets/youtube_dark.png"/></a></td><td><span style="padding-left:1px;"></span></td></tr></table></td></tr><tr><td height="10" style="line-height:1px;font-size:1px;height:10px;"> </td></tr><tr><td class="w" align="center" valign="top" style="padding:15px 15px 15px 15px;"><table role="none" width="100%" border="0" cellspacing="0" cellpadding="0" align="center"><tr><td align="center" valign="top"><p style="font-family:'Verdana',Geneva,sans-serif;color:#FFFFFF!important;"> Update your email preferences or unsubscribe <a class="link" href="https://link.mail.beehiiv.com/v2/c/f346e98c200be295126a6f4f9c33001f88843313a00b3575f60b7f804afd9fb54098322bf04341bc37d17577f01d0a86431c4461373f5d252687a68ecbda14172fc2d14338675494316584e6989e36fa5a9d5a69955f0578333b01d515c03f2da3a249ae93cdfabb6c9791c1ec1d0e0b6e5f0bb945a5433f7747f2e3c6326490b0808e050091e1f135eb0a496272d22fce75c82f8d3755ca67ceaefc39ea68f35d510e7d13834441c9850164986ca6d3/587441ed8dd5f638" style="text-decoration:underline;text-decoration-color:#FFFFFF!important;color:#FFFFFF!important;"> here</a></p><p class="copyright" style="font-family:'Verdana',Geneva,sans-serif;color:#FFFFFF!important;"> © 2026 Import React </p><p style="font-family:'Verdana',Geneva,sans-serif;color:#FFFFFF!important;"> 228 Park Ave S, #29976, New York, New York 10003, United States </p></td></tr><tr style="display: table-row !important;"><td align="center" valign="top" style="padding-top:20px;" style="display:table-cell !important;"><table role="none" border="0" cellspacing="0" cellpadding="0" align="center" style="display:table !important;"><tr style="display:table-row !important;"><td class="u" align="center" valign="middle" height="32" style="height:32px;display:table-cell !important; max-height: 32px !important;margin:0px !important; background-color: #ffffff !important;"><a style="line-height:32px !important;text-decoration:none;display:block !important;" href="https://link.mail.beehiiv.com/v2/c/3741029cc68e18144751402a23c2d91c5341c3d4920df0ef708750660fe3eaf79acc65e7ba0fa546eb56dc1acfb1801ebfcb1d5420c801694c3e67724fa1c7639c6d1ed5f232ccfb575e6ee4864d69e6666c3334d033c1108d98146bf0379a9b29d99a5ee1d630c3094e672e954b404099716dada34fc6226a4291926b5cc0d7348b729a6ce17c3a8a40d8a6b40e22a218b9c274e4df1520d0f86155bda566fc63f4a3403ba1e1a73e9e9e502a3b44d9/3273ba648adb88c1"><img width="16" height="16" alt="beehiiv logo" style="display:inline-block !important;max-width:16px !important;vertical-align:-3px !important;width:16px !important;height:16px !important;" border="0" src="https://media.beehiiv.com/cdn-cgi/image/fit=pad,format=png,onerror=redirect,quality=100,width=16,height=16,gravity=center,background=transparent,dpr=2/output-onlinepngtools.png"/><span style="padding-left:11px !important;display: inline-block !important;">Powered by beehiiv</span></a></td></tr></table></td></tr><tr><td align="left" valign="top" height="2" style="height:2px;line-height:1px;font-size:1px;mso-line-height-rule:exactly;"><a href='https://hp.beehiiv.com/c88b925b-ad35-4013-ad2e-a50060159075' style="color: #030712 !important; cursor: default; font-size: 1px; text-decoration: none;"></a></td></tr><tr><td align="left" valign="top" height="2" style="height:2px;"><a href='https://email.beehiivstatus.com/2500e0c5a96031ed4a34d0e93ba3223344337186/hclick' clicktracking="off" style="color: #030712 !important; cursor: default; font-size: 1px; text-decoration: none;"></a></td></tr></table></td></tr></table></td></tr></td></tr></table></td></tr></table></td></tr></table></td></tr></table></div></body></html>