<!DOCTYPE html>
<html style="font-family:Helvetica, Arial, sans-serif">
<head style="font-family:Helvetica, Arial, sans-serif">
<!--[if mso]>
<center>
<table><tr><td width="660">
<![endif]-->
<style style="font-family:Helvetica, Arial, sans-serif">.ck-link { text-decoration: underline; }</style>
<style style="font-family:Helvetica, Arial, sans-serif">@media only screen { .email * { word-break: break-word; } }
@media screen and (max-width: 384px) { .mail-message-content { width: 414px !important; } }
@media only screen and (max-width:600px) { .ck-mobile-font-size { font-size:50px !important; } }
@media only screen and (max-width:600px) { .ck-mobile-font-size { font-size:50px !important; } }</style>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" style="font-family:Helvetica, Arial, sans-serif">
<style>a:hover{color:#1b8ede;border-bottom-color:#1b8ede}
.button:hover{color:#fff;background:#666}</style>
</head>
<body style="font-family:Helvetica, Arial, sans-serif">
<div class="message-content" style="font-size:16px;line-height:1.4em;color:#333333;max-width:660px;margin:8px auto;padding:0 8px;font-family:Helvetica, Arial, sans-serif">
<table cellpadding="0" cellspacing="0" style="font-family:Helvetica, Arial, sans-serif;width:100%;margin:0 auto"><tbody style="font-family:Helvetica, Arial, sans-serif"><tr style="font-family:Helvetica, Arial, sans-serif"><td style="font-family:Helvetica, Arial, sans-serif">
<p style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;margin-bottom:1em;text-align:center;font-size:12px" class=""><a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/9qhzhdud578ermizu3/aHR0cHM6Ly90aGlzd2Vla2lucmVhY3QuY29tL25ld3NsZXR0ZXI=" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126737"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;font-size:12px">🌐 Read Online </span></a></p>
<p class="" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;margin-bottom:1em">Hi everyone, <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/n2hohquv7d4l0zu0ug/aHR0cHM6Ly94LmNvbS9zZWJhc3RpZW5sb3JiZXI=" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126739">Seb</a> and <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/48hvh7umxo378xuqu7/aHR0cHM6Ly94LmNvbS9qYXdvcmVrMzIxMQ==" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126740">Jan</a> here 👋!</p>
<p class="" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;margin-bottom:1em">Following the React v19.3 release, DevTools v8 is now officially published. Motion shipped a ViewTransition wrapper. React Router optimized re-renders. Apollo Client finally has custom scalars.</p>
<p class="" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;margin-bottom:1em">On mobile, we have a lot of releases. RN 0.88 will use React v19.3. Shopify is moving away from React Native!</p>
<p class="" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;margin-bottom:1em">Let's dive in!</p>
<table width="100%" border="0" cellspacing="0" cellpadding="0" style="font-family:Helvetica, Arial, sans-serif;text-align:center;table-layout:fixed;float:none" class="email-image"><tbody style="font-family:Helvetica, Arial, sans-serif"><tr style="font-family:Helvetica, Arial, sans-serif"><td align="center" style="font-family:Helvetica, Arial, sans-serif"><figure style="font-family:Helvetica, Arial, sans-serif;margin-top:12px;margin-bottom:12px;margin-left:0;margin-right:0;max-width:800px;width:100%"><div style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding-bottom:10px;display:block"><img src="https://thisweekinreact.com/emails/separators/christmas.png" alt="" height="auto" style="font-family:Helvetica, Arial, sans-serif;max-width:100%;height:auto;margin:0 auto;border-radius:0px 0px 0px 0px;max-width:100%;height:auto;object-fit:contain"></div>
<figcaption style="font-family:Helvetica, Arial, sans-serif;text-align:center;display:none"></figcaption></figure></td></tr></tbody></table>
<h2 class="" style="font-family:Helvetica, Arial, sans-serif;color:#333;font-size:30px">
<strong style="font-family:Helvetica, Arial, sans-serif;font-weight:bolder">💸 </strong><u style="font-family:Helvetica, Arial, sans-serif"><strong style="font-family:Helvetica, Arial, sans-serif;font-weight:bolder">Sponsor</strong></u>
</h2>
<table width="100%" border="0" cellspacing="0" cellpadding="0" style="font-family:Helvetica, Arial, sans-serif;text-align:center;table-layout:fixed;float:none" class="email-image"><tbody style="font-family:Helvetica, Arial, sans-serif"><tr style="font-family:Helvetica, Arial, sans-serif"><td align="center" style="font-family:Helvetica, Arial, sans-serif"><figure style="font-family:Helvetica, Arial, sans-serif;margin-top:12px;margin-bottom:12px;margin-left:0;margin-right:0;max-width:100%;width:100%"><a style="font-family:Helvetica, Arial, sans-serif;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1;border-bottom:none;display:block" href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/wnh2h6uq0zdl6lclux/aHR0cHM6Ly9zZW50cnkuaW8vcmVzb3VyY2VzL2FnZW50LXRyYWNpbmctc2VyaWVzLz91dG1fc291cmNlPXRoaXN3ZWVraW5yZWFjdCZ1dG1fbWVkaXVtPXBhaWQtY29tbXVuaXR5JnV0bV9jYW1wYWlnbj1hZ2VudHRyYWNpbmctZnkyN3EzLWFnZW50dHJhY2luZ3NlcmllcyZ1dG1fY29udGVudD1uZXdzbGV0dGVyLXByaW1hcnktd29ya3Nob3Atc2VyaWVzLXJlZ2lzdGVy" target="_blank" rel="noopener noreferrer" class="kit-image-link" url-id="1887126741"><img src="https://thisweekinreact.com/emails/issues/297/sentry.jpg" alt="Live Workshop Series: Debugging AI Agents" width="100%" height="auto" style="font-family:Helvetica, Arial, sans-serif;max-width:100%;height:auto;margin:0 auto;border-radius:4px 4px 4px 4px;max-width:100%;width:100%;height:auto;object-fit:contain"></a><figcaption style="font-family:Helvetica, Arial, sans-serif;text-align:center;display:none"></figcaption></figure></td></tr></tbody></table>
<p class="" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;margin-bottom:1em"><a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/wnh2h6uq0zdl6lclux/aHR0cHM6Ly9zZW50cnkuaW8vcmVzb3VyY2VzL2FnZW50LXRyYWNpbmctc2VyaWVzLz91dG1fc291cmNlPXRoaXN3ZWVraW5yZWFjdCZ1dG1fbWVkaXVtPXBhaWQtY29tbXVuaXR5JnV0bV9jYW1wYWlnbj1hZ2VudHRyYWNpbmctZnkyN3EzLWFnZW50dHJhY2luZ3NlcmllcyZ1dG1fY29udGVudD1uZXdzbGV0dGVyLXByaW1hcnktd29ya3Nob3Atc2VyaWVzLXJlZ2lzdGVy" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126741">Live Workshop Series: Debugging AI Agents</a></p>
<p class="" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;margin-bottom:1em">Your agent returns something odd. Was it the prompt, a tool call that timed out, or output your code could not parse? Without traces, you are guessing.</p>
<p class="" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;margin-bottom:1em">On <strong style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;font-weight:bolder">October 7</strong>, Serge from Sentry instruments three agents with <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/reh8h9um68pozpf6u6/aHR0cHM6Ly9zZW50cnkuaW8vcHJvZHVjdC90cmFjaW5nL2FpLWFnZW50Lz91dG1fc291cmNlPXRoaXN3ZWVraW5yZWFjdCZ1dG1fbWVkaXVtPXBhaWQtY29tbXVuaXR5JnV0bV9jYW1wYWlnbj1hZ2VudHRyYWNpbmctZnkyN3EzLWV2ZXJncmVlbiZ1dG1fY29udGVudD1uZXdzbGV0dGVyLXByaW1hcnktcHJvZHVjdC1sZWFybm1vcmU=" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126742">Agent Tracing</a>: a chatbot in an e-commerce store, a custom Slack agent, and a GitHub Action that reviews PRs. You'll see bad tool calls, unexpected output, and token spend per run.</p>
<p class="" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;margin-bottom:1em">On <strong style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;font-weight:bolder">October 14</strong>, Ryan and Serge show how Sentry engineers debug their own agents and find the failures worth investigating across large volumes of production traces.</p>
<p class="" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;margin-bottom:1em">Both sessions are free. <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/wnh2h6uq0zdl6lclux/aHR0cHM6Ly9zZW50cnkuaW8vcmVzb3VyY2VzL2FnZW50LXRyYWNpbmctc2VyaWVzLz91dG1fc291cmNlPXRoaXN3ZWVraW5yZWFjdCZ1dG1fbWVkaXVtPXBhaWQtY29tbXVuaXR5JnV0bV9jYW1wYWlnbj1hZ2VudHRyYWNpbmctZnkyN3EzLWFnZW50dHJhY2luZ3NlcmllcyZ1dG1fY29udGVudD1uZXdzbGV0dGVyLXByaW1hcnktd29ya3Nob3Atc2VyaWVzLXJlZ2lzdGVy" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126741"><strong style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;font-weight:bolder">Register for the series</strong></a>.</p>
<table width="100%" border="0" cellspacing="0" cellpadding="0" style="font-family:Helvetica, Arial, sans-serif;text-align:center;table-layout:fixed;float:none" class="email-image"><tbody style="font-family:Helvetica, Arial, sans-serif"><tr style="font-family:Helvetica, Arial, sans-serif"><td align="center" style="font-family:Helvetica, Arial, sans-serif"><figure style="font-family:Helvetica, Arial, sans-serif;margin-top:12px;margin-bottom:12px;margin-left:0;margin-right:0;max-width:800px;width:100%"><div style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding-bottom:10px;display:block"><img src="https://thisweekinreact.com/emails/separators/christmas.png" alt="" height="auto" style="font-family:Helvetica, Arial, sans-serif;max-width:100%;height:auto;margin:0 auto;border-radius:0px 0px 0px 0px;max-width:100%;height:auto;object-fit:contain"></div>
<figcaption style="font-family:Helvetica, Arial, sans-serif;text-align:center;display:none"></figcaption></figure></td></tr></tbody></table>
<h2 class="" style="font-family:Helvetica, Arial, sans-serif;color:#333;font-size:30px">
<strong style="font-family:Helvetica, Arial, sans-serif;font-weight:bolder">⚛️ </strong><u style="font-family:Helvetica, Arial, sans-serif"><strong style="font-family:Helvetica, Arial, sans-serif;font-weight:bolder">React</strong></u>
</h2>
<ul class="unordered_list" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;margin-bottom:1em;padding:0 5px">
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">💸 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/08hwhgu2l84pr8spu5/aHR0cHM6Ly9nby5wb3N0aG9nLmNvbS90d2lyLXNlcHQxNg==" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126743">build mode - 2030-shaped software</a></span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">👀 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/8ghqh3uor487veslu9/aHR0cHM6Ly9jaHJvbWV3ZWJzdG9yZS5nb29nbGUuY29tL2RldGFpbC9yZWFjdC1kZXZlbG9wZXItdG9vbHMvZm1rYWRtYXBnb2ZhZG9wbGpiamZrYXBka29pZW5paGk_aGw9ZW4=" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126744">React DevTools 8.0 on the Chrome Web Store</a> - If you use Chrome, you probably got the new version automatically. You should now see a new <code style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;color:green;font-family:monospace">Elements > ⚛️React Element</code> pane when inspecting elements in Chrome DevTools, and also a new top-level <code style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;color:green;font-family:monospace">⚛️Suspense</code> tab.</span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">👀 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/l2heh6ulxgpd9ncgu0/aHR0cHM6Ly9naXRodWIuY29tL2ZhY2Vib29rL3N0eWxleC9wdWxsLzE4NjU=" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126746">StyleX RFC - Add compile-time CSS enums and exhaustive matching</a></span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">📜 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/m2h7h6u34rxlp9sluq/aHR0cHM6Ly9vbmRyZWp2ZWxpc2VrLmdpdGh1Yi5pby90aGUtY29zdC1vZi1hYnN0cmFjdGlvbi1mb3ItaHVtYW5zLWFuZC1haS1hZ2VudHMv" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126747">The Cost of Abstraction for Humans and AI Agents</a> - The author created the same React app with different levels of abstraction, then measured the cost of editing each app with Sonnet 5. He estimates that an over-abstracted codebase costs 30% more in AI agent bill and time. Also includes 6 abstraction patterns often seen in React codebases that you can probably inline.</span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">📜 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/dphehmuep3x2gwalu4/aHR0cHM6Ly93d3cubmlraGlsc25heWFrLmRldi9ibG9nL3JlYWN0LXNlcnZlci1mdW5jdGlvbnM=" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126748">React Server Functions Are More Than Mutations</a> - An interactive exploration of using Server Functions for reads via HTTP QUERY, then streaming values, while working on an Effect-based RSC framework.</span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">📜 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/e0hph0u7rxzdg2c7u2/aHR0cHM6Ly93d3cuYnJlbmVsei5jb20vcG9zdHMvc29saWRqcy1pdHMtdGhlLWxpdHRsZS10aGluZ3Mv" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126749">SolidJS, It’s the Little Things</a> - Walks through 6 small Solid 2.0 DX details, from <code style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;color:green;font-family:monospace">isPending()</code> to optimistic stores, each compared side by side with the React equivalent.</span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">📜 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/7qh7h2u9ngex74f9u6/aHR0cHM6Ly9kZXYudG8vc3ViaXRvL2Zyb20tMTI1Nm1zLXRvLTk2bXMtZml4aW5nLWlucC1pbi1hLW1hc3NpdmUtcmVhY3QtZHJvcGRvd24tMTZsNw==" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126750">Fixing INP in a Massive React Dropdown</a> - Opening a MultiSelect with ~1,200 options mounted at once blocks the main thread. Since all rows share the same height, a custom 90-line virtualization hook is enough to bring INP from 1,256ms down to 96ms.</span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">📜 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/owhkhwuwqze0v4aqur/aHR0cHM6Ly90c3J4LmRldi9ibG9nL3JlbW92aW5nLWxhenktZGVzdHJ1Y3R1cmluZw==" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126751">TSRX - Removing lazy destructuring</a> - Preparing for v1.0, TSRX dropped its <code style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;color:green;font-family:monospace">&{}</code> destructuring syntax. This reflects its positioning as a JSX extension, rather than a new language that humans and LLMs would have to learn.</span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">💰 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/p8hehqu4qvep04uru3/aHR0cHM6Ly9mYW5kZi5jby80Z0VoSDRF" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126753">The Amazon Developer Hackathon: Win up to $40k for the Fire TV track! 8 weeks to build and explore new agentic tools. Register now!</a></span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">📦 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/x0hph3ueqgm469tgul/aHR0cHM6Ly9tb3Rpb24uZGV2L2RvY3MvcmVhY3QtYW5pbWF0ZS12aWV3" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126754">Motion 13.4 - New <code style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;color:green;font-family:monospace"><AnimateView></code> component</a> - Wraps React's <code style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;color:green;font-family:monospace"><ViewTransition></code>, adding support for spring support, dynamic targets, animation controls, and a simple props API. Interesting to see the lib pushing back on React docs' claims about View Transition performance compared to layout animations.</span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">📦 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/kkhmh2unx7poq4aku7/aHR0cHM6Ly9naXRodWIuY29tL3NoYWRjbi11aS9saW50" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126756">shadcn lint - An agent-first linter for Tailwind design systems</a> - Since <code style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;color:green;font-family:monospace">className</code> is just a string, design system rules are hard to enforce with types. This ESLint/Oxlint plugin lets you define per-component rules and emit actionable errors to guide your agents.</span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">📦 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/7qh7h2u9ngex7du9u6/aHR0cHM6Ly9naXRodWIuY29tL294Yy1wcm9qZWN0L294Yy9yZWxlYXNlcy90YWcvYXBwc192MS44My4w" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126757">Oxlint 1.83 - Update lint rules for React 19.3</a> - This fixes false-positive lint errors you may get by adopting React 19.3 features such as Fragment refs or newly supported DOM props.</span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">📦 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/owhkhwuwqze0vpcqur/aHR0cHM6Ly9yZWFjdHJvdXRlci5jb20vY2hhbmdlbG9nI3Y4NDA=" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126758">React Router 8.4 - Fewer re-renders, faster route matching (unstable)</a> - The internal router state has been split into 4 contexts, so hooks like <code style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;color:green;font-family:monospace">useLocation()</code> will re-render less.</span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">📦 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/z2hgh7uelgzmv6hzu0/aHR0cHM6Ly93d3cuYXBvbGxvZ3JhcGhxbC5jb20vYmxvZy93aGF0cy1uZXctaW4tYXBvbGxvLWNsaWVudC00LTM=" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126759">Apollo Client 4.3 - Custom scalars, type-safety improvements</a> - The GraphQL client finally ships built-in custom scalar support, its most requested feature: parse/serialize values like <code style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;color:green;font-family:monospace">Date</code> in one place</span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">📦 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/p8hehqu4qvep0obru3/aHR0cHM6Ly9yZWFjdC1ob29rLWZvcm0uY29tL2RvY3MvdXNlZm9ybXN0YXRlL2Vycm9ybWVzc2FnZQ==" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126760">React Hook Form 7.88 - Built-in <code style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;color:green;font-family:monospace"><ErrorMessage></code> component</a> - This lets you render one or many validation error messages for a given field.</span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">📦 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/x0hph3ueqgm466igul/aHR0cHM6Ly9hc3RyeXguYXRtZXRhLmNvbS9ibG9nL2FzdHJ5eC12MC02LTA=" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126761">Astryx 0.6 - Responsive theme rules, adaptable selection, reworked Neutral palette</a></span></li>
</ul>
<table width="100%" border="0" cellspacing="0" cellpadding="0" style="font-family:Helvetica, Arial, sans-serif;text-align:center;table-layout:fixed;float:none" class="email-image"><tbody style="font-family:Helvetica, Arial, sans-serif"><tr style="font-family:Helvetica, Arial, sans-serif"><td align="center" style="font-family:Helvetica, Arial, sans-serif"><figure style="font-family:Helvetica, Arial, sans-serif;margin-top:12px;margin-bottom:12px;margin-left:0;margin-right:0;max-width:800px;width:100%"><div style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding-bottom:10px;display:block"><img src="https://thisweekinreact.com/emails/separators/christmas.png" alt="" height="auto" style="font-family:Helvetica, Arial, sans-serif;max-width:100%;height:auto;margin:0 auto;border-radius:0px 0px 0px 0px;max-width:100%;height:auto;object-fit:contain"></div>
<figcaption style="font-family:Helvetica, Arial, sans-serif;text-align:center;display:none"></figcaption></figure></td></tr></tbody></table>
<h2 class="" style="font-family:Helvetica, Arial, sans-serif;color:#333;font-size:30px">
<strong style="font-family:Helvetica, Arial, sans-serif;font-weight:bolder">💸 </strong><u style="font-family:Helvetica, Arial, sans-serif"><strong style="font-family:Helvetica, Arial, sans-serif;font-weight:bolder">Sponsor</strong></u>
</h2>
<table width="100%" border="0" cellspacing="0" cellpadding="0" style="font-family:Helvetica, Arial, sans-serif;text-align:center;table-layout:fixed;float:none" class="email-image"><tbody style="font-family:Helvetica, Arial, sans-serif"><tr style="font-family:Helvetica, Arial, sans-serif"><td align="center" style="font-family:Helvetica, Arial, sans-serif"><figure style="font-family:Helvetica, Arial, sans-serif;margin-top:12px;margin-bottom:12px;margin-left:0;margin-right:0;max-width:100%;width:100%"><a style="font-family:Helvetica, Arial, sans-serif;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1;border-bottom:none;display:block" href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/6qhehoul9q43g8h9uk/aHR0cHM6Ly9yZXZvcHVzaC5vcmcvcmVhY3QtbmF0aXZlLW90YS1wYXlsb2Fkcy1iaW5hcnktZGlmZnM_dXRtX3NvdXJjZT10aGlzX3dlZWtfaW5fcmVhY3Q=" target="_blank" rel="noopener noreferrer" class="kit-image-link" url-id="1887126762"><img src="https://thisweekinreact.com/emails/issues/297/revopush.jpg" alt="Your first React Native OTA can be a diff" width="100%" height="auto" style="font-family:Helvetica, Arial, sans-serif;max-width:100%;height:auto;margin:0 auto;border-radius:4px 4px 4px 4px;max-width:100%;width:100%;height:auto;object-fit:contain"></a><figcaption style="font-family:Helvetica, Arial, sans-serif;text-align:center;display:none"></figcaption></figure></td></tr></tbody></table>
<p class="" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;margin-bottom:1em"><a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/6qhehoul9q43g8h9uk/aHR0cHM6Ly9yZXZvcHVzaC5vcmcvcmVhY3QtbmF0aXZlLW90YS1wYXlsb2Fkcy1iaW5hcnktZGlmZnM_dXRtX3NvdXJjZT10aGlzX3dlZWtfaW5fcmVhY3Q=" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126762">Your first React Native OTA can be a diff</a></p>
<p class="" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;margin-bottom:1em"><a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/kkhmh2unx7poqkcku7/aHR0cHM6Ly9yZXZvcHVzaC5vcmcv" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126763">Revopush OTA</a> reuses the hermes bundle and assets already in your IPA and APK.</p>
<p class="" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;margin-bottom:1em">Even the first OTA after a native release can contain only the changes.</p>
<p class="" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;margin-bottom:1em">In one production release, an 18 Mb full package became <strong style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;font-weight:bolder">100 to 500 Kb</strong> patches.</p>
<p class="" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;margin-bottom:1em">After the switch, the team released more often. Update downloads increased, yet egress fell 💰.</p>
<ul class="unordered_list" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;margin-bottom:1em;padding:0 5px">
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">SDK compatible with React Native and Expo</span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">Binary diff updates from the first OTA release</span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">Enterprise-grade security, with SOC 2 Type II</span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">Advanced release analytics</span></li>
</ul>
<p class="" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;margin-bottom:1em"><a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/6qhehoul9q43g8h9uk/aHR0cHM6Ly9yZXZvcHVzaC5vcmcvcmVhY3QtbmF0aXZlLW90YS1wYXlsb2Fkcy1iaW5hcnktZGlmZnM_dXRtX3NvdXJjZT10aGlzX3dlZWtfaW5fcmVhY3Q=" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126762">See the production results</a></p>
<table width="100%" border="0" cellspacing="0" cellpadding="0" style="font-family:Helvetica, Arial, sans-serif;text-align:center;table-layout:fixed;float:none" class="email-image"><tbody style="font-family:Helvetica, Arial, sans-serif"><tr style="font-family:Helvetica, Arial, sans-serif"><td align="center" style="font-family:Helvetica, Arial, sans-serif"><figure style="font-family:Helvetica, Arial, sans-serif;margin-top:12px;margin-bottom:12px;margin-left:0;margin-right:0;max-width:800px;width:100%"><div style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding-bottom:10px;display:block"><img src="https://thisweekinreact.com/emails/separators/christmas.png" alt="" height="auto" style="font-family:Helvetica, Arial, sans-serif;max-width:100%;height:auto;margin:0 auto;border-radius:0px 0px 0px 0px;max-width:100%;height:auto;object-fit:contain"></div>
<figcaption style="font-family:Helvetica, Arial, sans-serif;text-align:center;display:none"></figcaption></figure></td></tr></tbody></table>
<h2 class="" style="font-family:Helvetica, Arial, sans-serif;color:#333;font-size:30px">
<strong style="font-family:Helvetica, Arial, sans-serif;font-weight:bolder">📱 </strong><u style="font-family:Helvetica, Arial, sans-serif"><strong style="font-family:Helvetica, Arial, sans-serif;font-weight:bolder">React-Native</strong></u>
</h2>
<table width="100%" border="0" cellspacing="0" cellpadding="0" style="font-family:Helvetica, Arial, sans-serif;text-align:center;table-layout:fixed;float:none" class="email-image"><tbody style="font-family:Helvetica, Arial, sans-serif"><tr style="font-family:Helvetica, Arial, sans-serif"><td align="center" style="font-family:Helvetica, Arial, sans-serif"><figure style="font-family:Helvetica, Arial, sans-serif;margin-top:12px;margin-bottom:12px;margin-left:0;margin-right:0;max-width:100%;width:100%"><a style="font-family:Helvetica, Arial, sans-serif;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1;border-bottom:none;display:block" href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/58hvh8ug6ew486h7u4/aHR0cHM6Ly9zaG9waWZ5LmVuZ2luZWVyaW5nL2JhY2stdG8tbmF0aXZl" target="_blank" rel="noopener noreferrer" class="kit-image-link" url-id="1887126764"><img src="https://thisweekinreact.com/emails/issues/297/shopify.jpg" alt="Shopify is moving away from React Native to native" width="100%" height="auto" style="font-family:Helvetica, Arial, sans-serif;max-width:100%;height:auto;margin:0 auto;border-radius:4px 4px 4px 4px;max-width:100%;width:100%;height:auto;object-fit:contain"></a><figcaption style="font-family:Helvetica, Arial, sans-serif;text-align:center;display:none"></figcaption></figure></td></tr></tbody></table>
<p class="" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;margin-bottom:1em"><a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/58hvh8ug6ew486h7u4/aHR0cHM6Ly9zaG9waWZ5LmVuZ2luZWVyaW5nL2JhY2stdG8tbmF0aXZl" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126764">Shopify is moving away from React Native to native</a></p>
<p class="" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;margin-bottom:1em">An unexpected announcement from Shopify shook the React Native ecosystem. They’re moving away from React Native to native Swift and Kotlin!</p>
<p class="" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;margin-bottom:1em">So what’s their reason? Not because RN failed, but because coding agents changed the economics. Building twice no longer costs twice.</p>
<p class="" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;margin-bottom:1em">They <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/25h2h9u3m5xqzqs8u4/aHR0cHM6Ly9zaG9waWZ5LmVuZ2luZWVyaW5nL3Nob3AtYXBwLW1pZ3JhdGlvbg==" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126765">started with a 12-week case study to migrate their flagship Shop app</a> to native with 6 engineers, leading to the following improvements:</p>
<ul class="unordered_list" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;margin-bottom:1em;padding:0 5px">
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">improve startup time - iOS startup 3200ms → 2466ms (-23%), Android 4433ms → 2233ms (-50%)</span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">session stability - 99.5% → 99.95% (10x reduction)</span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">runtime performance on Android - 120 FPS on a Pixel device</span></li>
</ul>
<p class="" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;margin-bottom:1em">It’s important to note that the app was 𝕏 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/qvh8h8udkx3l53hguk/aHR0cHM6Ly94LmNvbS9qYW1vbmhvbG1ncmVuL3N0YXR1cy8yMDk4MjM1MTI1NDE5MTM1MzM5" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126766">not using the New Architecture</a>, which was built to fix those problems.</p>
<p class="" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;margin-bottom:1em">Does it mean <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/g3hnhwumqv205vs3u9/aHR0cHM6Ly9jb2Rld2l0aGJldG8uZGV2L2Jsb2cvaXMtcmVhY3QtbmF0aXZlLWRlYWQtc2hvcGlmeS1uYXRpdmU=" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126767">React Native is dead</a>? Does not seem so. A shared application and UI layer remains useful, and React Native still has major benefits such as Over-The-Air updates and good foundations for server-driven UI, useful for the agentic era.</p>
<table width="100%" border="0" cellspacing="0" cellpadding="0" style="font-family:Helvetica, Arial, sans-serif;text-align:center;table-layout:fixed;float:none" class="email-image"><tbody style="font-family:Helvetica, Arial, sans-serif"><tr style="font-family:Helvetica, Arial, sans-serif"><td align="center" style="font-family:Helvetica, Arial, sans-serif"><figure style="font-family:Helvetica, Arial, sans-serif;margin-top:12px;margin-bottom:12px;margin-left:0;margin-right:0;max-width:600px;width:100%"><div style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding-bottom:10px;display:block"><img src="https://thisweekinreact.com/emails/separators/christmas.png" alt="" width="600" height="auto" style="font-family:Helvetica, Arial, sans-serif;max-width:100%;height:auto;margin:0 auto;border-radius:4px 4px 4px 4px;max-width:100%;width:600px;height:auto;object-fit:contain"></div>
<figcaption style="font-family:Helvetica, Arial, sans-serif;text-align:center;display:none"></figcaption></figure></td></tr></tbody></table>
<ul class="unordered_list" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;margin-bottom:1em;padding:0 5px">
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">💸 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/9qhzhdud578evkizu3/aHR0cHM6Ly9jcmlzcC5jaGF0Lz91dG1fc291cmNlPXR3aXImdXRtX21lZGl1bT1uZXdzbGV0dGVyJnV0bV9jYW1wYWlnbj1jcmlzcF9xM19ubCZ1dG1fY29udGVudD0xNnNlcDI2" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126768">Crisp - Customize your in-app support experience with our React Native SDK and flexible integration options</a></span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">👀 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/3ohphdu3pw8k5oupun/aHR0cHM6Ly9naXRodWIuY29tL3JlYWN0L3JlYWN0LW5hdGl2ZS9yZWxlYXNlcy90YWcvdjAuODguMC1yYy4x" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126769">React Native 0.88 RC.1 cherry-picked React 19.3 - Stable ViewTransition, Fragment refs, browser(), Trusted Types</a> - This upgrade doesn’t look like a major change for RN devs on its own, but ViewTransitions and Fragment refs are React core features and may become supported on the RN side? 🤫</span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">📜 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/n2hohquv7d4l9xu0ug/aHR0cHM6Ly9leHBvLmRldi9ibG9nL2J1aWxkLWlvcy1hcHBzLW9uLXdpbmRvd3Mtd2l0aC1jbG91ZC1zaW11bGF0b3Jz" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126770">You don't need a Mac to develop iOS apps anymore</a> - EAS runs iOS simulators in the cloud, letting you test and build apps from any OS or browser. Android is also supported.</span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">📜 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/48hvh7umxo37d9uqu7/aHR0cHM6Ly9zaGlmdC5pbmZpbml0ZS5yZWQvbGVnZW5kLXN0YXRlLXRoZS1mYXN0ZXN0LXJlYWN0LXN0YXRlLWxpYnJhcnkteW91cmUtcHJvYmFibHktbm90LXVzaW5nLWU3OTExNzFhNjFiNw==" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126771">Legend State: The Fastest React State Library You’re Probably Not Using</a> - React's built-in state management can often be a source of performance problems. State managers such as Legend State help reduce re-renders thanks to <code style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;color:green;font-family:monospace">observables</code>.</span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">📜 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/wnh2h6uq0zdl2vulux/aHR0cHM6Ly9hbmRyZWktY2FsYXphbnMuY29tL3Bvc3RzLzIwMjYtMDktMTQtaG93LWttcC13aXRoLXN3aWZ0dWktc2NhbGVzLW9uLWlvcy8=" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126772">How Does KMP with SwiftUI Scale on iOS?</a> - Sharing logic in Kotlin sounds ideal. The problem? iOS consumes one static framework. Does this cause a full rebuild on every change? Fortunately, no, but there's still a cost.</span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">📜 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/08hwhgu2l84p67ipu5/aHR0cHM6Ly9jb2Rld2l0aGJldG8uZGV2L2Jsb2cvaXMteW91ci1hcHAtcmVhZHktZm9yLWlwaG9uZS1kdW8=" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126774">Is Your App Ready for iPhone Duo?</a> - A new mobile form factor is coming to iOS. Taking care of screen edges, safe areas, and adaptive layout is more important than ever.</span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">📜 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/vqh3hmuow56q9piwul/aHR0cHM6Ly9zd21hbnNpb24uY29tL2Jsb2cvd2hhdC1pdC1hY3R1YWxseS10YWtlcy10by1taWdyYXRlLWRpc2NvcmQtdG8tcmVhY3QtbmF0aXZlLXMtbmV3LWFyY2hpdGVjdHVyZS8=" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126776">What It Actually Takes to Migrate Discord to React Native's New Architecture</a> - Migrating a complex app to the New Architecture is not just a flip of a switch. There’s a long tail of issues and assumptions that need to be taken care of.</span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">💸 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/l2heh6ulxgpdmlsgu0/aHR0cHM6Ly9wYXRjaC5jb2RlbWFnaWMuaW8vP3V0bV9zb3VyY2U9bmV3c2xldHRlciZ1dG1fbWVkaXVtPXJlZmVycmFsJnV0bV9jYW1wYWlnbj10d2ly" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126777">Codemagic Patch - The easiest way to run your own OTA update server, complete with dashboard and fingerprinting</a></span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">📦 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/e0hph0u7rxzd35h7u2/aHR0cHM6Ly9naXRodWIuY29tL3NvZnR3YXJlLW1hbnNpb24vcmVhY3QtbmF0aXZlLWV4ZWN1dG9yY2gvcmVsZWFzZXMvdGFnL3YwLjEwLjA=" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126780">ExecuTorch 0.10 - Ground-up rewrite, TS pipelines, Core ML/MLX/Vulkan acceleration</a> - Orchestration moves to inspectable TypeScript with Core API for custom models without C++, worklets support for VisionCamera live streams, on-demand native binaries to trim bundle size, and a legacy entrypoint for gradual migration.</span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">📦 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/owhkhwuwqze0mpiqur/aHR0cHM6Ly9leHBvLmRldi9jaGFuZ2Vsb2cvc2RrLTU4LWJldGE=" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126782">Expo SDK 58 Beta - iOS 27 support, RN 0.88 RC, Expo Modules 2.0 beta, App Intents alpha, agent CLI, Android widgets, stable Expo Router data loaders and native tabs, and more</a> - Another exciting Expo release that we’ll cover in depth once stable in 3-4 weeks!</span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">📦 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/z2hgh7uelgzm26szu0/aHR0cHM6Ly9zY3JlZW5tYXAuZGV2Lw==" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126783">Screenmap - Visual navigation maps for Expo / React Native apps</a> - A promising tool to add to your CI workflows: takes a screenshot of every app screen and posts a map to your mobile PRs, highlighting what has changed.</span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">📦 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/p8hehqu4qvepwotru3/aHR0cHM6Ly9naXRodWIuY29tL3NvZnR3YXJlLW1hbnNpb24vcmVhY3QtbmF0aXZlLXNjcmVlbnMvcmVsZWFzZXMvdGFnLzQuMjguMA==" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126784">Screens 4.28 - Android Tabs/Stack fixes, tab bar layout, and MenuItem IDs</a> - Small bugfix release, but here’s a 𝕏 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/x0hph3ueqgm4v6bgul/aHR0cHM6Ly94LmNvbS9zd21hbnNpb24vc3RhdHVzLzIwOTg0MTczMDIwMjY4MjU4MTQ=" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126785">sneak peek</a> of upcoming support for iPhone Duo</span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">📦 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/6qhehoul9q4388s9uk/aHR0cHM6Ly93d3cuc3dpZnQub3JnL2Jsb2cvc3dpZnQtNi40LXJlbGVhc2VkLw==" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126786">Swift 6.4</a> - Swift Build is now the default in SPM. Improved language, Foundation, and standard library. Improved C++ and Java interoperability.</span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">📦 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/kkhmh2unx7po0ksku7/aHR0cHM6Ly9naXRodWIuY29tL3JlYWN0L21ldHJvL3JlbGVhc2VzL3RhZy92MC44Ny4x" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126787">Metro 0.87 - Scheme resolvers, babel-runtime resolution, Watcher memory cuts</a></span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">📦 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/58hvh8ug6ew4d6s7u4/aHR0cHM6Ly9naXRodWIuY29tL21hcmdlbG8vcmVhY3QtbmF0aXZlLW5pdHJvLXp4aW5n" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126788">Nitro ZXing - Barcode scanner for VisionCamera written in C++, up to 10x faster than MLKit, and 2.6x faster for live camera frames</a></span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">📦 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/qvh8h8udkx3lm3sguk/aHR0cHM6Ly9seW54anMub3JnL2Jsb2cvbHlueC00LTA=" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126790">Lynx 4.0 - AI docs for agents, generative UI using AI2UI renderer and OpenUI skill, dynamic elements, unified debug metadata, media queries</a></span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">📦 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/g3hnhwumqv208vf3u9/aHR0cHM6Ly9naXRodWIuY29tL3djYW5kaWxsb24vcmVhY3QtbmF0aXZlLXdlYmdwdS9yZWxlYXNlcy90YWcvdjAuMTAuMA==" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126791">WebGPU 0.10 - Chrome 154, SPM support, implicit device sync by default</a></span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">📦 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/9qhzhdud578eokbzu3/aHR0cHM6Ly9naXRodWIuY29tL3NvZnR3YXJlLW1hbnNpb24vcmVhY3QtbmF0aXZlLWdlc3R1cmUtaGFuZGxlci9yZWxlYXNlcy90YWcvdjMuMy4w" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126792">Gesture Handler 3.3 - Swipeable, Drawer, ScrollView and button press fixes</a></span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">📦 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/3ohphdu3pw8keoapun/aHR0cHM6Ly9naXRodWIuY29tL1Nob3BpZnkvcmVhY3QtbmF0aXZlLXNraWEvcmVsZWFzZXMvdGFnL3YyLjEyLjA=" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126793">Skia 2.12 - SPM support, handle invalid SVG parse results</a></span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">📦 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/n2hohquv7d4lzxa0ug/aHR0cHM6Ly9naXRodWIuY29tL2t1YXRzdS9yZWFjdC1uYXRpdmUtYm9vc3QvcmVsZWFzZXMvdGFnL3YyLjAuMA==" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126794">Boost 2.0 - Metro plugin replaces Babel, Animated/ActivityIndicator/StyleSheet/Platform optimizers, Uniwind support</a></span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">📦 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/wnh2h6uq0zdlevalux/aHR0cHM6Ly9naXRodWIuY29tL0Rvcmlhbk1henVyL3JlYWN0LW5hdGl2ZS1zY3JlZW4tY2hvcmVvZ3JhcGh5L3JlbGVhc2VzL3RhZy92MC41LjA=" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126796">Screen Choreography 0.5 - defineTransition recipes, native forward preparation, live shared content</a></span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">📦 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/reh8h9um68pogeh6u6/aHR0cHM6Ly9naXRodWIuY29tL2NhbGxzdGFja2luY3ViYXRvci9yZWFjdC1uYXRpdmUtaGFybmVzcy9yZWxlYXNlcy90YWcvdjEuNS4w" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126797">Harness 1.5 - Windows platform support, <code style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;color:green;font-family:monospace">harness ci</code> commands, Metro config enhancer</a></span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">📦 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/08hwhgu2l84p37hpu5/aHR0cHM6Ly9naXRodWIuY29tL2NhbGxzdGFja2luY3ViYXRvci92b2x0cmEvcmVsZWFzZXMvdGFnL3YyLjMuMA==" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126798">Voltra 2.3 - Server-driven Dynamic Widgets, configurable Android widgets, experimental Dynamic Live Activities</a></span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">📦 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/8ghqh3uor487mgalu9/aHR0cHM6Ly9naXRodWIuY29tL3NvZnR3YXJlLW1hbnNpb24vcmFkb24taWRlL3JlbGVhc2VzL3RhZy92MS4xOS4w" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126799">Radon IDE 1.19 - Share booted devices with AI agents via Argent</a></span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">📦 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/vqh3hmuow56qzpbwul/aHR0cHM6Ly9naXRodWIuY29tL3NvZnR3YXJlLW1hbnNpb24vYXJnZW50L3JlbGVhc2VzL3RhZy92MC4yNS4w" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126800">Argent 0.25 - WebView DOM in describe on Android, external device providers, script steps in flows</a></span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">📦 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/l2heh6ulxgpd8lfgu0/aHR0cHM6Ly9naXRodWIuY29tL2NhbGxzdGFjay9hZ2VudC1kZXZpY2UvcmVsZWFzZXMvdGFnL3YwLjIxLjI=" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126801">Agent Device 0.21 - scroll-until finder, in-place iOS web sign-in, Maestro evalScript, 27–40% faster iOS opens, human takeover of remote sessions</a></span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">📦 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/m2h7h6u34rxldmaluq/aHR0cHM6Ly9naXRodWIuY29tL2FwcGFuZGZsb3cvc3RpbS9yZWxlYXNlcw==" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126802">Stim 1.0 - Run several coding agents in parallel on RN apps, with build optimizations across worktrees</a></span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">📦 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/dphehmuep3x2l5flu4/aHR0cHM6Ly9naXRodWIuY29tL0ZlclJpdjNyYS9yZWFjdC1uYXRpdmUtbml0cm8td2FrZXdvcmQ=" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126803">Nitro Wakeword - On-device wake word detection for React Native, using the openWakeWord pipeline with ONNX Runtime</a></span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">📦 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/e0hph0u7rxzd85i7u2/aHR0cHM6Ly9naXRodWIuY29tL2x1aWNmcnIvcmVhY3QtbmF0aXZlLXZpc2lvbi1jYW1lcmEtZmFjZS1kZXRlY3Rvci9yZWxlYXNlcy90YWcvdjIuMS4w" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126804">Face Detector 2.1 - Auto-mode scaling fix for any frame/screen resolution</a></span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">📦 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/7qh7h2u9ngexrda9u6/aHR0cHM6Ly9naXRodWIuY29tL21hcmdlbG8vcmVhY3QtbmF0aXZlLW5pdHJvLWZldGNoL3JlbGVhc2VzL3RhZy92MS43LjA=" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126805">Nitro Fetch 1.7 - Fix reject aborted requests when native finishes before cancel, multipart encoding, React Query/RTK examples</a></span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">🎥 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/owhkhwuwqze02pbqur/aHR0cHM6Ly93d3cueW91dHViZS5jb20vd2F0Y2g_dj0wQTRhZWhEbU9Yaw==" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126806">Code with Beto - How Marc Rousavy Turned Open Source Into a €20M+ Agency</a></span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">🎙️ <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/z2hgh7uelgzmq6azu0/aHR0cHM6Ly9pbmZpbml0ZS5yZWQvcmVhY3QtbmF0aXZlLXJhZGlvL3Juci0zNzMtcmVhbC1saWZlLXJlYWN0LW5hdGl2ZS1tYXJrLWdvbGRzdGVpbg==" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126807">RNR 373 - Real Life React Native: Chime</a></span></li>
</ul>
<table width="100%" border="0" cellspacing="0" cellpadding="0" style="font-family:Helvetica, Arial, sans-serif;text-align:center;table-layout:fixed;float:none" class="email-image"><tbody style="font-family:Helvetica, Arial, sans-serif"><tr style="font-family:Helvetica, Arial, sans-serif"><td align="center" style="font-family:Helvetica, Arial, sans-serif"><figure style="font-family:Helvetica, Arial, sans-serif;margin-top:12px;margin-bottom:12px;margin-left:0;margin-right:0;max-width:800px;width:100%"><div style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding-bottom:10px;display:block"><img src="https://thisweekinreact.com/emails/separators/christmas.png" alt="" height="auto" style="font-family:Helvetica, Arial, sans-serif;max-width:100%;height:auto;margin:0 auto;border-radius:0px 0px 0px 0px;max-width:100%;height:auto;object-fit:contain"></div>
<figcaption style="font-family:Helvetica, Arial, sans-serif;text-align:center;display:none"></figcaption></figure></td></tr></tbody></table>
<h2 class="" style="font-family:Helvetica, Arial, sans-serif;color:#333;font-size:30px">
<strong style="font-family:Helvetica, Arial, sans-serif;font-weight:bolder">🔀 </strong><u style="font-family:Helvetica, Arial, sans-serif"><strong style="font-family:Helvetica, Arial, sans-serif;font-weight:bolder">Other</strong></u>
</h2>
<ul class="unordered_list" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;margin-bottom:1em;padding:0 5px">
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">📜 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/p8hehqu4qvepnouru3/aHR0cHM6Ly9udWJqcy5jb20vYmxvZy9waGFudG9tLWRlcGVuZGVuY2llcy1wYWNrYWdlLWV4dGVuc2lvbnM=" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126808">De-phantoming the npm ecosystem</a> - Using Nub to find phantom (undeclared) dependencies in the top 10k npm packages.</span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">📜 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/x0hph3ueqgm456hgul/aHR0cHM6Ly9ibG9nLm1hc3Rlci5kZXYvbmV3LXRoaW5ncy15b3Utc2hvdWxkLWtub3ctYWJvdXQtaHRtbC1oZXJlLWluLW1pZC0yMDI2Lw==" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126809">New Things You Should Know About HTML Here in Mid 2026</a> - Good overview of modern HTML from Chris Coyier.</span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">📦 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/6qhehoul9q43m8f9uk/aHR0cHM6Ly9wbnBtLmlvL2Jsb2cvcmVsZWFzZXMvMTIuNA==" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126810">pnpm 12.4 - Support for Rust and Python dependencies, new <code style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;color:green;font-family:monospace">pnpm pipeline</code> task runner</a> - Bold move: pnpm expands beyond JS and can now install Cargo crates and PyPI packages alongside npm deps. The ability to run cached task graphs makes it a lightweight Turborepo/Nx alternative.</span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">📦 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/kkhmh2unx7pokkfku7/aHR0cHM6Ly9kZXZlbG9wZXIuYXBwbGUuY29tL2RvY3VtZW50YXRpb24vc2FmYXJpLXJlbGVhc2Utbm90ZXMvc2FmYXJpLTI3LXJlbGVhc2Utbm90ZXM=" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126811">Safari 27 - Fix top-level await, <code style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;color:green;font-family:monospace">import defer</code>, customizable <code style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;color:green;font-family:monospace"><select></code>, <code style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;color:green;font-family:monospace">ariaNotify()</code>, CSS improvements, <code style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;color:green;font-family:monospace">ReadableStream</code> improvements, MCP server, JSPI, and more</a> - Major release! The ES module loader has been entirely rewritten, <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/58hvh8ug6ew4r6c7u4/aHR0cHM6Ly93ZWJraXQub3JnL2Jsb2cvMTgyMjcvZml4aW5nLXRvcC1sZXZlbC1hd2FpdC1pbi1zYWZhcmkv" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126812">fixing long-standing top-level await</a> bugs. JSPI (JavaScript Promise Integration for WebAssembly) is now available in all major browsers: an important primitive letting synchronous code compiled to Wasm (C++, Rust…) call async JS APIs. You can now <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/qvh8h8udkx3l93fguk/aHR0cHM6Ly9kZXZlbG9wZXIuYXBwbGUuY29tL2RvY3VtZW50YXRpb24vc2FmYXJpLWRldmVsb3Blci10b29scy9jb25uZWN0aW5nLWFuLWFpLWFnZW50LXRvLXNhZmFyaQ==" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126814">connect your AI agent to Safari</a> through the new MCP server.</span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">📦 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/9qhzhdud578e5kczu3/aHR0cHM6Ly9waGlsaXB3YWx0b24uY29tL2FydGljbGVzL21vZGVybi13ZWItdHlwZXMv" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126816">Modern Web Types</a> - TIL TypeScript only types DOM APIs shipped in 2+ browser engines. This lib lowers the threshold to 1 engine, letting you use the newest APIs as progressive enhancements without losing type-safety.</span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">📦 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/3ohphdu3pw8kpotpun/aHR0cHM6Ly9yYXBoYS5sYW5kL2ludHJvZHVjaW5nLW9qLw==" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126817">oj - The Vite dev server reimplemented in Rust</a> - This alternative offers different trade-offs. Will <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/n2hohquv7d4l7xt0ug/aHR0cHM6Ly9sb3ZhYmxlLmRldi9ibG9nL2Zhc3Rlci1wcmV2aWV3cy1vag==" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126818">soon power the Lovable sandbox previews</a>, resulting in 4x better memory usage and 2x faster cold starts.</span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">📦 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/wnh2h6uq0zdl0vtlux/aHR0cHM6Ly9kZXZmcmEubWUvcG9zdHMvcGx1Z2dhYmxlLWV4dGVuc2libGUtcGxheWZ1bC1kZXZ0b29scw==" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126820">Devframe - Framework for building pluggable, extensible, and playful DevTools</a> - It powers Vite DevTools and Nuxt DevTools v4, and there’s a Next.js DevTools prototype.</span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">📦 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/reh8h9um68po6es6u6/aHR0cHM6Ly96b2QuZGV2L2Jsb2cvem9kLTQtNg==" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126821">Zod 4.6 - <code style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;color:green;font-family:monospace">z.validate()</code>, <code style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;color:green;font-family:monospace">z.properties()</code>, <code style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;color:green;font-family:monospace">z.iban()</code>, <code style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;color:green;font-family:monospace">z.fromJSONSchema()</code> improvements</a> - The new <code style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;color:green;font-family:monospace">z.validate()</code> method fails fast, returns false on error, up to 35x faster than <code style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;color:green;font-family:monospace">z.safeParse()</code>.</span></li>
<li class="list_item" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding:5px 0"><span style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit">📦 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/08hwhgu2l84pl7spu5/aHR0cHM6Ly93ZWJwYWNrLmpzLm9yZy9ibG9nLzIwMjYtMDktMTQtd2VicGFjay01LTExMS8=" target="_blank" class="ck-link" rel="noopener noreferrer" style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126822">Webpack 5.111 - Stable ESM output, <code style="font-family:Helvetica, Arial, sans-serif;color:inherit;font-family:inherit;font-size:inherit;color:green;font-family:monospace">output.copy</code> for static files, CSS minimizer improvements</a></span></li>
</ul>
<table width="100%" border="0" cellspacing="0" cellpadding="0" style="font-family:Helvetica, Arial, sans-serif;text-align:center;table-layout:fixed;float:none" class="email-image"><tbody style="font-family:Helvetica, Arial, sans-serif"><tr style="font-family:Helvetica, Arial, sans-serif"><td align="center" style="font-family:Helvetica, Arial, sans-serif"><figure style="font-family:Helvetica, Arial, sans-serif;margin-top:12px;margin-bottom:12px;margin-left:0;margin-right:0;max-width:800px;width:100%"><div style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding-bottom:10px;display:block"><img src="https://thisweekinreact.com/emails/separators/christmas.png" alt="" height="auto" style="font-family:Helvetica, Arial, sans-serif;max-width:100%;height:auto;margin:0 auto;border-radius:0px 0px 0px 0px;max-width:100%;height:auto;object-fit:contain"></div>
<figcaption style="font-family:Helvetica, Arial, sans-serif;text-align:center;display:none"></figcaption></figure></td></tr></tbody></table>
<h2 class="" style="font-family:Helvetica, Arial, sans-serif;color:#333;font-size:30px">
<strong style="font-family:Helvetica, Arial, sans-serif;font-weight:bolder">🤭 </strong><u style="font-family:Helvetica, Arial, sans-serif"><strong style="font-family:Helvetica, Arial, sans-serif;font-weight:bolder">Fun</strong></u>
</h2>
<table width="100%" border="0" cellspacing="0" cellpadding="0" style="font-family:Helvetica, Arial, sans-serif;text-align:center;table-layout:fixed;float:none" class="email-image"><tbody style="font-family:Helvetica, Arial, sans-serif"><tr style="font-family:Helvetica, Arial, sans-serif"><td align="center" style="font-family:Helvetica, Arial, sans-serif"><figure style="font-family:Helvetica, Arial, sans-serif;margin-top:12px;margin-bottom:12px;margin-left:0;margin-right:0;max-width:100%;width:100%"><div style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding-bottom:10px;display:block"><img src="https://thisweekinreact.com/emails/issues/297/meme.jpg" alt="alt" width="100%" height="auto" style="font-family:Helvetica, Arial, sans-serif;max-width:100%;height:auto;margin:0 auto;border-radius:4px 4px 4px 4px;max-width:100%;width:100%;height:auto;object-fit:contain"></div>
<figcaption style="font-family:Helvetica, Arial, sans-serif;text-align:center;display:none"></figcaption></figure></td></tr></tbody></table>
<table width="100%" border="0" cellspacing="0" cellpadding="0" style="font-family:Helvetica, Arial, sans-serif;text-align:center;table-layout:fixed;float:none" class="email-image"><tbody style="font-family:Helvetica, Arial, sans-serif"><tr style="font-family:Helvetica, Arial, sans-serif"><td align="center" style="font-family:Helvetica, Arial, sans-serif"><figure style="font-family:Helvetica, Arial, sans-serif;margin-top:12px;margin-bottom:12px;margin-left:0;margin-right:0;max-width:100%;width:100%"><div style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;padding-bottom:10px;display:block"><img src="https://thisweekinreact.com/emails/issues/297/meme2.jpg" alt="alt" width="100%" height="auto" style="font-family:Helvetica, Arial, sans-serif;max-width:100%;height:auto;margin:0 auto;border-radius:4px 4px 4px 4px;max-width:100%;width:100%;height:auto;object-fit:contain"></div>
<figcaption style="font-family:Helvetica, Arial, sans-serif;text-align:center;display:none"></figcaption></figure></td></tr></tbody></table>
<p class="" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;margin-bottom:1em">See ya! 👋</p>
</td></tr></tbody></table>
<div class="footer-social" style="font-size:16px;line-height:1.4em;font-family:Helvetica, Arial, sans-serif;color:#333333;border-top:1px dotted #888;padding:20px 0px;padding-bottom:10px">
<table width="100%" border="0" cellspacing="0" cellpadding="0" style="font-family:Helvetica, Arial, sans-serif"><tr style="font-family:Helvetica, Arial, sans-serif"><td align="center" style="font-family:Helvetica, Arial, sans-serif">
<a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/n2hohquv7d4l0zu0ug/aHR0cHM6Ly94LmNvbS9zZWJhc3RpZW5sb3JiZXI=" style="font-family:Helvetica, Arial, sans-serif;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1;border-bottom:none;padding:0px 20px" url-id="1887126739"><img src="https://thisweekinreact.com/social/x.png" alt="X / Twitter link" style="font-family:Helvetica, Arial, sans-serif;max-width:100%;height:auto;margin:0 auto;width:48px;height:48px"></a>
<a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/8ghqh3uor487rgalu9/aHR0cHM6Ly93d3cubGlua2VkaW4uY29tL2luL3NlYmFzdGllbmxvcmJlci8=" style="font-family:Helvetica, Arial, sans-serif;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1;border-bottom:none;padding:0px 20px" url-id="1887126823"><img src="https://thisweekinreact.com/social/linkedin.png" alt="LinkedIn link" style="font-family:Helvetica, Arial, sans-serif;max-width:100%;height:auto;margin:0 auto;width:48px;height:48px"></a>
<a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/vqh3hmuow56qwpbwul/aHR0cHM6Ly93d3cuaW5zdGFncmFtLmNvbS90aGlzd2Vla2lucmVhY3Qv" style="font-family:Helvetica, Arial, sans-serif;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1;border-bottom:none;padding:0px 20px" url-id="1887126824"><img src="https://thisweekinreact.com/social/instagram.png" alt="Instagram link" style="font-family:Helvetica, Arial, sans-serif;max-width:100%;height:auto;margin:0 auto;width:48px;height:48px"></a>
</td></tr></table>
</div>
<div class="footer" style="font-size:16px;line-height:1.4em;color:#333333;border-top:1px dotted #888;padding:20px 0px;font-family:Helvetica, Arial, sans-serif;color:#aaa;font-size:14px;padding-bottom:10px">
<table width="100%" border="0" cellspacing="0" cellpadding="0" style="font-family:Helvetica, Arial, sans-serif"><tr style="font-family:Helvetica, Arial, sans-serif"><td align="center" style="font-family:Helvetica, Arial, sans-serif">
💔 <a href="https://76518bdd.unsubscribe.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065" style="font-family:Helvetica, Arial, sans-serif;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1">Unsubscribe</a> |
⚙️ <a href="https://preferences.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065" style="font-family:Helvetica, Arial, sans-serif;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1">Email Preferences</a> |
💸 <a href="https://76518bdd.click.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065/l2heh6ulxgpdxlhgu0/aHR0cHM6Ly90aGlzd2Vla2lucmVhY3QuY29tL3Nwb25zb3I=" style="font-family:Helvetica, Arial, sans-serif;text-decoration:none;border-bottom:1px solid #0875c1;color:#0875c1" url-id="1887126825">Advertise</a>
</td></tr></table>
</div>
</div>
<!--[if mso]>
</td></tr></table>
</center>
<![endif]-->
<!-- -->
<img src="https://76518bdd.open.convertkit-mail4.com/n4ugqg65xlcvhx43vrkb6h67eqq39ilhe3065" alt="" style="font-family:Helvetica, Arial, sans-serif">
</body>
</html>