<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
    <id>https://thisweekinreact.com/newsletter</id>
    <title>This Week In React - Newsletter</title>
    <updated>2026-04-22T00:00:00.000Z</updated>
    <generator>https://github.com/jpmonette/feed</generator>
    <link rel="alternate" href="https://thisweekinreact.com/newsletter"/>
    <subtitle>Weekly issues of the This Week In React curation newsletter</subtitle>
    <entry>
        <title type="html"><![CDATA[This Week In React #278: React Email, TSRX, ESLint plugin, Rspack RSC, TanStack, Hook Form | Vision Camera, Expo, Nano Icons, ExecuTorch, Argent, Audio API, CSS, RNSec | TypeScript Go, Node.js, Bun, Hono]]></title>
        <id>https://thisweekinreact.com/newsletter/278</id>
        <link href="https://thisweekinreact.com/newsletter/278"/>
        <updated>2026-04-22T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Hi everyone, Krzysztof and Filip from Software Mansion here 👋\!]]></summary>
        <content type="html"><![CDATA[<p>Hi everyone, Krzysztof and Filip from <a href="https://swmansion.com/" target="_blank" rel="noopener noreferrer">Software Mansion</a> here 👋!</p>
<p>Big releases anchor the week. React Email 6.0 consolidates a fragmented ecosystem into one package, unlocking an embeddable editor and more reliable HTML rendering across mailboxes.</p>
<p>On mobile, Marc Rousavy shipped VisionCamera v5 with a full Nitro Modules rewrite, Worklets integration, pro controls, and a modular plugin architecture.<br>
<!-- -->Heads up on the Vercel April 2026 incident: rotate your integration tokens if you use third-party integrations.</p>
<p>Also inside: Expo’s Series B, Seth Webster joining Expo, the Doctolib WebView-to-Native migration, and fresh releases from TanStack, React Hook Form, ExecuTorch, TS Go beta, Rspack RSC, and more.</p>
<p>Let’s dive in!</p>
<!-- -->
<p>As always, thanks for supporting us on your favorite platform:</p>
<ul>
<li>🦋 <a href="https://slo.im/last/b" target="_blank" rel="noopener noreferrer">Bluesky</a></li>
<li>✖️ <a href="https://slo.im/last/x" target="_blank" rel="noopener noreferrer">X / Twitter</a></li>
<li>👔 <a href="https://slo.im/last/l" target="_blank" rel="noopener noreferrer">LinkedIn</a></li>
<li>👽 <a href="https://slo.im/last/r" target="_blank" rel="noopener noreferrer">Reddit</a></li>
</ul>
<div class="card subscribeFormEmbed_aAcT"><p><strong>Don't miss the next email!</strong></p><div class="">
<script src="https://f.convertkit.com/ckjs/ck.5.js"></script>
      <form action="https://app.convertkit.com/forms/3472133/subscriptions" class="seva-form formkit-form" method="post" data-sv-form="3472133" data-uid="8d653b97b6" data-format="inline" data-version="5" data-options="{&quot;settings&quot;:{&quot;after_subscribe&quot;:{&quot;action&quot;:&quot;redirect&quot;,&quot;success_message&quot;:&quot;Success! Now check your email to confirm your subscription.&quot;,&quot;redirect_url&quot;:&quot;https://thisweekinreact.com/workflow/confirm-your-email&quot;},&quot;analytics&quot;:{&quot;google&quot;:null,&quot;fathom&quot;:null,&quot;facebook&quot;:null,&quot;segment&quot;:null,&quot;pinterest&quot;:null,&quot;sparkloop&quot;:null,&quot;googletagmanager&quot;:null},&quot;modal&quot;:{&quot;trigger&quot;:&quot;timer&quot;,&quot;scroll_percentage&quot;:null,&quot;timer&quot;:5,&quot;devices&quot;:&quot;all&quot;,&quot;show_once_every&quot;:15},&quot;powered_by&quot;:{&quot;show&quot;:false,&quot;url&quot;:&quot;https://convertkit.com/features/forms?lmref=d0748g&amp;utm_campaign=poweredby&amp;utm_content=form&amp;utm_medium=referral&amp;utm_source=dynamic&quot;},&quot;recaptcha&quot;:{&quot;enabled&quot;:false},&quot;return_visitor&quot;:{&quot;action&quot;:&quot;show&quot;,&quot;custom_content&quot;:&quot;&quot;},&quot;slide_in&quot;:{&quot;display_in&quot;:&quot;bottom_right&quot;,&quot;trigger&quot;:&quot;timer&quot;,&quot;scroll_percentage&quot;:null,&quot;timer&quot;:5,&quot;devices&quot;:&quot;all&quot;,&quot;show_once_every&quot;:15},&quot;sticky_bar&quot;:{&quot;display_in&quot;:&quot;top&quot;,&quot;trigger&quot;:&quot;timer&quot;,&quot;scroll_percentage&quot;:null,&quot;timer&quot;:5,&quot;devices&quot;:&quot;all&quot;,&quot;show_once_every&quot;:15}},&quot;version&quot;:&quot;5&quot;}" min-width="400 500 600 700 800"><div data-style="clean"><ul class="formkit-alert formkit-alert-error" data-element="errors" data-group="alert"></ul><div data-element="fields" data-stacked="false" class="seva-fields formkit-fields"><div class="formkit-field"><input class="formkit-input" name="email_address" aria-label="Email Address" placeholder="Email Address" required="" type="email" style="color: rgb(0, 0, 0); border-color: rgb(227, 227, 227); border-radius: 4px; font-weight: 700;"></div><button data-element="submit" class="formkit-submit formkit-submit" style="color: rgb(255, 255, 255); background-color: rgb(0, 54, 92); border-radius: 4px; font-weight: 700;"><div class="formkit-spinner"><div></div><div></div><div></div></div><span class="">Subscribe now!</span></button></div></div><style>.formkit-form[data-uid="8d653b97b6"] *{box-sizing:border-box}.formkit-form[data-uid="8d653b97b6"]{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.formkit-form[data-uid="8d653b97b6"] legend{font-size:inherit;border:none;margin-bottom:10px;padding:0;display:table;position:relative}.formkit-form[data-uid="8d653b97b6"] fieldset{border:0;min-width:0;margin:0;padding:.01em 0 0}.formkit-form[data-uid="8d653b97b6"] body:not(:-moz-handler-blocked) fieldset{display:table-cell}.formkit-form[data-uid="8d653b97b6"] h1,.formkit-form[data-uid="8d653b97b6"] h2,.formkit-form[data-uid="8d653b97b6"] h3,.formkit-form[data-uid="8d653b97b6"] h4,.formkit-form[data-uid="8d653b97b6"] h5,.formkit-form[data-uid="8d653b97b6"] h6{color:inherit;font-size:inherit;font-weight:inherit}.formkit-form[data-uid="8d653b97b6"] h2{margin:1em 0;font-size:1.5em}.formkit-form[data-uid="8d653b97b6"] h3{margin:1em 0;font-size:1.17em}.formkit-form[data-uid="8d653b97b6"] p{color:inherit;font-size:inherit;font-weight:inherit}.formkit-form[data-uid="8d653b97b6"] ol:not([template-default]),.formkit-form[data-uid="8d653b97b6"] ul:not([template-default]),.formkit-form[data-uid="8d653b97b6"] blockquote:not([template-default]){text-align:left}.formkit-form[data-uid="8d653b97b6"] p:not([template-default]),.formkit-form[data-uid="8d653b97b6"] hr:not([template-default]),.formkit-form[data-uid="8d653b97b6"] blockquote:not([template-default]),.formkit-form[data-uid="8d653b97b6"] ol:not([template-default]),.formkit-form[data-uid="8d653b97b6"] ul:not([template-default]){color:inherit;font-style:initial}.formkit-form[data-uid="8d653b97b6"] .ordered-list,.formkit-form[data-uid="8d653b97b6"] .unordered-list{padding-left:1em;list-style-position:outside!important}.formkit-form[data-uid="8d653b97b6"] .list-item{padding-left:0}.formkit-form[data-uid="8d653b97b6"][data-format=modal],.formkit-form[data-uid="8d653b97b6"][data-format=slide\ in],.formkit-form[data-uid="8d653b97b6"][data-format=sticky\ bar]{display:none}.formkit-sticky-bar .formkit-form[data-uid="8d653b97b6"][data-format=sticky\ bar]{display:block}.formkit-form[data-uid="8d653b97b6"] .formkit-input,.formkit-form[data-uid="8d653b97b6"] .formkit-select,.formkit-form[data-uid="8d653b97b6"] .formkit-checkboxes{width:100%}.formkit-form[data-uid="8d653b97b6"] .formkit-button,.formkit-form[data-uid="8d653b97b6"] .formkit-submit{color:#fff;cursor:pointer;text-align:center;cursor:pointer;vertical-align:middle;border:0;border-radius:5px;margin-bottom:15px;padding:0;font-size:15px;font-weight:500;display:inline-block;position:relative;overflow:hidden}.formkit-form[data-uid="8d653b97b6"] .formkit-button:hover,.formkit-form[data-uid="8d653b97b6"] .formkit-submit:hover,.formkit-form[data-uid="8d653b97b6"] .formkit-button:focus,.formkit-form[data-uid="8d653b97b6"] .formkit-submit:focus{outline:none}.formkit-form[data-uid="8d653b97b6"] .formkit-button:hover>span,.formkit-form[data-uid="8d653b97b6"] .formkit-submit:hover>span,.formkit-form[data-uid="8d653b97b6"] .formkit-button:focus>span,.formkit-form[data-uid="8d653b97b6"] .formkit-submit:focus>span{background-color:#0000001a}.formkit-form[data-uid="8d653b97b6"] .formkit-button>span,.formkit-form[data-uid="8d653b97b6"] .formkit-submit>span{padding:12px 24px;-webkit-transition:all .3s ease-in-out;transition:all .3s ease-in-out;display:block}.formkit-form[data-uid="8d653b97b6"] .formkit-input{background:#fff;border:1px solid #e3e3e3;-webkit-flex:1 0 auto;-ms-flex:1 0 auto;flex:1 0 auto;margin:0;padding:12px;font-size:15px;line-height:1.4;-webkit-transition:border-color .3s ease-out;transition:border-color .3s ease-out}.formkit-form[data-uid="8d653b97b6"] .formkit-input:focus{border-color:#1677be;outline:none;-webkit-transition:border-color .3s;transition:border-color .3s}.formkit-form[data-uid="8d653b97b6"] .formkit-input::-webkit-input-placeholder{color:inherit;opacity:.8}.formkit-form[data-uid="8d653b97b6"] .formkit-input::placeholder{color:inherit;opacity:.8}.formkit-form[data-uid="8d653b97b6"] .formkit-input:-ms-placeholder-shown{color:inherit;opacity:.8}.formkit-form[data-uid="8d653b97b6"] .formkit-input::placeholder{color:inherit;opacity:.8}.formkit-form[data-uid="8d653b97b6"] [data-group=dropdown]{width:100%;display:inline-block;position:relative}.formkit-form[data-uid="8d653b97b6"] [data-group=dropdown]:before{content:"";pointer-events:none;z-index:999;border:6px solid #0000;border-top-color:#4f4f4f;border-bottom-width:0;width:0;height:0;position:absolute;top:calc(50% - 2.5px);right:10px}.formkit-form[data-uid="8d653b97b6"] [data-group=dropdown] select{cursor:pointer;color:#333;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#fff;border:1px solid #e3e3e3;width:100%;height:auto;margin-bottom:0;padding:12px 25px 12px 12px;font-size:15px;line-height:1.4}.formkit-form[data-uid="8d653b97b6"] [data-group=dropdown] select:focus{outline:none}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes]{text-align:left;margin:0}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox]{margin-bottom:10px}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] *{cursor:pointer}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox]:last-of-type{margin-bottom:0}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] input[type=checkbox]{display:none}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] input[type=checkbox]+label:after{content:none}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] input[type=checkbox]:checked+label:after{content:"";border-color:#fff}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] input[type=checkbox]:checked+label:before{background:#10bf7a;border-color:#10bf7a}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] label{padding-left:28px;display:inline-block;position:relative}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] label:before,.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] label:after{content:"";display:inline-block;position:absolute}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] label:before{background:#fff;border:1px solid #e3e3e3;width:16px;height:16px;top:3px;left:0}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] label:after{border-bottom:2px solid #4d4d4d;border-left:2px solid #4d4d4d;width:8px;height:4px;top:8px;left:4px;-webkit-transform:rotate(-45deg);-ms-transform:rotate(-45deg);transform:rotate(-45deg)}.formkit-form[data-uid="8d653b97b6"] .formkit-alert{text-align:center;background:#f9fafb;border:1px solid #e3e3e3;border-radius:5px;-webkit-flex:1 0 auto;-ms-flex:1 0 auto;flex:1 0 auto;width:100%;margin:25px auto;padding:12px;list-style:none}.formkit-form[data-uid="8d653b97b6"] .formkit-alert:empty{display:none}.formkit-form[data-uid="8d653b97b6"] .formkit-alert-success{color:#0c905c;background:#d3fbeb;border-color:#10bf7a}.formkit-form[data-uid="8d653b97b6"] .formkit-alert-error{color:#ea4110;background:#fde8e2;border-color:#f2643b}.formkit-form[data-uid="8d653b97b6"] .formkit-spinner{text-align:center;width:0;height:0;margin:0 auto;-webkit-transition:all .3s ease-in-out;transition:all .3s ease-in-out;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;position:absolute;top:0;left:0;right:0;overflow:hidden}.formkit-form[data-uid="8d653b97b6"] .formkit-spinner>div{opacity:.3;background-color:#fff;border-radius:100%;width:12px;height:12px;margin:auto;-webkit-animation:1.4s ease-in-out infinite both formkit-bouncedelay-formkit-form-data-uid-8d653b97b6-;animation:1.4s ease-in-out infinite both formkit-bouncedelay-formkit-form-data-uid-8d653b97b6-;display:inline-block}.formkit-form[data-uid="8d653b97b6"] .formkit-spinner>div:first-child{-webkit-animation-delay:-.32s;animation-delay:-.32s}.formkit-form[data-uid="8d653b97b6"] .formkit-spinner>div:nth-child(2){-webkit-animation-delay:-.16s;animation-delay:-.16s}.formkit-form[data-uid="8d653b97b6"] .formkit-submit[data-active] .formkit-spinner{opacity:1;width:50px;height:100%}.formkit-form[data-uid="8d653b97b6"] .formkit-submit[data-active] .formkit-spinner~span{opacity:0}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by[data-active=false]{opacity:.35}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit-container{z-index:5;width:100%;margin:10px 0;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;position:relative}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit-container[data-active=false]{opacity:.35}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit{color:#373f45;cursor:pointer;opacity:.95;text-indent:100%;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-color:#fff;background-image:url("data:image/svg+xml;charset=utf8,%3Csvg width='162' height='20' viewBox='0 0 162 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M83.0561 15.2457C86.675 15.2457 89.4722 12.5154 89.4722 9.14749C89.4722 5.99211 86.8443 4.06563 85.1038 4.06563C82.6801 4.06563 80.7373 5.76407 80.4605 8.28551C80.4092 8.75244 80.0387 9.14403 79.5686 9.14069C78.7871 9.13509 77.6507 9.12841 76.9314 9.13092C76.6217 9.13199 76.3658 8.88106 76.381 8.57196C76.4895 6.38513 77.2218 4.3404 78.618 2.76974C80.1695 1.02445 82.4289 0 85.1038 0C89.5979 0 93.8406 4.07791 93.8406 9.14749C93.8406 14.7608 89.1832 19.3113 83.1517 19.3113C78.8502 19.3113 74.5179 16.5041 73.0053 12.5795C72.9999 12.565 72.9986 12.5492 73.0015 12.534C73.0218 12.4179 73.0617 12.3118 73.1011 12.2074C73.1583 12.0555 73.2143 11.907 73.2062 11.7359L73.18 11.1892C73.174 11.0569 73.2075 10.9258 73.2764 10.8127C73.3452 10.6995 73.4463 10.6094 73.5666 10.554L73.7852 10.4523C73.9077 10.3957 74.0148 10.3105 74.0976 10.204C74.1803 10.0974 74.2363 9.97252 74.2608 9.83983C74.3341 9.43894 74.6865 9.14749 75.0979 9.14749C75.7404 9.14749 76.299 9.57412 76.5088 10.1806C77.5188 13.1 79.1245 15.2457 83.0561 15.2457Z' fill='%23373F45'/%3E%3Cpath d='M155.758 6.91365C155.028 6.91365 154.804 6.47916 154.804 5.98857C154.804 5.46997 154.986 5.06348 155.758 5.06348C156.53 5.06348 156.712 5.46997 156.712 5.98857C156.712 6.47905 156.516 6.91365 155.758 6.91365ZM142.441 12.9304V9.32833L141.415 9.32323V8.90392C141.415 8.44719 141.786 8.07758 142.244 8.07986L142.441 8.08095V6.55306L144.082 6.09057V8.08073H145.569V8.50416C145.569 8.61242 145.548 8.71961 145.506 8.81961C145.465 8.91961 145.404 9.01047 145.328 9.08699C145.251 9.16351 145.16 9.2242 145.06 9.26559C144.96 9.30698 144.853 9.32826 144.745 9.32822H144.082V12.7201C144.082 13.2423 144.378 13.4256 144.76 13.4887C145.209 13.5629 145.583 13.888 145.583 14.343V14.9626C144.029 14.9626 142.441 14.8942 142.441 12.9304Z' fill='%23373F45'/%3E%3Cpath d='M110.058 7.92554C108.417 7.88344 106.396 8.92062 106.396 11.5137C106.396 14.0646 108.417 15.0738 110.058 15.0318C111.742 15.0738 113.748 14.0646 113.748 11.5137C113.748 8.92062 111.742 7.88344 110.058 7.92554ZM110.07 13.7586C108.878 13.7586 108.032 12.8905 108.032 11.461C108.032 10.1013 108.878 9.20569 110.071 9.20569C111.263 9.20569 112.101 10.0995 112.101 11.459C112.101 12.8887 111.263 13.7586 110.07 13.7586Z' fill='%23373F45'/%3E%3Cpath d='M118.06 7.94098C119.491 7.94098 120.978 8.33337 120.978 11.1366V14.893H120.063C119.608 14.893 119.238 14.524 119.238 14.0689V10.9965C119.238 9.66506 118.747 9.16047 117.891 9.16047C117.414 9.16047 116.797 9.52486 116.502 9.81915V14.069C116.502 14.1773 116.481 14.2845 116.44 14.3845C116.398 14.4845 116.337 14.5753 116.261 14.6519C116.184 14.7284 116.093 14.7891 115.993 14.8305C115.893 14.8719 115.786 14.8931 115.678 14.8931H114.847V8.10918H115.773C115.932 8.10914 116.087 8.16315 116.212 8.26242C116.337 8.36168 116.424 8.50033 116.46 8.65577C116.881 8.19328 117.428 7.94098 118.06 7.94098ZM122.854 8.09713C123.024 8.09708 123.19 8.1496 123.329 8.2475C123.468 8.34541 123.574 8.48391 123.631 8.64405L125.133 12.8486L126.635 8.64415C126.692 8.48402 126.798 8.34551 126.937 8.2476C127.076 8.1497 127.242 8.09718 127.412 8.09724H128.598L126.152 14.3567C126.091 14.5112 125.986 14.6439 125.849 14.7374C125.711 14.831 125.549 14.881 125.383 14.8809H124.333L121.668 8.09713H122.854Z' fill='%23373F45'/%3E%3Cpath d='M135.085 14.5514C134.566 14.7616 133.513 15.0416 132.418 15.0416C130.496 15.0416 129.024 13.9345 129.024 11.4396C129.024 9.19701 130.451 7.99792 132.191 7.99792C134.338 7.99792 135.254 9.4378 135.158 11.3979C135.139 11.8029 134.786 12.0983 134.38 12.0983H130.679C130.763 13.1916 131.562 13.7662 132.615 13.7662C133.028 13.7662 133.462 13.7452 133.983 13.6481C134.535 13.545 135.085 13.9375 135.085 14.4985V14.5514ZM133.673 10.949C133.785 9.87621 133.061 9.28752 132.191 9.28752C131.321 9.28752 130.734 9.93979 130.679 10.9489L133.673 10.949Z' fill='%23373F45'/%3E%3Cpath d='M137.345 8.11122C137.497 8.11118 137.645 8.16229 137.765 8.25635C137.884 8.35041 137.969 8.48197 138.005 8.62993C138.566 8.20932 139.268 7.94303 139.759 7.94303C139.801 7.94303 140.068 7.94303 140.489 7.99913V8.7265C140.489 9.11748 140.15 9.4147 139.759 9.4147C139.31 9.4147 138.651 9.5829 138.131 9.8773V14.8951H136.462V8.11112L137.345 8.11122ZM156.6 14.0508V8.09104H155.769C155.314 8.09104 154.944 8.45999 154.944 8.9151V14.8748H155.775C156.23 14.8748 156.6 14.5058 156.6 14.0508ZM158.857 12.9447V9.34254H157.749V8.91912C157.749 8.46401 158.118 8.09506 158.574 8.09506H158.857V6.56739L160.499 6.10479V8.09506H161.986V8.51848C161.986 8.97359 161.617 9.34254 161.161 9.34254H160.499V12.7345C160.499 13.2566 160.795 13.44 161.177 13.503C161.626 13.5774 162 13.9024 162 14.3574V14.977C160.446 14.977 158.857 14.9086 158.857 12.9447ZM98.1929 10.1124C98.2033 6.94046 100.598 5.16809 102.895 5.16809C104.171 5.16809 105.342 5.44285 106.304 6.12953L105.914 6.6631C105.654 7.02011 105.16 7.16194 104.749 6.99949C104.169 6.7702 103.622 6.7218 103.215 6.7218C101.335 6.7218 99.9169 7.92849 99.9068 10.1123C99.9169 12.2959 101.335 13.5201 103.215 13.5201C103.622 13.5201 104.169 13.4717 104.749 13.2424C105.16 13.0799 105.654 13.2046 105.914 13.5615L106.304 14.0952C105.342 14.7819 104.171 15.0566 102.895 15.0566C100.598 15.0566 98.2033 13.2842 98.1929 10.1124ZM147.619 5.21768C148.074 5.21768 148.444 5.58663 148.444 6.04174V9.81968L151.82 5.58131C151.897 5.47733 151.997 5.39282 152.112 5.3346C152.227 5.27638 152.355 5.24607 152.484 5.24611H153.984L150.166 10.0615L153.984 14.8749H152.484C152.355 14.8749 152.227 14.8446 152.112 14.7864C151.997 14.7281 151.897 14.6436 151.82 14.5397L148.444 10.3025V14.0508C148.444 14.5059 148.074 14.8749 147.619 14.8749H146.746V5.21768H147.619Z' fill='%23373F45'/%3E%3Cpath d='M0.773438 6.5752H2.68066C3.56543 6.5752 4.2041 6.7041 4.59668 6.96191C4.99219 7.21973 5.18994 7.62695 5.18994 8.18359C5.18994 8.55859 5.09326 8.87061 4.8999 9.11963C4.70654 9.36865 4.42822 9.52539 4.06494 9.58984V9.63379C4.51611 9.71875 4.84717 9.88721 5.05811 10.1392C5.27197 10.3882 5.37891 10.7266 5.37891 11.1543C5.37891 11.7314 5.17676 12.1841 4.77246 12.5122C4.37109 12.8374 3.81152 13 3.09375 13H0.773438V6.5752ZM1.82373 9.22949H2.83447C3.27393 9.22949 3.59473 9.16064 3.79688 9.02295C3.99902 8.88232 4.1001 8.64502 4.1001 8.31104C4.1001 8.00928 3.99023 7.79102 3.77051 7.65625C3.55371 7.52148 3.20801 7.4541 2.7334 7.4541H1.82373V9.22949ZM1.82373 10.082V12.1167H2.93994C3.37939 12.1167 3.71045 12.0332 3.93311 11.8662C4.15869 11.6963 4.27148 11.4297 4.27148 11.0664C4.27148 10.7324 4.15723 10.4849 3.92871 10.3237C3.7002 10.1626 3.35303 10.082 2.88721 10.082H1.82373Z' fill='%23373F45'/%3E%3Cpath d='M13.011 6.5752V10.7324C13.011 11.207 12.9084 11.623 12.7034 11.9805C12.5012 12.335 12.2068 12.6089 11.8201 12.8022C11.4363 12.9927 10.9763 13.0879 10.4402 13.0879C9.6433 13.0879 9.02368 12.877 8.5813 12.4551C8.13892 12.0332 7.91772 11.4531 7.91772 10.7148V6.5752H8.9724V10.6401C8.9724 11.1704 9.09546 11.5615 9.34155 11.8135C9.58765 12.0654 9.96557 12.1914 10.4753 12.1914C11.4656 12.1914 11.9607 11.6714 11.9607 10.6313V6.5752H13.011Z' fill='%23373F45'/%3E%3Cpath d='M15.9146 13V6.5752H16.9649V13H15.9146Z' fill='%23373F45'/%3E%3Cpath d='M19.9255 13V6.5752H20.9758V12.0991H23.696V13H19.9255Z' fill='%23373F45'/%3E%3Cpath d='M28.2828 13H27.2325V7.47607H25.3428V6.5752H30.1724V7.47607H28.2828V13Z' fill='%23373F45'/%3E%3Cpath d='M41.9472 13H40.8046L39.7148 9.16796C39.6679 9.00097 39.6093 8.76074 39.539 8.44727C39.4687 8.13086 39.4262 7.91113 39.4116 7.78809C39.3823 7.97559 39.3339 8.21875 39.2665 8.51758C39.2021 8.81641 39.1479 9.03905 39.1039 9.18554L38.0405 13H36.8979L36.0673 9.7832L35.2236 6.5752H36.2958L37.2143 10.3193C37.3578 10.9199 37.4604 11.4502 37.5219 11.9102C37.5541 11.6611 37.6025 11.3828 37.6669 11.0752C37.7314 10.7676 37.79 10.5186 37.8427 10.3281L38.8886 6.5752H39.9301L41.0024 10.3457C41.1049 10.6943 41.2133 11.2158 41.3276 11.9102C41.3715 11.4912 41.477 10.958 41.644 10.3105L42.558 6.5752H43.6215L41.9472 13Z' fill='%23373F45'/%3E%3Cpath d='M45.7957 13V6.5752H46.846V13H45.7957Z' fill='%23373F45'/%3E%3Cpath d='M52.0258 13H50.9755V7.47607H49.0859V6.5752H53.9155V7.47607H52.0258V13Z' fill='%23373F45'/%3E%3Cpath d='M61.2312 13H60.1765V10.104H57.2146V13H56.1643V6.5752H57.2146V9.20312H60.1765V6.5752H61.2312V13Z' fill='%23373F45'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;border:1px solid #dde2e7;border-radius:4px;align-items:center;width:190px;height:36px;margin:0 auto;padding:0;-webkit-text-decoration:none;text-decoration:none;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out;display:block;overflow:hidden}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit:hover,.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit:focus{opacity:1;background-color:#fff;-webkit-transform:scale(1.025)perspective(1px);-ms-transform:scale(1.025)perspective(1px);transform:scale(1.025)perspective(1px)}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit[data-variant=dark],.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit[data-variant=light]{background-color:#0000;border-color:#0000;width:166px}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit[data-variant=light]{color:#fff;background-image:url("data:image/svg+xml;charset=utf8,%3Csvg width='162' height='20' viewBox='0 0 162 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M83.0561 15.2457C86.675 15.2457 89.4722 12.5154 89.4722 9.14749C89.4722 5.99211 86.8443 4.06563 85.1038 4.06563C82.6801 4.06563 80.7373 5.76407 80.4605 8.28551C80.4092 8.75244 80.0387 9.14403 79.5686 9.14069C78.7871 9.13509 77.6507 9.12841 76.9314 9.13092C76.6217 9.13199 76.3658 8.88106 76.381 8.57196C76.4895 6.38513 77.2218 4.3404 78.618 2.76974C80.1695 1.02445 82.4289 0 85.1038 0C89.5979 0 93.8406 4.07791 93.8406 9.14749C93.8406 14.7608 89.1832 19.3113 83.1517 19.3113C78.8502 19.3113 74.5179 16.5041 73.0053 12.5795C72.9999 12.565 72.9986 12.5492 73.0015 12.534C73.0218 12.4179 73.0617 12.3118 73.1011 12.2074C73.1583 12.0555 73.2143 11.907 73.2062 11.7359L73.18 11.1892C73.174 11.0569 73.2075 10.9258 73.2764 10.8127C73.3452 10.6995 73.4463 10.6094 73.5666 10.554L73.7852 10.4523C73.9077 10.3957 74.0148 10.3105 74.0976 10.204C74.1803 10.0974 74.2363 9.97252 74.2608 9.83983C74.3341 9.43894 74.6865 9.14749 75.0979 9.14749C75.7404 9.14749 76.299 9.57412 76.5088 10.1806C77.5188 13.1 79.1245 15.2457 83.0561 15.2457Z' fill='white'/%3E%3Cpath d='M155.758 6.91365C155.028 6.91365 154.804 6.47916 154.804 5.98857C154.804 5.46997 154.986 5.06348 155.758 5.06348C156.53 5.06348 156.712 5.46997 156.712 5.98857C156.712 6.47905 156.516 6.91365 155.758 6.91365ZM142.441 12.9304V9.32833L141.415 9.32323V8.90392C141.415 8.44719 141.786 8.07758 142.244 8.07986L142.441 8.08095V6.55306L144.082 6.09057V8.08073H145.569V8.50416C145.569 8.61242 145.548 8.71961 145.506 8.81961C145.465 8.91961 145.404 9.01047 145.328 9.08699C145.251 9.16351 145.16 9.2242 145.06 9.26559C144.96 9.30698 144.853 9.32826 144.745 9.32822H144.082V12.7201C144.082 13.2423 144.378 13.4256 144.76 13.4887C145.209 13.5629 145.583 13.888 145.583 14.343V14.9626C144.029 14.9626 142.441 14.8942 142.441 12.9304Z' fill='white'/%3E%3Cpath d='M110.058 7.92554C108.417 7.88344 106.396 8.92062 106.396 11.5137C106.396 14.0646 108.417 15.0738 110.058 15.0318C111.742 15.0738 113.748 14.0646 113.748 11.5137C113.748 8.92062 111.742 7.88344 110.058 7.92554ZM110.07 13.7586C108.878 13.7586 108.032 12.8905 108.032 11.461C108.032 10.1013 108.878 9.20569 110.071 9.20569C111.263 9.20569 112.101 10.0995 112.101 11.459C112.101 12.8887 111.263 13.7586 110.07 13.7586Z' fill='white'/%3E%3Cpath d='M118.06 7.94098C119.491 7.94098 120.978 8.33337 120.978 11.1366V14.893H120.063C119.608 14.893 119.238 14.524 119.238 14.0689V10.9965C119.238 9.66506 118.747 9.16047 117.891 9.16047C117.414 9.16047 116.797 9.52486 116.502 9.81915V14.069C116.502 14.1773 116.481 14.2845 116.44 14.3845C116.398 14.4845 116.337 14.5753 116.261 14.6519C116.184 14.7284 116.093 14.7891 115.993 14.8305C115.893 14.8719 115.786 14.8931 115.678 14.8931H114.847V8.10918H115.773C115.932 8.10914 116.087 8.16315 116.212 8.26242C116.337 8.36168 116.424 8.50033 116.46 8.65577C116.881 8.19328 117.428 7.94098 118.06 7.94098ZM122.854 8.09713C123.024 8.09708 123.19 8.1496 123.329 8.2475C123.468 8.34541 123.574 8.48391 123.631 8.64405L125.133 12.8486L126.635 8.64415C126.692 8.48402 126.798 8.34551 126.937 8.2476C127.076 8.1497 127.242 8.09718 127.412 8.09724H128.598L126.152 14.3567C126.091 14.5112 125.986 14.6439 125.849 14.7374C125.711 14.831 125.549 14.881 125.383 14.8809H124.333L121.668 8.09713H122.854Z' fill='white'/%3E%3Cpath d='M135.085 14.5514C134.566 14.7616 133.513 15.0416 132.418 15.0416C130.496 15.0416 129.024 13.9345 129.024 11.4396C129.024 9.19701 130.451 7.99792 132.191 7.99792C134.338 7.99792 135.254 9.4378 135.158 11.3979C135.139 11.8029 134.786 12.0983 134.38 12.0983H130.679C130.763 13.1916 131.562 13.7662 132.615 13.7662C133.028 13.7662 133.462 13.7452 133.983 13.6481C134.535 13.545 135.085 13.9375 135.085 14.4985V14.5514ZM133.673 10.949C133.785 9.87621 133.061 9.28752 132.191 9.28752C131.321 9.28752 130.734 9.93979 130.679 10.9489L133.673 10.949Z' fill='white'/%3E%3Cpath d='M137.345 8.11122C137.497 8.11118 137.645 8.16229 137.765 8.25635C137.884 8.35041 137.969 8.48197 138.005 8.62993C138.566 8.20932 139.268 7.94303 139.759 7.94303C139.801 7.94303 140.068 7.94303 140.489 7.99913V8.7265C140.489 9.11748 140.15 9.4147 139.759 9.4147C139.31 9.4147 138.651 9.5829 138.131 9.8773V14.8951H136.462V8.11112L137.345 8.11122ZM156.6 14.0508V8.09104H155.769C155.314 8.09104 154.944 8.45999 154.944 8.9151V14.8748H155.775C156.23 14.8748 156.6 14.5058 156.6 14.0508ZM158.857 12.9447V9.34254H157.749V8.91912C157.749 8.46401 158.118 8.09506 158.574 8.09506H158.857V6.56739L160.499 6.10479V8.09506H161.986V8.51848C161.986 8.97359 161.617 9.34254 161.161 9.34254H160.499V12.7345C160.499 13.2566 160.795 13.44 161.177 13.503C161.626 13.5774 162 13.9024 162 14.3574V14.977C160.446 14.977 158.857 14.9086 158.857 12.9447ZM98.1929 10.1124C98.2033 6.94046 100.598 5.16809 102.895 5.16809C104.171 5.16809 105.342 5.44285 106.304 6.12953L105.914 6.6631C105.654 7.02011 105.16 7.16194 104.749 6.99949C104.169 6.7702 103.622 6.7218 103.215 6.7218C101.335 6.7218 99.9169 7.92849 99.9068 10.1123C99.9169 12.2959 101.335 13.5201 103.215 13.5201C103.622 13.5201 104.169 13.4717 104.749 13.2424C105.16 13.0799 105.654 13.2046 105.914 13.5615L106.304 14.0952C105.342 14.7819 104.171 15.0566 102.895 15.0566C100.598 15.0566 98.2033 13.2842 98.1929 10.1124ZM147.619 5.21768C148.074 5.21768 148.444 5.58663 148.444 6.04174V9.81968L151.82 5.58131C151.897 5.47733 151.997 5.39282 152.112 5.3346C152.227 5.27638 152.355 5.24607 152.484 5.24611H153.984L150.166 10.0615L153.984 14.8749H152.484C152.355 14.8749 152.227 14.8446 152.112 14.7864C151.997 14.7281 151.897 14.6436 151.82 14.5397L148.444 10.3025V14.0508C148.444 14.5059 148.074 14.8749 147.619 14.8749H146.746V5.21768H147.619Z' fill='white'/%3E%3Cpath d='M0.773438 6.5752H2.68066C3.56543 6.5752 4.2041 6.7041 4.59668 6.96191C4.99219 7.21973 5.18994 7.62695 5.18994 8.18359C5.18994 8.55859 5.09326 8.87061 4.8999 9.11963C4.70654 9.36865 4.42822 9.52539 4.06494 9.58984V9.63379C4.51611 9.71875 4.84717 9.88721 5.05811 10.1392C5.27197 10.3882 5.37891 10.7266 5.37891 11.1543C5.37891 11.7314 5.17676 12.1841 4.77246 12.5122C4.37109 12.8374 3.81152 13 3.09375 13H0.773438V6.5752ZM1.82373 9.22949H2.83447C3.27393 9.22949 3.59473 9.16064 3.79688 9.02295C3.99902 8.88232 4.1001 8.64502 4.1001 8.31104C4.1001 8.00928 3.99023 7.79102 3.77051 7.65625C3.55371 7.52148 3.20801 7.4541 2.7334 7.4541H1.82373V9.22949ZM1.82373 10.082V12.1167H2.93994C3.37939 12.1167 3.71045 12.0332 3.93311 11.8662C4.15869 11.6963 4.27148 11.4297 4.27148 11.0664C4.27148 10.7324 4.15723 10.4849 3.92871 10.3237C3.7002 10.1626 3.35303 10.082 2.88721 10.082H1.82373Z' fill='white'/%3E%3Cpath d='M13.011 6.5752V10.7324C13.011 11.207 12.9084 11.623 12.7034 11.9805C12.5012 12.335 12.2068 12.6089 11.8201 12.8022C11.4363 12.9927 10.9763 13.0879 10.4402 13.0879C9.6433 13.0879 9.02368 12.877 8.5813 12.4551C8.13892 12.0332 7.91772 11.4531 7.91772 10.7148V6.5752H8.9724V10.6401C8.9724 11.1704 9.09546 11.5615 9.34155 11.8135C9.58765 12.0654 9.96557 12.1914 10.4753 12.1914C11.4656 12.1914 11.9607 11.6714 11.9607 10.6313V6.5752H13.011Z' fill='white'/%3E%3Cpath d='M15.9146 13V6.5752H16.9649V13H15.9146Z' fill='white'/%3E%3Cpath d='M19.9255 13V6.5752H20.9758V12.0991H23.696V13H19.9255Z' fill='white'/%3E%3Cpath d='M28.2828 13H27.2325V7.47607H25.3428V6.5752H30.1724V7.47607H28.2828V13Z' fill='white'/%3E%3Cpath d='M41.9472 13H40.8046L39.7148 9.16796C39.6679 9.00097 39.6093 8.76074 39.539 8.44727C39.4687 8.13086 39.4262 7.91113 39.4116 7.78809C39.3823 7.97559 39.3339 8.21875 39.2665 8.51758C39.2021 8.81641 39.1479 9.03905 39.1039 9.18554L38.0405 13H36.8979L36.0673 9.7832L35.2236 6.5752H36.2958L37.2143 10.3193C37.3578 10.9199 37.4604 11.4502 37.5219 11.9102C37.5541 11.6611 37.6025 11.3828 37.6669 11.0752C37.7314 10.7676 37.79 10.5186 37.8427 10.3281L38.8886 6.5752H39.9301L41.0024 10.3457C41.1049 10.6943 41.2133 11.2158 41.3276 11.9102C41.3715 11.4912 41.477 10.958 41.644 10.3105L42.558 6.5752H43.6215L41.9472 13Z' fill='white'/%3E%3Cpath d='M45.7957 13V6.5752H46.846V13H45.7957Z' fill='white'/%3E%3Cpath d='M52.0258 13H50.9755V7.47607H49.0859V6.5752H53.9155V7.47607H52.0258V13Z' fill='white'/%3E%3Cpath d='M61.2312 13H60.1765V10.104H57.2146V13H56.1643V6.5752H57.2146V9.20312H60.1765V6.5752H61.2312V13Z' fill='white'/%3E%3C/svg%3E")}@-webkit-keyframes formkit-bouncedelay-formkit-form-data-uid-8d653b97b6-{0%,80%,to{-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0)}40%{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}@keyframes formkit-bouncedelay-formkit-form-data-uid-8d653b97b6-{0%,80%,to{-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0)}40%{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}.formkit-form[data-uid="8d653b97b6"] blockquote{border-left:5px solid #e1e1e1;margin:0 0 20px;padding:10px 20px}.formkit-form[data-uid="8d653b97b6"] .seva-custom-content{color:#fff;mix-blend-mode:difference;padding:15px;font-size:16px}.formkit-form[data-uid="8d653b97b6"]{max-width:700px}.formkit-form[data-uid="8d653b97b6"] [data-style=clean]{width:100%}.formkit-form[data-uid="8d653b97b6"] .formkit-fields{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;margin:0 auto;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.formkit-form[data-uid="8d653b97b6"] .formkit-field,.formkit-form[data-uid="8d653b97b6"] .formkit-submit{-webkit-flex:1 0 100%;-ms-flex:1 0 100%;flex:1 0 100%;margin:0 0 15px}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit-container{margin:0}.formkit-form[data-uid="8d653b97b6"] .formkit-submit{position:static}.formkit-form[data-uid="8d653b97b6"][min-width~="700"] [data-style=clean],.formkit-form[data-uid="8d653b97b6"][min-width~="800"] [data-style=clean]{padding:10px}.formkit-form[data-uid="8d653b97b6"][min-width~="700"] .formkit-fields[data-stacked=false],.formkit-form[data-uid="8d653b97b6"][min-width~="800"] .formkit-fields[data-stacked=false]{margin-left:-5px;margin-right:-5px}.formkit-form[data-uid="8d653b97b6"][min-width~="700"] .formkit-fields[data-stacked=false] .formkit-field,.formkit-form[data-uid="8d653b97b6"][min-width~="800"] .formkit-fields[data-stacked=false] .formkit-field,.formkit-form[data-uid="8d653b97b6"][min-width~="700"] .formkit-fields[data-stacked=false] .formkit-submit,.formkit-form[data-uid="8d653b97b6"][min-width~="800"] .formkit-fields[data-stacked=false] .formkit-submit{margin:0 5px 15px}.formkit-form[data-uid="8d653b97b6"][min-width~="700"] .formkit-fields[data-stacked=false] .formkit-field,.formkit-form[data-uid="8d653b97b6"][min-width~="800"] .formkit-fields[data-stacked=false] .formkit-field{-webkit-flex:100 auto;-ms-flex:100 auto;flex:100 auto}.formkit-form[data-uid="8d653b97b6"][min-width~="700"] .formkit-fields[data-stacked=false] .formkit-submit,.formkit-form[data-uid="8d653b97b6"][min-width~="800"] .formkit-fields[data-stacked=false] .formkit-submit{-webkit-flex:auto;-ms-flex:auto;flex:auto}</style></form>
</div><div><div class="quoteContainer_Karu"><figure class="tweetQuote_h8Rz"><blockquote><a href="https://twitter.com/TkDodo/status/1661337628875137027" target="_blank" rel="noreferrer nofollow">I'm constantly finding interesting things to learn in there.</a></blockquote><figcaption><a href="https://twitter.com/TkDodo" target="_blank" rel="noreferrer nofollow"><div class="avatar"><img alt="Dominik Dorfmeister" class="avatar__photo shadow--md avatarImg_b51M" src="https://unavatar.io/twitter/TkDodo?fallback=https://github.com/TkDodo.png"><div class="avatar__intro"><strong class="avatar__name"><cite>Dominik Dorfmeister</cite></strong><small class="avatar__subtitle" itemprop="description">Web Developer - React-Query maintainer</small></div></div></a></figcaption></figure></div></div></div>
<div role="separator" style="text-align:center;margin:10px 0"><img class="separator" src="https://thisweekinreact.com/emails/separators/christmas.png" width="600" height="64" style="width:100%;max-width:600px;margin:0 auto;object-fit:contain"></div>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="sponsor1">💸 Sponsor<a href="https://thisweekinreact.com/newsletter/278#sponsor1" class="hash-link" aria-label="Direct link to 💸 Sponsor" title="Direct link to 💸 Sponsor">​</a></h2>
<p><a href="https://www.meticulous.ai/?utm_source=thisweekinreact&amp;utm_medium=newsletter&amp;utm_campaign=26q1&amp;utm_content=2nd" target="_blank" rel="noopener noreferrer"><img decoding="async" loading="lazy" src="https://thisweekinreact.com/emails/issues/270/meticulous.jpg" alt="Still writing tests manually?" class="img_SS3x"></a></p>
<p><strong><a href="https://www.meticulous.ai/?utm_source=thisweekinreact&amp;utm_medium=newsletter&amp;utm_campaign=26q1&amp;utm_content=2nd" target="_blank" rel="noopener noreferrer">Still writing tests manually?</a></strong></p>
<p>Notion, Dropbox and LaunchDarkly&nbsp;have found a new testing paradigm - and they can't imagine working without it.&nbsp;Built by <a href="https://www.meticulous.ai/?utm_source=thisweekinreact&amp;utm_medium=newsletter&amp;utm_campaign=26q1&amp;utm_content=1st" target="_blank" rel="noopener noreferrer">ex-Palantir engineers</a>, Meticulous autonomously creates a continuously evolving suite of E2E UI tests that delivers <a href="https://www.meticulous.ai/?utm_source=thisweekinreact&amp;utm_medium=newsletter&amp;utm_campaign=26q1&amp;utm_content=1st" target="_blank" rel="noopener noreferrer">near-exhaustive coverage</a> with <em>zero developer effort</em> - impossible to deliver by any other means.&nbsp;</p>
<p>It works like magic in the background:</p>
<ul>
<li>Near-exhaustive coverage on every test run</li>
<li>No test creation</li>
<li><strong>No maintenance (seriously)</strong></li>
<li>Zero flakes (built on a deterministic browser)</li>
</ul>
<p><strong>🤨</strong> Curious? <a href="https://www.meticulous.ai/?utm_source=thisweekinreact&amp;utm_medium=newsletter&amp;utm_campaign=26q1&amp;utm_content=1st" target="_blank" rel="noopener noreferrer">Book in a time to learn more</a></p>
<div role="separator" style="text-align:center;margin:10px 0"><img class="separator" src="https://thisweekinreact.com/emails/separators/christmas.png" width="600" height="64" style="width:100%;max-width:600px;margin:0 auto;object-fit:contain"></div>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="react">⚛️ React<a href="https://thisweekinreact.com/newsletter/278#react" class="hash-link" aria-label="Direct link to ⚛️ React" title="Direct link to ⚛️ React">​</a></h2>
<p><a href="https://resend.com/blog/react-email-6" target="_blank" rel="noopener noreferrer"><img decoding="async" loading="lazy" src="https://thisweekinreact.com/emails/issues/278/react-email.jpg" alt="React Email 6.0" class="img_SS3x"></a></p>
<p><strong><a href="https://resend.com/blog/react-email-6" target="_blank" rel="noopener noreferrer">React Email 6.0</a></strong></p>
<p>React email matures with a major release that cleans up a fragmented ecosystem. It makes version management much easier and stops the CLI and components from getting out of sync.</p>
<p>Key technical shifts:</p>
<ul>
<li>Embeddable Editor: You can use the preview tool as a React component to show users how their emails will look directly in your own app.</li>
<li>Reliable HTML: The engine that turns React into email HTML handles more different mailboxes quirks.</li>
<li>Faster HMR: Faster switching between templates and preview, even with complex layouts</li>
</ul>
<p>Moving away from modularization into one big package is a big step toward making the library stable and more capable. While it might slightly increase bundle size, it enables complex features blocked before, like the embeddable preview and advanced layout transformations.</p>
<div role="separator" style="text-align:center;margin:10px 0"><img class="separator" src="https://thisweekinreact.com/emails/separators/christmas.png" width="600" height="64" style="width:100%;max-width:600px;margin:0 auto;object-fit:contain"></div>
<ul>
<li>💸 <a href="https://sentry.io/resources/nextjs-may-workshop/?utm_source=thisweekinreact&amp;utm_medium=paid-community&amp;utm_campaign=nextjs-fy27q1-nextjsworkshop&amp;utm_content=newsletter-react-link-register" target="_blank" rel="noopener noreferrer">Sentry - Stop flying blind in Next.js. This free workshop covers logs, tracing, and how to connect both in production. Register today.</a></li>
<li>🔐 <a href="https://vercel.com/kb/bulletin/vercel-april-2026-security-incident" target="_blank" rel="noopener noreferrer">Vercel April 2026 security incident</a> - A few environment variables were accidentally exposed because of a security breach linked to a third-party AI tool. Since some secrets are stored in plain text, it is recommended to rotate them manually as soon as possible.</li>
<li>🗓️ <a href="https://reactnorway.com/?utm_medium=social&amp;utm_source=ThisWeekReact" target="_blank" rel="noopener noreferrer">React Norway</a> - 🇳🇴 Oslo - 5 June. Check out the stellar lineup featuring Dominik Dorfmeister, Aurora Scharff, and Jack Herrington at the legendary Rockefeller music venue. -10% with code "TWIR".</li>
<li>📜 <a href="https://frontendmasters.com/blog/building-a-blog-in-tanstack-part-1-of-2/" target="_blank" rel="noopener noreferrer">Building a Blog in TanStack</a> - Building a markdown blog with TanStack Start, then going fully static via pre-rendering and static server functions to avoid Shiki's cold-start cost.</li>
<li>📜 <a href="https://developer.salesforce.com/blogs/2026/04/build-with-react-run-on-salesforce-introducing-salesforce-multi-framework" target="_blank" rel="noopener noreferrer">Build with React, Run on Salesforce: Introducing Salesforce Multi-Framework</a> - A story about the benefits of React that convinced Salesforce to drop their custom solution in favor of React development on their platform. Currently in Beta.</li>
<li>📜 <a href="https://frontendmasters.com/blog/ai-generated-ui-is-inaccessible-by-default/" target="_blank" rel="noopener noreferrer">AI-Generated UI Is Inaccessible by Default</a> - Common accessibility pitfalls in AI-generated code and ways to ensure correct standards through linting, testing and CI.</li>
<li>💸 <a href="https://pscale.link/rw" target="_blank" rel="noopener noreferrer">PlanetScale - Faster apps start with a faster database. Get started with the fastest benchmarked Postgres and MySQL.</a></li>
<li>📦 <a href="https://tsrx.dev/" target="_blank" rel="noopener noreferrer">TSRX - A TypeScript language extension for building declarative UIs</a> - A spiritual successor to JSX. A new framework-agnostic solution created by former React core team member Dominic Gannaway, can compile to React/Solid/Ripple.</li>
<li>📦 <a href="https://rspack.rs/blog/announcing-2-0" target="_blank" rel="noopener noreferrer">Rspack 2.0</a> - The Rust bundler keeps improving on performance and features while remaining compatible with webpack. This new major also includes experimental React Server Components support, with plans to add support for TanStack RSC.</li>
<li>📦 <a href="https://github.com/TanStack/store/releases/tag/%40tanstack/react-store%400.11.0" target="_blank" rel="noopener noreferrer">TanStack Store 0.11 - New <code>useAtom</code>, <code>useSelector</code>, and <code>createStoreContext</code> hooks</a> - <code>useStore</code> is now deprecated in favor of <code>useSelector</code>.</li>
<li>📦 <a href="https://github.com/facebook/react/releases/tag/eslint-plugin-react-hooks%407.1.0" target="_blank" rel="noopener noreferrer">ESlint Plugin React Hooks 7.1 - Support for ESLint v10, performance and linting improvements</a></li>
<li>📦 <a href="https://lingui.dev/blog/2026/04/22/announcing-lingui-6.0" target="_blank" rel="noopener noreferrer">Lingui 6.0 - i18n for React, RN, and more - Technical improvements and modernization</a></li>
<li>📦 <a href="https://github.com/react-hook-form/react-hook-form/releases/tag/v7.73.1" target="_blank" rel="noopener noreferrer">React Hook Form 7.73 - Memoized <code>submit</code>, faster <code>deepEqual</code>, enhanced type-safety for deeply nested fields</a></li>
<li>🎥 <a href="https://www.youtube.com/watch?v=OlViBcLX-fA" target="_blank" rel="noopener noreferrer">Ankita Kulkani - Next.js finally has Page Transitions Now</a></li>
</ul>
<div class="card subscribeFormEmbed_aAcT"><p><strong>Don't miss the next email!</strong></p><div class="">
<script src="https://f.convertkit.com/ckjs/ck.5.js"></script>
      <form action="https://app.convertkit.com/forms/3472133/subscriptions" class="seva-form formkit-form" method="post" data-sv-form="3472133" data-uid="8d653b97b6" data-format="inline" data-version="5" data-options="{&quot;settings&quot;:{&quot;after_subscribe&quot;:{&quot;action&quot;:&quot;redirect&quot;,&quot;success_message&quot;:&quot;Success! Now check your email to confirm your subscription.&quot;,&quot;redirect_url&quot;:&quot;https://thisweekinreact.com/workflow/confirm-your-email&quot;},&quot;analytics&quot;:{&quot;google&quot;:null,&quot;fathom&quot;:null,&quot;facebook&quot;:null,&quot;segment&quot;:null,&quot;pinterest&quot;:null,&quot;sparkloop&quot;:null,&quot;googletagmanager&quot;:null},&quot;modal&quot;:{&quot;trigger&quot;:&quot;timer&quot;,&quot;scroll_percentage&quot;:null,&quot;timer&quot;:5,&quot;devices&quot;:&quot;all&quot;,&quot;show_once_every&quot;:15},&quot;powered_by&quot;:{&quot;show&quot;:false,&quot;url&quot;:&quot;https://convertkit.com/features/forms?lmref=d0748g&amp;utm_campaign=poweredby&amp;utm_content=form&amp;utm_medium=referral&amp;utm_source=dynamic&quot;},&quot;recaptcha&quot;:{&quot;enabled&quot;:false},&quot;return_visitor&quot;:{&quot;action&quot;:&quot;show&quot;,&quot;custom_content&quot;:&quot;&quot;},&quot;slide_in&quot;:{&quot;display_in&quot;:&quot;bottom_right&quot;,&quot;trigger&quot;:&quot;timer&quot;,&quot;scroll_percentage&quot;:null,&quot;timer&quot;:5,&quot;devices&quot;:&quot;all&quot;,&quot;show_once_every&quot;:15},&quot;sticky_bar&quot;:{&quot;display_in&quot;:&quot;top&quot;,&quot;trigger&quot;:&quot;timer&quot;,&quot;scroll_percentage&quot;:null,&quot;timer&quot;:5,&quot;devices&quot;:&quot;all&quot;,&quot;show_once_every&quot;:15}},&quot;version&quot;:&quot;5&quot;}" min-width="400 500 600 700 800"><div data-style="clean"><ul class="formkit-alert formkit-alert-error" data-element="errors" data-group="alert"></ul><div data-element="fields" data-stacked="false" class="seva-fields formkit-fields"><div class="formkit-field"><input class="formkit-input" name="email_address" aria-label="Email Address" placeholder="Email Address" required="" type="email" style="color: rgb(0, 0, 0); border-color: rgb(227, 227, 227); border-radius: 4px; font-weight: 700;"></div><button data-element="submit" class="formkit-submit formkit-submit" style="color: rgb(255, 255, 255); background-color: rgb(0, 54, 92); border-radius: 4px; font-weight: 700;"><div class="formkit-spinner"><div></div><div></div><div></div></div><span class="">Subscribe now!</span></button></div></div><style>.formkit-form[data-uid="8d653b97b6"] *{box-sizing:border-box}.formkit-form[data-uid="8d653b97b6"]{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.formkit-form[data-uid="8d653b97b6"] legend{font-size:inherit;border:none;margin-bottom:10px;padding:0;display:table;position:relative}.formkit-form[data-uid="8d653b97b6"] fieldset{border:0;min-width:0;margin:0;padding:.01em 0 0}.formkit-form[data-uid="8d653b97b6"] body:not(:-moz-handler-blocked) fieldset{display:table-cell}.formkit-form[data-uid="8d653b97b6"] h1,.formkit-form[data-uid="8d653b97b6"] h2,.formkit-form[data-uid="8d653b97b6"] h3,.formkit-form[data-uid="8d653b97b6"] h4,.formkit-form[data-uid="8d653b97b6"] h5,.formkit-form[data-uid="8d653b97b6"] h6{color:inherit;font-size:inherit;font-weight:inherit}.formkit-form[data-uid="8d653b97b6"] h2{margin:1em 0;font-size:1.5em}.formkit-form[data-uid="8d653b97b6"] h3{margin:1em 0;font-size:1.17em}.formkit-form[data-uid="8d653b97b6"] p{color:inherit;font-size:inherit;font-weight:inherit}.formkit-form[data-uid="8d653b97b6"] ol:not([template-default]),.formkit-form[data-uid="8d653b97b6"] ul:not([template-default]),.formkit-form[data-uid="8d653b97b6"] blockquote:not([template-default]){text-align:left}.formkit-form[data-uid="8d653b97b6"] p:not([template-default]),.formkit-form[data-uid="8d653b97b6"] hr:not([template-default]),.formkit-form[data-uid="8d653b97b6"] blockquote:not([template-default]),.formkit-form[data-uid="8d653b97b6"] ol:not([template-default]),.formkit-form[data-uid="8d653b97b6"] ul:not([template-default]){color:inherit;font-style:initial}.formkit-form[data-uid="8d653b97b6"] .ordered-list,.formkit-form[data-uid="8d653b97b6"] .unordered-list{padding-left:1em;list-style-position:outside!important}.formkit-form[data-uid="8d653b97b6"] .list-item{padding-left:0}.formkit-form[data-uid="8d653b97b6"][data-format=modal],.formkit-form[data-uid="8d653b97b6"][data-format=slide\ in],.formkit-form[data-uid="8d653b97b6"][data-format=sticky\ bar]{display:none}.formkit-sticky-bar .formkit-form[data-uid="8d653b97b6"][data-format=sticky\ bar]{display:block}.formkit-form[data-uid="8d653b97b6"] .formkit-input,.formkit-form[data-uid="8d653b97b6"] .formkit-select,.formkit-form[data-uid="8d653b97b6"] .formkit-checkboxes{width:100%}.formkit-form[data-uid="8d653b97b6"] .formkit-button,.formkit-form[data-uid="8d653b97b6"] .formkit-submit{color:#fff;cursor:pointer;text-align:center;cursor:pointer;vertical-align:middle;border:0;border-radius:5px;margin-bottom:15px;padding:0;font-size:15px;font-weight:500;display:inline-block;position:relative;overflow:hidden}.formkit-form[data-uid="8d653b97b6"] .formkit-button:hover,.formkit-form[data-uid="8d653b97b6"] .formkit-submit:hover,.formkit-form[data-uid="8d653b97b6"] .formkit-button:focus,.formkit-form[data-uid="8d653b97b6"] .formkit-submit:focus{outline:none}.formkit-form[data-uid="8d653b97b6"] .formkit-button:hover>span,.formkit-form[data-uid="8d653b97b6"] .formkit-submit:hover>span,.formkit-form[data-uid="8d653b97b6"] .formkit-button:focus>span,.formkit-form[data-uid="8d653b97b6"] .formkit-submit:focus>span{background-color:#0000001a}.formkit-form[data-uid="8d653b97b6"] .formkit-button>span,.formkit-form[data-uid="8d653b97b6"] .formkit-submit>span{padding:12px 24px;-webkit-transition:all .3s ease-in-out;transition:all .3s ease-in-out;display:block}.formkit-form[data-uid="8d653b97b6"] .formkit-input{background:#fff;border:1px solid #e3e3e3;-webkit-flex:1 0 auto;-ms-flex:1 0 auto;flex:1 0 auto;margin:0;padding:12px;font-size:15px;line-height:1.4;-webkit-transition:border-color .3s ease-out;transition:border-color .3s ease-out}.formkit-form[data-uid="8d653b97b6"] .formkit-input:focus{border-color:#1677be;outline:none;-webkit-transition:border-color .3s;transition:border-color .3s}.formkit-form[data-uid="8d653b97b6"] .formkit-input::-webkit-input-placeholder{color:inherit;opacity:.8}.formkit-form[data-uid="8d653b97b6"] .formkit-input::placeholder{color:inherit;opacity:.8}.formkit-form[data-uid="8d653b97b6"] .formkit-input:-ms-placeholder-shown{color:inherit;opacity:.8}.formkit-form[data-uid="8d653b97b6"] .formkit-input::placeholder{color:inherit;opacity:.8}.formkit-form[data-uid="8d653b97b6"] [data-group=dropdown]{width:100%;display:inline-block;position:relative}.formkit-form[data-uid="8d653b97b6"] [data-group=dropdown]:before{content:"";pointer-events:none;z-index:999;border:6px solid #0000;border-top-color:#4f4f4f;border-bottom-width:0;width:0;height:0;position:absolute;top:calc(50% - 2.5px);right:10px}.formkit-form[data-uid="8d653b97b6"] [data-group=dropdown] select{cursor:pointer;color:#333;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#fff;border:1px solid #e3e3e3;width:100%;height:auto;margin-bottom:0;padding:12px 25px 12px 12px;font-size:15px;line-height:1.4}.formkit-form[data-uid="8d653b97b6"] [data-group=dropdown] select:focus{outline:none}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes]{text-align:left;margin:0}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox]{margin-bottom:10px}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] *{cursor:pointer}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox]:last-of-type{margin-bottom:0}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] input[type=checkbox]{display:none}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] input[type=checkbox]+label:after{content:none}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] input[type=checkbox]:checked+label:after{content:"";border-color:#fff}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] input[type=checkbox]:checked+label:before{background:#10bf7a;border-color:#10bf7a}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] label{padding-left:28px;display:inline-block;position:relative}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] label:before,.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] label:after{content:"";display:inline-block;position:absolute}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] label:before{background:#fff;border:1px solid #e3e3e3;width:16px;height:16px;top:3px;left:0}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] label:after{border-bottom:2px solid #4d4d4d;border-left:2px solid #4d4d4d;width:8px;height:4px;top:8px;left:4px;-webkit-transform:rotate(-45deg);-ms-transform:rotate(-45deg);transform:rotate(-45deg)}.formkit-form[data-uid="8d653b97b6"] .formkit-alert{text-align:center;background:#f9fafb;border:1px solid #e3e3e3;border-radius:5px;-webkit-flex:1 0 auto;-ms-flex:1 0 auto;flex:1 0 auto;width:100%;margin:25px auto;padding:12px;list-style:none}.formkit-form[data-uid="8d653b97b6"] .formkit-alert:empty{display:none}.formkit-form[data-uid="8d653b97b6"] .formkit-alert-success{color:#0c905c;background:#d3fbeb;border-color:#10bf7a}.formkit-form[data-uid="8d653b97b6"] .formkit-alert-error{color:#ea4110;background:#fde8e2;border-color:#f2643b}.formkit-form[data-uid="8d653b97b6"] .formkit-spinner{text-align:center;width:0;height:0;margin:0 auto;-webkit-transition:all .3s ease-in-out;transition:all .3s ease-in-out;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;position:absolute;top:0;left:0;right:0;overflow:hidden}.formkit-form[data-uid="8d653b97b6"] .formkit-spinner>div{opacity:.3;background-color:#fff;border-radius:100%;width:12px;height:12px;margin:auto;-webkit-animation:1.4s ease-in-out infinite both formkit-bouncedelay-formkit-form-data-uid-8d653b97b6-;animation:1.4s ease-in-out infinite both formkit-bouncedelay-formkit-form-data-uid-8d653b97b6-;display:inline-block}.formkit-form[data-uid="8d653b97b6"] .formkit-spinner>div:first-child{-webkit-animation-delay:-.32s;animation-delay:-.32s}.formkit-form[data-uid="8d653b97b6"] .formkit-spinner>div:nth-child(2){-webkit-animation-delay:-.16s;animation-delay:-.16s}.formkit-form[data-uid="8d653b97b6"] .formkit-submit[data-active] .formkit-spinner{opacity:1;width:50px;height:100%}.formkit-form[data-uid="8d653b97b6"] .formkit-submit[data-active] .formkit-spinner~span{opacity:0}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by[data-active=false]{opacity:.35}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit-container{z-index:5;width:100%;margin:10px 0;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;position:relative}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit-container[data-active=false]{opacity:.35}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit{color:#373f45;cursor:pointer;opacity:.95;text-indent:100%;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-color:#fff;background-image:url("data:image/svg+xml;charset=utf8,%3Csvg width='162' height='20' viewBox='0 0 162 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M83.0561 15.2457C86.675 15.2457 89.4722 12.5154 89.4722 9.14749C89.4722 5.99211 86.8443 4.06563 85.1038 4.06563C82.6801 4.06563 80.7373 5.76407 80.4605 8.28551C80.4092 8.75244 80.0387 9.14403 79.5686 9.14069C78.7871 9.13509 77.6507 9.12841 76.9314 9.13092C76.6217 9.13199 76.3658 8.88106 76.381 8.57196C76.4895 6.38513 77.2218 4.3404 78.618 2.76974C80.1695 1.02445 82.4289 0 85.1038 0C89.5979 0 93.8406 4.07791 93.8406 9.14749C93.8406 14.7608 89.1832 19.3113 83.1517 19.3113C78.8502 19.3113 74.5179 16.5041 73.0053 12.5795C72.9999 12.565 72.9986 12.5492 73.0015 12.534C73.0218 12.4179 73.0617 12.3118 73.1011 12.2074C73.1583 12.0555 73.2143 11.907 73.2062 11.7359L73.18 11.1892C73.174 11.0569 73.2075 10.9258 73.2764 10.8127C73.3452 10.6995 73.4463 10.6094 73.5666 10.554L73.7852 10.4523C73.9077 10.3957 74.0148 10.3105 74.0976 10.204C74.1803 10.0974 74.2363 9.97252 74.2608 9.83983C74.3341 9.43894 74.6865 9.14749 75.0979 9.14749C75.7404 9.14749 76.299 9.57412 76.5088 10.1806C77.5188 13.1 79.1245 15.2457 83.0561 15.2457Z' fill='%23373F45'/%3E%3Cpath d='M155.758 6.91365C155.028 6.91365 154.804 6.47916 154.804 5.98857C154.804 5.46997 154.986 5.06348 155.758 5.06348C156.53 5.06348 156.712 5.46997 156.712 5.98857C156.712 6.47905 156.516 6.91365 155.758 6.91365ZM142.441 12.9304V9.32833L141.415 9.32323V8.90392C141.415 8.44719 141.786 8.07758 142.244 8.07986L142.441 8.08095V6.55306L144.082 6.09057V8.08073H145.569V8.50416C145.569 8.61242 145.548 8.71961 145.506 8.81961C145.465 8.91961 145.404 9.01047 145.328 9.08699C145.251 9.16351 145.16 9.2242 145.06 9.26559C144.96 9.30698 144.853 9.32826 144.745 9.32822H144.082V12.7201C144.082 13.2423 144.378 13.4256 144.76 13.4887C145.209 13.5629 145.583 13.888 145.583 14.343V14.9626C144.029 14.9626 142.441 14.8942 142.441 12.9304Z' fill='%23373F45'/%3E%3Cpath d='M110.058 7.92554C108.417 7.88344 106.396 8.92062 106.396 11.5137C106.396 14.0646 108.417 15.0738 110.058 15.0318C111.742 15.0738 113.748 14.0646 113.748 11.5137C113.748 8.92062 111.742 7.88344 110.058 7.92554ZM110.07 13.7586C108.878 13.7586 108.032 12.8905 108.032 11.461C108.032 10.1013 108.878 9.20569 110.071 9.20569C111.263 9.20569 112.101 10.0995 112.101 11.459C112.101 12.8887 111.263 13.7586 110.07 13.7586Z' fill='%23373F45'/%3E%3Cpath d='M118.06 7.94098C119.491 7.94098 120.978 8.33337 120.978 11.1366V14.893H120.063C119.608 14.893 119.238 14.524 119.238 14.0689V10.9965C119.238 9.66506 118.747 9.16047 117.891 9.16047C117.414 9.16047 116.797 9.52486 116.502 9.81915V14.069C116.502 14.1773 116.481 14.2845 116.44 14.3845C116.398 14.4845 116.337 14.5753 116.261 14.6519C116.184 14.7284 116.093 14.7891 115.993 14.8305C115.893 14.8719 115.786 14.8931 115.678 14.8931H114.847V8.10918H115.773C115.932 8.10914 116.087 8.16315 116.212 8.26242C116.337 8.36168 116.424 8.50033 116.46 8.65577C116.881 8.19328 117.428 7.94098 118.06 7.94098ZM122.854 8.09713C123.024 8.09708 123.19 8.1496 123.329 8.2475C123.468 8.34541 123.574 8.48391 123.631 8.64405L125.133 12.8486L126.635 8.64415C126.692 8.48402 126.798 8.34551 126.937 8.2476C127.076 8.1497 127.242 8.09718 127.412 8.09724H128.598L126.152 14.3567C126.091 14.5112 125.986 14.6439 125.849 14.7374C125.711 14.831 125.549 14.881 125.383 14.8809H124.333L121.668 8.09713H122.854Z' fill='%23373F45'/%3E%3Cpath d='M135.085 14.5514C134.566 14.7616 133.513 15.0416 132.418 15.0416C130.496 15.0416 129.024 13.9345 129.024 11.4396C129.024 9.19701 130.451 7.99792 132.191 7.99792C134.338 7.99792 135.254 9.4378 135.158 11.3979C135.139 11.8029 134.786 12.0983 134.38 12.0983H130.679C130.763 13.1916 131.562 13.7662 132.615 13.7662C133.028 13.7662 133.462 13.7452 133.983 13.6481C134.535 13.545 135.085 13.9375 135.085 14.4985V14.5514ZM133.673 10.949C133.785 9.87621 133.061 9.28752 132.191 9.28752C131.321 9.28752 130.734 9.93979 130.679 10.9489L133.673 10.949Z' fill='%23373F45'/%3E%3Cpath d='M137.345 8.11122C137.497 8.11118 137.645 8.16229 137.765 8.25635C137.884 8.35041 137.969 8.48197 138.005 8.62993C138.566 8.20932 139.268 7.94303 139.759 7.94303C139.801 7.94303 140.068 7.94303 140.489 7.99913V8.7265C140.489 9.11748 140.15 9.4147 139.759 9.4147C139.31 9.4147 138.651 9.5829 138.131 9.8773V14.8951H136.462V8.11112L137.345 8.11122ZM156.6 14.0508V8.09104H155.769C155.314 8.09104 154.944 8.45999 154.944 8.9151V14.8748H155.775C156.23 14.8748 156.6 14.5058 156.6 14.0508ZM158.857 12.9447V9.34254H157.749V8.91912C157.749 8.46401 158.118 8.09506 158.574 8.09506H158.857V6.56739L160.499 6.10479V8.09506H161.986V8.51848C161.986 8.97359 161.617 9.34254 161.161 9.34254H160.499V12.7345C160.499 13.2566 160.795 13.44 161.177 13.503C161.626 13.5774 162 13.9024 162 14.3574V14.977C160.446 14.977 158.857 14.9086 158.857 12.9447ZM98.1929 10.1124C98.2033 6.94046 100.598 5.16809 102.895 5.16809C104.171 5.16809 105.342 5.44285 106.304 6.12953L105.914 6.6631C105.654 7.02011 105.16 7.16194 104.749 6.99949C104.169 6.7702 103.622 6.7218 103.215 6.7218C101.335 6.7218 99.9169 7.92849 99.9068 10.1123C99.9169 12.2959 101.335 13.5201 103.215 13.5201C103.622 13.5201 104.169 13.4717 104.749 13.2424C105.16 13.0799 105.654 13.2046 105.914 13.5615L106.304 14.0952C105.342 14.7819 104.171 15.0566 102.895 15.0566C100.598 15.0566 98.2033 13.2842 98.1929 10.1124ZM147.619 5.21768C148.074 5.21768 148.444 5.58663 148.444 6.04174V9.81968L151.82 5.58131C151.897 5.47733 151.997 5.39282 152.112 5.3346C152.227 5.27638 152.355 5.24607 152.484 5.24611H153.984L150.166 10.0615L153.984 14.8749H152.484C152.355 14.8749 152.227 14.8446 152.112 14.7864C151.997 14.7281 151.897 14.6436 151.82 14.5397L148.444 10.3025V14.0508C148.444 14.5059 148.074 14.8749 147.619 14.8749H146.746V5.21768H147.619Z' fill='%23373F45'/%3E%3Cpath d='M0.773438 6.5752H2.68066C3.56543 6.5752 4.2041 6.7041 4.59668 6.96191C4.99219 7.21973 5.18994 7.62695 5.18994 8.18359C5.18994 8.55859 5.09326 8.87061 4.8999 9.11963C4.70654 9.36865 4.42822 9.52539 4.06494 9.58984V9.63379C4.51611 9.71875 4.84717 9.88721 5.05811 10.1392C5.27197 10.3882 5.37891 10.7266 5.37891 11.1543C5.37891 11.7314 5.17676 12.1841 4.77246 12.5122C4.37109 12.8374 3.81152 13 3.09375 13H0.773438V6.5752ZM1.82373 9.22949H2.83447C3.27393 9.22949 3.59473 9.16064 3.79688 9.02295C3.99902 8.88232 4.1001 8.64502 4.1001 8.31104C4.1001 8.00928 3.99023 7.79102 3.77051 7.65625C3.55371 7.52148 3.20801 7.4541 2.7334 7.4541H1.82373V9.22949ZM1.82373 10.082V12.1167H2.93994C3.37939 12.1167 3.71045 12.0332 3.93311 11.8662C4.15869 11.6963 4.27148 11.4297 4.27148 11.0664C4.27148 10.7324 4.15723 10.4849 3.92871 10.3237C3.7002 10.1626 3.35303 10.082 2.88721 10.082H1.82373Z' fill='%23373F45'/%3E%3Cpath d='M13.011 6.5752V10.7324C13.011 11.207 12.9084 11.623 12.7034 11.9805C12.5012 12.335 12.2068 12.6089 11.8201 12.8022C11.4363 12.9927 10.9763 13.0879 10.4402 13.0879C9.6433 13.0879 9.02368 12.877 8.5813 12.4551C8.13892 12.0332 7.91772 11.4531 7.91772 10.7148V6.5752H8.9724V10.6401C8.9724 11.1704 9.09546 11.5615 9.34155 11.8135C9.58765 12.0654 9.96557 12.1914 10.4753 12.1914C11.4656 12.1914 11.9607 11.6714 11.9607 10.6313V6.5752H13.011Z' fill='%23373F45'/%3E%3Cpath d='M15.9146 13V6.5752H16.9649V13H15.9146Z' fill='%23373F45'/%3E%3Cpath d='M19.9255 13V6.5752H20.9758V12.0991H23.696V13H19.9255Z' fill='%23373F45'/%3E%3Cpath d='M28.2828 13H27.2325V7.47607H25.3428V6.5752H30.1724V7.47607H28.2828V13Z' fill='%23373F45'/%3E%3Cpath d='M41.9472 13H40.8046L39.7148 9.16796C39.6679 9.00097 39.6093 8.76074 39.539 8.44727C39.4687 8.13086 39.4262 7.91113 39.4116 7.78809C39.3823 7.97559 39.3339 8.21875 39.2665 8.51758C39.2021 8.81641 39.1479 9.03905 39.1039 9.18554L38.0405 13H36.8979L36.0673 9.7832L35.2236 6.5752H36.2958L37.2143 10.3193C37.3578 10.9199 37.4604 11.4502 37.5219 11.9102C37.5541 11.6611 37.6025 11.3828 37.6669 11.0752C37.7314 10.7676 37.79 10.5186 37.8427 10.3281L38.8886 6.5752H39.9301L41.0024 10.3457C41.1049 10.6943 41.2133 11.2158 41.3276 11.9102C41.3715 11.4912 41.477 10.958 41.644 10.3105L42.558 6.5752H43.6215L41.9472 13Z' fill='%23373F45'/%3E%3Cpath d='M45.7957 13V6.5752H46.846V13H45.7957Z' fill='%23373F45'/%3E%3Cpath d='M52.0258 13H50.9755V7.47607H49.0859V6.5752H53.9155V7.47607H52.0258V13Z' fill='%23373F45'/%3E%3Cpath d='M61.2312 13H60.1765V10.104H57.2146V13H56.1643V6.5752H57.2146V9.20312H60.1765V6.5752H61.2312V13Z' fill='%23373F45'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;border:1px solid #dde2e7;border-radius:4px;align-items:center;width:190px;height:36px;margin:0 auto;padding:0;-webkit-text-decoration:none;text-decoration:none;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out;display:block;overflow:hidden}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit:hover,.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit:focus{opacity:1;background-color:#fff;-webkit-transform:scale(1.025)perspective(1px);-ms-transform:scale(1.025)perspective(1px);transform:scale(1.025)perspective(1px)}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit[data-variant=dark],.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit[data-variant=light]{background-color:#0000;border-color:#0000;width:166px}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit[data-variant=light]{color:#fff;background-image:url("data:image/svg+xml;charset=utf8,%3Csvg width='162' height='20' viewBox='0 0 162 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M83.0561 15.2457C86.675 15.2457 89.4722 12.5154 89.4722 9.14749C89.4722 5.99211 86.8443 4.06563 85.1038 4.06563C82.6801 4.06563 80.7373 5.76407 80.4605 8.28551C80.4092 8.75244 80.0387 9.14403 79.5686 9.14069C78.7871 9.13509 77.6507 9.12841 76.9314 9.13092C76.6217 9.13199 76.3658 8.88106 76.381 8.57196C76.4895 6.38513 77.2218 4.3404 78.618 2.76974C80.1695 1.02445 82.4289 0 85.1038 0C89.5979 0 93.8406 4.07791 93.8406 9.14749C93.8406 14.7608 89.1832 19.3113 83.1517 19.3113C78.8502 19.3113 74.5179 16.5041 73.0053 12.5795C72.9999 12.565 72.9986 12.5492 73.0015 12.534C73.0218 12.4179 73.0617 12.3118 73.1011 12.2074C73.1583 12.0555 73.2143 11.907 73.2062 11.7359L73.18 11.1892C73.174 11.0569 73.2075 10.9258 73.2764 10.8127C73.3452 10.6995 73.4463 10.6094 73.5666 10.554L73.7852 10.4523C73.9077 10.3957 74.0148 10.3105 74.0976 10.204C74.1803 10.0974 74.2363 9.97252 74.2608 9.83983C74.3341 9.43894 74.6865 9.14749 75.0979 9.14749C75.7404 9.14749 76.299 9.57412 76.5088 10.1806C77.5188 13.1 79.1245 15.2457 83.0561 15.2457Z' fill='white'/%3E%3Cpath d='M155.758 6.91365C155.028 6.91365 154.804 6.47916 154.804 5.98857C154.804 5.46997 154.986 5.06348 155.758 5.06348C156.53 5.06348 156.712 5.46997 156.712 5.98857C156.712 6.47905 156.516 6.91365 155.758 6.91365ZM142.441 12.9304V9.32833L141.415 9.32323V8.90392C141.415 8.44719 141.786 8.07758 142.244 8.07986L142.441 8.08095V6.55306L144.082 6.09057V8.08073H145.569V8.50416C145.569 8.61242 145.548 8.71961 145.506 8.81961C145.465 8.91961 145.404 9.01047 145.328 9.08699C145.251 9.16351 145.16 9.2242 145.06 9.26559C144.96 9.30698 144.853 9.32826 144.745 9.32822H144.082V12.7201C144.082 13.2423 144.378 13.4256 144.76 13.4887C145.209 13.5629 145.583 13.888 145.583 14.343V14.9626C144.029 14.9626 142.441 14.8942 142.441 12.9304Z' fill='white'/%3E%3Cpath d='M110.058 7.92554C108.417 7.88344 106.396 8.92062 106.396 11.5137C106.396 14.0646 108.417 15.0738 110.058 15.0318C111.742 15.0738 113.748 14.0646 113.748 11.5137C113.748 8.92062 111.742 7.88344 110.058 7.92554ZM110.07 13.7586C108.878 13.7586 108.032 12.8905 108.032 11.461C108.032 10.1013 108.878 9.20569 110.071 9.20569C111.263 9.20569 112.101 10.0995 112.101 11.459C112.101 12.8887 111.263 13.7586 110.07 13.7586Z' fill='white'/%3E%3Cpath d='M118.06 7.94098C119.491 7.94098 120.978 8.33337 120.978 11.1366V14.893H120.063C119.608 14.893 119.238 14.524 119.238 14.0689V10.9965C119.238 9.66506 118.747 9.16047 117.891 9.16047C117.414 9.16047 116.797 9.52486 116.502 9.81915V14.069C116.502 14.1773 116.481 14.2845 116.44 14.3845C116.398 14.4845 116.337 14.5753 116.261 14.6519C116.184 14.7284 116.093 14.7891 115.993 14.8305C115.893 14.8719 115.786 14.8931 115.678 14.8931H114.847V8.10918H115.773C115.932 8.10914 116.087 8.16315 116.212 8.26242C116.337 8.36168 116.424 8.50033 116.46 8.65577C116.881 8.19328 117.428 7.94098 118.06 7.94098ZM122.854 8.09713C123.024 8.09708 123.19 8.1496 123.329 8.2475C123.468 8.34541 123.574 8.48391 123.631 8.64405L125.133 12.8486L126.635 8.64415C126.692 8.48402 126.798 8.34551 126.937 8.2476C127.076 8.1497 127.242 8.09718 127.412 8.09724H128.598L126.152 14.3567C126.091 14.5112 125.986 14.6439 125.849 14.7374C125.711 14.831 125.549 14.881 125.383 14.8809H124.333L121.668 8.09713H122.854Z' fill='white'/%3E%3Cpath d='M135.085 14.5514C134.566 14.7616 133.513 15.0416 132.418 15.0416C130.496 15.0416 129.024 13.9345 129.024 11.4396C129.024 9.19701 130.451 7.99792 132.191 7.99792C134.338 7.99792 135.254 9.4378 135.158 11.3979C135.139 11.8029 134.786 12.0983 134.38 12.0983H130.679C130.763 13.1916 131.562 13.7662 132.615 13.7662C133.028 13.7662 133.462 13.7452 133.983 13.6481C134.535 13.545 135.085 13.9375 135.085 14.4985V14.5514ZM133.673 10.949C133.785 9.87621 133.061 9.28752 132.191 9.28752C131.321 9.28752 130.734 9.93979 130.679 10.9489L133.673 10.949Z' fill='white'/%3E%3Cpath d='M137.345 8.11122C137.497 8.11118 137.645 8.16229 137.765 8.25635C137.884 8.35041 137.969 8.48197 138.005 8.62993C138.566 8.20932 139.268 7.94303 139.759 7.94303C139.801 7.94303 140.068 7.94303 140.489 7.99913V8.7265C140.489 9.11748 140.15 9.4147 139.759 9.4147C139.31 9.4147 138.651 9.5829 138.131 9.8773V14.8951H136.462V8.11112L137.345 8.11122ZM156.6 14.0508V8.09104H155.769C155.314 8.09104 154.944 8.45999 154.944 8.9151V14.8748H155.775C156.23 14.8748 156.6 14.5058 156.6 14.0508ZM158.857 12.9447V9.34254H157.749V8.91912C157.749 8.46401 158.118 8.09506 158.574 8.09506H158.857V6.56739L160.499 6.10479V8.09506H161.986V8.51848C161.986 8.97359 161.617 9.34254 161.161 9.34254H160.499V12.7345C160.499 13.2566 160.795 13.44 161.177 13.503C161.626 13.5774 162 13.9024 162 14.3574V14.977C160.446 14.977 158.857 14.9086 158.857 12.9447ZM98.1929 10.1124C98.2033 6.94046 100.598 5.16809 102.895 5.16809C104.171 5.16809 105.342 5.44285 106.304 6.12953L105.914 6.6631C105.654 7.02011 105.16 7.16194 104.749 6.99949C104.169 6.7702 103.622 6.7218 103.215 6.7218C101.335 6.7218 99.9169 7.92849 99.9068 10.1123C99.9169 12.2959 101.335 13.5201 103.215 13.5201C103.622 13.5201 104.169 13.4717 104.749 13.2424C105.16 13.0799 105.654 13.2046 105.914 13.5615L106.304 14.0952C105.342 14.7819 104.171 15.0566 102.895 15.0566C100.598 15.0566 98.2033 13.2842 98.1929 10.1124ZM147.619 5.21768C148.074 5.21768 148.444 5.58663 148.444 6.04174V9.81968L151.82 5.58131C151.897 5.47733 151.997 5.39282 152.112 5.3346C152.227 5.27638 152.355 5.24607 152.484 5.24611H153.984L150.166 10.0615L153.984 14.8749H152.484C152.355 14.8749 152.227 14.8446 152.112 14.7864C151.997 14.7281 151.897 14.6436 151.82 14.5397L148.444 10.3025V14.0508C148.444 14.5059 148.074 14.8749 147.619 14.8749H146.746V5.21768H147.619Z' fill='white'/%3E%3Cpath d='M0.773438 6.5752H2.68066C3.56543 6.5752 4.2041 6.7041 4.59668 6.96191C4.99219 7.21973 5.18994 7.62695 5.18994 8.18359C5.18994 8.55859 5.09326 8.87061 4.8999 9.11963C4.70654 9.36865 4.42822 9.52539 4.06494 9.58984V9.63379C4.51611 9.71875 4.84717 9.88721 5.05811 10.1392C5.27197 10.3882 5.37891 10.7266 5.37891 11.1543C5.37891 11.7314 5.17676 12.1841 4.77246 12.5122C4.37109 12.8374 3.81152 13 3.09375 13H0.773438V6.5752ZM1.82373 9.22949H2.83447C3.27393 9.22949 3.59473 9.16064 3.79688 9.02295C3.99902 8.88232 4.1001 8.64502 4.1001 8.31104C4.1001 8.00928 3.99023 7.79102 3.77051 7.65625C3.55371 7.52148 3.20801 7.4541 2.7334 7.4541H1.82373V9.22949ZM1.82373 10.082V12.1167H2.93994C3.37939 12.1167 3.71045 12.0332 3.93311 11.8662C4.15869 11.6963 4.27148 11.4297 4.27148 11.0664C4.27148 10.7324 4.15723 10.4849 3.92871 10.3237C3.7002 10.1626 3.35303 10.082 2.88721 10.082H1.82373Z' fill='white'/%3E%3Cpath d='M13.011 6.5752V10.7324C13.011 11.207 12.9084 11.623 12.7034 11.9805C12.5012 12.335 12.2068 12.6089 11.8201 12.8022C11.4363 12.9927 10.9763 13.0879 10.4402 13.0879C9.6433 13.0879 9.02368 12.877 8.5813 12.4551C8.13892 12.0332 7.91772 11.4531 7.91772 10.7148V6.5752H8.9724V10.6401C8.9724 11.1704 9.09546 11.5615 9.34155 11.8135C9.58765 12.0654 9.96557 12.1914 10.4753 12.1914C11.4656 12.1914 11.9607 11.6714 11.9607 10.6313V6.5752H13.011Z' fill='white'/%3E%3Cpath d='M15.9146 13V6.5752H16.9649V13H15.9146Z' fill='white'/%3E%3Cpath d='M19.9255 13V6.5752H20.9758V12.0991H23.696V13H19.9255Z' fill='white'/%3E%3Cpath d='M28.2828 13H27.2325V7.47607H25.3428V6.5752H30.1724V7.47607H28.2828V13Z' fill='white'/%3E%3Cpath d='M41.9472 13H40.8046L39.7148 9.16796C39.6679 9.00097 39.6093 8.76074 39.539 8.44727C39.4687 8.13086 39.4262 7.91113 39.4116 7.78809C39.3823 7.97559 39.3339 8.21875 39.2665 8.51758C39.2021 8.81641 39.1479 9.03905 39.1039 9.18554L38.0405 13H36.8979L36.0673 9.7832L35.2236 6.5752H36.2958L37.2143 10.3193C37.3578 10.9199 37.4604 11.4502 37.5219 11.9102C37.5541 11.6611 37.6025 11.3828 37.6669 11.0752C37.7314 10.7676 37.79 10.5186 37.8427 10.3281L38.8886 6.5752H39.9301L41.0024 10.3457C41.1049 10.6943 41.2133 11.2158 41.3276 11.9102C41.3715 11.4912 41.477 10.958 41.644 10.3105L42.558 6.5752H43.6215L41.9472 13Z' fill='white'/%3E%3Cpath d='M45.7957 13V6.5752H46.846V13H45.7957Z' fill='white'/%3E%3Cpath d='M52.0258 13H50.9755V7.47607H49.0859V6.5752H53.9155V7.47607H52.0258V13Z' fill='white'/%3E%3Cpath d='M61.2312 13H60.1765V10.104H57.2146V13H56.1643V6.5752H57.2146V9.20312H60.1765V6.5752H61.2312V13Z' fill='white'/%3E%3C/svg%3E")}@-webkit-keyframes formkit-bouncedelay-formkit-form-data-uid-8d653b97b6-{0%,80%,to{-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0)}40%{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}@keyframes formkit-bouncedelay-formkit-form-data-uid-8d653b97b6-{0%,80%,to{-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0)}40%{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}.formkit-form[data-uid="8d653b97b6"] blockquote{border-left:5px solid #e1e1e1;margin:0 0 20px;padding:10px 20px}.formkit-form[data-uid="8d653b97b6"] .seva-custom-content{color:#fff;mix-blend-mode:difference;padding:15px;font-size:16px}.formkit-form[data-uid="8d653b97b6"]{max-width:700px}.formkit-form[data-uid="8d653b97b6"] [data-style=clean]{width:100%}.formkit-form[data-uid="8d653b97b6"] .formkit-fields{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;margin:0 auto;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.formkit-form[data-uid="8d653b97b6"] .formkit-field,.formkit-form[data-uid="8d653b97b6"] .formkit-submit{-webkit-flex:1 0 100%;-ms-flex:1 0 100%;flex:1 0 100%;margin:0 0 15px}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit-container{margin:0}.formkit-form[data-uid="8d653b97b6"] .formkit-submit{position:static}.formkit-form[data-uid="8d653b97b6"][min-width~="700"] [data-style=clean],.formkit-form[data-uid="8d653b97b6"][min-width~="800"] [data-style=clean]{padding:10px}.formkit-form[data-uid="8d653b97b6"][min-width~="700"] .formkit-fields[data-stacked=false],.formkit-form[data-uid="8d653b97b6"][min-width~="800"] .formkit-fields[data-stacked=false]{margin-left:-5px;margin-right:-5px}.formkit-form[data-uid="8d653b97b6"][min-width~="700"] .formkit-fields[data-stacked=false] .formkit-field,.formkit-form[data-uid="8d653b97b6"][min-width~="800"] .formkit-fields[data-stacked=false] .formkit-field,.formkit-form[data-uid="8d653b97b6"][min-width~="700"] .formkit-fields[data-stacked=false] .formkit-submit,.formkit-form[data-uid="8d653b97b6"][min-width~="800"] .formkit-fields[data-stacked=false] .formkit-submit{margin:0 5px 15px}.formkit-form[data-uid="8d653b97b6"][min-width~="700"] .formkit-fields[data-stacked=false] .formkit-field,.formkit-form[data-uid="8d653b97b6"][min-width~="800"] .formkit-fields[data-stacked=false] .formkit-field{-webkit-flex:100 auto;-ms-flex:100 auto;flex:100 auto}.formkit-form[data-uid="8d653b97b6"][min-width~="700"] .formkit-fields[data-stacked=false] .formkit-submit,.formkit-form[data-uid="8d653b97b6"][min-width~="800"] .formkit-fields[data-stacked=false] .formkit-submit{-webkit-flex:auto;-ms-flex:auto;flex:auto}</style></form>
</div><div><div class="quoteContainer_Karu"><figure class="tweetQuote_h8Rz"><blockquote><a target="_blank" rel="noreferrer nofollow">It's exceptionally well curated, offers great insights and is well worth subscribing to!</a></blockquote><figcaption><a href="https://twitter.com/addyosmani" target="_blank" rel="noreferrer nofollow"><div class="avatar"><img alt="Addy Osmani" class="avatar__photo shadow--md avatarImg_b51M" src="https://unavatar.io/twitter/addyosmani?fallback=https://github.com/addyosmani.png"><div class="avatar__intro"><strong class="avatar__name"><cite>Addy Osmani</cite></strong><small class="avatar__subtitle" itemprop="description">Head of Chrome DX - Google</small></div></div></a></figcaption></figure></div></div></div>
<div role="separator" style="text-align:center;margin:10px 0"><img class="separator" src="https://thisweekinreact.com/emails/separators/christmas.png" width="600" height="64" style="width:100%;max-width:600px;margin:0 auto;object-fit:contain"></div>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="sponsor2">💸 Sponsor<a href="https://thisweekinreact.com/newsletter/278#sponsor2" class="hash-link" aria-label="Direct link to 💸 Sponsor" title="Direct link to 💸 Sponsor">​</a></h2>
<p><a href="https://svar.dev/react/gantt/?utm_source=thisweekinreact&amp;utm_medium=newsletter&amp;utm_campaign=apr22" target="_blank" rel="noopener noreferrer"><img decoding="async" loading="lazy" src="https://thisweekinreact.com/emails/issues/278/svar.jpg" alt="Build Gantt Charts in React – No JS Fluff" class="img_SS3x"></a></p>
<p><strong><a href="https://svar.dev/react/gantt/?utm_source=thisweekinreact&amp;utm_medium=newsletter&amp;utm_campaign=apr22" target="_blank" rel="noopener noreferrer">Build Gantt Charts in React – No JS Fluff</a></strong></p>
<p>Take control of your workflow with <strong>SVAR React Gantt</strong>, a native React component for task scheduling. Add custom Gantt diagrams to your apps – from simple timelines to complex projects with thousands of tasks.</p>
<ul>
<li><strong>Pure React architecture</strong> for full customization</li>
<li><strong>Drag-and-drop</strong> timeline and easy task editing</li>
<li><strong>Optimized rendering</strong> for large datasets</li>
<li><strong>Easy integration</strong> with Next.js and state libraries</li>
</ul>
<p>MIT-licensed core. PRO Edition for critical path, baselines, export, and auto-scheduling.</p>
<p>🛠️&nbsp; <a href="https://svar.dev/react/gantt/?utm_source=thisweekinreact&amp;utm_medium=newsletter&amp;utm_campaign=apr22" target="_blank" rel="noopener noreferrer">Learn more &amp; get started</a></p>
<div role="separator" style="text-align:center;margin:10px 0"><img class="separator" src="https://thisweekinreact.com/emails/separators/christmas.png" width="600" height="64" style="width:100%;max-width:600px;margin:0 auto;object-fit:contain"></div>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="react-native">📱 React-Native<a href="https://thisweekinreact.com/newsletter/278#react-native" class="hash-link" aria-label="Direct link to 📱 React-Native" title="Direct link to 📱 React-Native">​</a></h2>
<p><a href="https://blog.margelo.com/whats-new-in-visioncamera-v5" target="_blank" rel="noopener noreferrer"><img decoding="async" loading="lazy" src="https://thisweekinreact.com/emails/issues/278/vision-camera.jpg" alt="Vision Camera v5" class="img_SS3x"></a></p>
<p><strong><a href="https://blog.margelo.com/whats-new-in-visioncamera-v5" target="_blank" rel="noopener noreferrer">Vision Camera v5</a></strong></p>
<p>Marc Rousavy has released a massive update for VisionCamera. This major upgrade to the camera module includes many new features and improvements. Let’s take a closer look at the main highlights:</p>
<ul>
<li>Nitro Modules Backend - The complete rewrite using Nitro Modules results in significant performance improvements.</li>
<li>Worklets Integration: Now uses <a href="https://docs.swmansion.com/react-native-worklets/" target="_blank" rel="noopener noreferrer"><code>react-native-worklets</code></a> for smoother frame processing.</li>
<li>Pro Camera Controls - Full manual support for Exposure, Focus, and White Balance, plus RAW format support.</li>
<li>Depth &amp; Multi-Cam - You can now stream LiDAR/ToF data and record with front and back cameras simultaneously.</li>
</ul>
<p>This release comes with a new modular architecture - VisionCamera is no longer one giant package. You can now pick and choose only the plugins you need to keep your bundle size small:</p>
<ul>
<li><a href="https://github.com/mrousavy/react-native-vision-camera/tree/main/packages/react-native-vision-camera-skia" target="_blank" rel="noopener noreferrer"><code>react-native-vision-camera-skia</code></a> - Real-time filters and overlays</li>
<li><a href="https://github.com/mrousavy/react-native-vision-camera/tree/main/packages/react-native-vision-camera-barcode-scanner" target="_blank" rel="noopener noreferrer"><code>react-native-vision-camera-barcode-scanner</code></a> - MLKit integration out of the box</li>
<li><a href="https://github.com/mrousavy/react-native-vision-camera/tree/main/packages/react-native-vision-camera-resizer" target="_blank" rel="noopener noreferrer"><code>react-native-vision-camera-resizer</code></a> - GPU-accelerated resizing for ML tasks</li>
<li><a href="https://github.com/mrousavy/react-native-vision-camera/tree/main/packages/react-native-vision-camera-location" target="_blank" rel="noopener noreferrer"><code>react-native-vision-camera-location</code></a> - Automatic EXIF tagging</li>
</ul>
<div role="separator" style="text-align:center;margin:10px 0"><img class="separator" src="https://thisweekinreact.com/emails/separators/christmas.png" width="600" height="64" style="width:100%;max-width:600px;margin:0 auto;object-fit:contain"></div>
<ul>
<li>💸 <a href="https://go.posthog.com/twir-apr22" target="_blank" rel="noopener noreferrer">PostHog - A beginner's guide to testing AI agents</a></li>
<li>📣 <a href="https://expo.dev/blog/what-expo-s-series-b-funding-means-for-you" target="_blank" rel="noopener noreferrer">Expo raised $45 million in a Series B funding round.</a> They also <a href="https://x.com/expo/status/2044808498765353113" target="_blank" rel="noopener noreferrer">hired Seth Webster</a>, who previously led the React team and kickstarted the React Foundation. They are <a href="https://thenewstack.io/expo-bets-big-on-react-natives-agentic-future/" target="_blank" rel="noopener noreferrer">betting on an agentic future</a>, at a moment where the React Native ecosystem is expanding faster than ever.</li>
<li>🐦 <a href="https://x.com/wisniewskij514/status/2043720838646477185" target="_blank" rel="noopener noreferrer">The Reanimated team is working on pseudo-selector support for CSS animations</a></li>
<li>🐦 <a href="https://x.com/tomekzaw_/status/2044690191072309360" target="_blank" rel="noopener noreferrer">The Hermes team is working on JSI support for TypedArrays</a></li>
<li>🐦 Evan Bacon demod an <a href="https://x.com/Baconbrix/status/2045207510039322668%20" target="_blank" rel="noopener noreferrer">iOS simulator running inside of Codex desktop</a></li>
<li>🐦 <a href="https://x.com/JI/status/2044887303890583953" target="_blank" rel="noopener noreferrer">The Codex Expo plugin is now available</a></li>
<li>📜 <a href="https://blog.margelo.com/margelo-discord-react-native-performance" target="_blank" rel="noopener noreferrer">How Margelo Helped Discord Improve React Native's New Architecture Performance</a> -<br>
<!-- -->A deep dive into concrete low-level optimizations that made the Discord app. Some of these were upstreamed into Reanimated feature flags and the new Shared Animation Backend in React Native core.</li>
<li>📜 <a href="https://codewithbeto.dev/blog/building-expo-apps-locally" target="_blank" rel="noopener noreferrer">How to Build Your React Native App Locally (APK and .app)</a> - A technical walkthrough for generating local iOS and Android artifacts (.app/.apk) directly from an Expo project using xcodebuild and gradlew.</li>
<li>📜 <a href="https://medium.com/doctolib/rebuilding-the-doctolib-homepage-from-webview-to-native-27937ea71801" target="_blank" rel="noopener noreferrer">Rebuilding the Doctolib Homepage from Webview to Native</a> - Architectural migration from a WebView using a Backend for Frontend architecture. Time to Interactive dropped ~50% on both iOS and Android after the migration.</li>
<li>📜 <a href="https://swmansion.com/blog/on-device-ai-beats-cloud-for-tts-heres-why/" target="_blank" rel="noopener noreferrer">On-device AI vs Cloud TTS – Kokoro, react-native-executorch</a> - How on-device AI can reduce the cost of TTS without sacrificing quality.</li>
<li>📜 <a href="https://swmansion.com/blog/deferred-deep-linking-for-mobile-developers-with-detour/" target="_blank" rel="noopener noreferrer">Deferred Deep Linking for Mobile Developers with Detour</a> - An explanation of when deep linking is a relevant use case for your app and how Detour implements that concept.</li>
<li>📦 <a href="https://github.com/software-mansion-labs/react-native-nano-icons" target="_blank" rel="noopener noreferrer">Nano Icons - Use any SVG as font. High-performance, build-time icon font generation for React Native &amp; Expo</a></li>
<li>📦 <a href="https://github.com/software-mansion/argent" target="_blank" rel="noopener noreferrer">Argent - An agentic toolkit to control, debug, and profile iOS apps from Software Mansion</a></li>
<li>📦 <a href="https://github.com/software-mansion/react-native-executorch/releases/tag/v0.8.0" target="_blank" rel="noopener noreferrer">React Native ExecuTorch 0.8 - Vision Camera v5 integration, Vision Language Models support, Whisper model up to 3x faster</a></li>
<li>📦 <a href="https://github.com/maplibre/maplibre-react-native/releases/tag/v11.0.0" target="_blank" rel="noopener noreferrer">Maplibre 11.0 - Dropped legacy React architecture support; aligned API with MapLibre GL</a></li>
<li>📦 <a href="https://github.com/margelo/react-native-graph/releases/tag/v1.2.0" target="_blank" rel="noopener noreferrer">Graph 1.2 - Support for latest RN, Reanimated &amp; Skia</a></li>
<li>📦 <a href="https://github.com/mdjastrzebski/test-renderer/releases/tag/v1.0.0" target="_blank" rel="noopener noreferrer">Test Renderer 1.0 - Successor to the deprecated react-test-renderer</a> - Each minor version tracks React 19 line. 1.0.x for React 19.0, 1.1.x for 19.1 (Owner Stacks, CSS-safe useId), 1.2.x for 19.2 (&lt;Activity&gt;, useEffectEvent).</li>
<li>📦 <a href="https://github.com/adnxy/rnsec/blob/main/NEW_RULES_v1.3.0.md" target="_blank" rel="noopener noreferrer">RNSec 1.3 - New security rules and native code vulnerability scanner</a></li>
<li>📦 <a href="https://github.com/JubaKitiashvili/expo-pretext/releases/tag/v1.1.0" target="_blank" rel="noopener noreferrer">Expo Pretext 1.1 - Brings CSS <code>text-wrap: balance/pretty</code> to RN</a></li>
<li>📦 <a href="https://github.com/software-mansion/react-native-audio-api/releases/tag/0.12.0" target="_blank" rel="noopener noreferrer">Audio API 0.12 - Mac Catalyst support, Android ducking, universal resampler, rotating file writer for long recordings</a></li>
<li>🎥 <a href="https://www.youtube.com/watch?v=FXw9OoiddMg" target="_blank" rel="noopener noreferrer">Beto - Expo Router v55 Crash Course</a></li>
<li>🎙️ <a href="https://infinite.red/react-native-radio/rnr-360" target="_blank" rel="noopener noreferrer">RNR 360 - TanStack Native Router with Tanner Linsley</a></li>
</ul>
<div role="separator" style="text-align:center;margin:10px 0"><img class="separator" src="https://thisweekinreact.com/emails/separators/christmas.png" width="600" height="64" style="width:100%;max-width:600px;margin:0 auto;object-fit:contain"></div>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="other">🔀 Other<a href="https://thisweekinreact.com/newsletter/278#other" class="hash-link" aria-label="Direct link to 🔀 Other" title="Direct link to 🔀 Other">​</a></h2>
<ul>
<li>📜 <a href="https://frontendmasters.com/blog/building-a-ui-without-breakpoints/" target="_blank" rel="noopener noreferrer">Building a UI Without Breakpoints</a></li>
<li>📜 <a href="https://www.debugbear.com/blog/shopify-speed-optimization" target="_blank" rel="noopener noreferrer">Shopify Speed Optimization: Fixing The Real Bottlenecks</a></li>
<li>📜 <a href="https://dev.to/sylwia-lask/most-apps-are-slower-than-they-need-to-be-heres-why-live-demo-2hh8" target="_blank" rel="noopener noreferrer">Most Apps Are Slower Than They Need to Be</a></li>
<li>📦 <a href="https://devblogs.microsoft.com/typescript/announcing-typescript-7-0-beta/" target="_blank" rel="noopener noreferrer">TypeScript 7.0 Beta</a> - The first beta of the Go rewrite is out! It has great compatibility with 6.0 and should be ~10x faster thanks to parallelization.</li>
<li>📦 <a href="https://nodejs.org/en/blog/release/v24.15.0" target="_blank" rel="noopener noreferrer">Node.js 24.15 - require(esm) marked as stable</a></li>
<li>📦 <a href="https://bun.com/blog/bun-v1.3.13" target="_blank" rel="noopener noreferrer">Bun 1.3.13 - Fast parallel and isolated tests, faster bun install</a></li>
<li>📦 <a href="https://fast-check.dev/blog/2026/04/18/whats-new-in-fast-check-4-7-0/" target="_blank" rel="noopener noreferrer">Fast-Check 4.7 - Property-based testing framework</a></li>
<li>📦 <a href="https://github.com/honojs/node-server/releases/tag/v2.0.0" target="_blank" rel="noopener noreferrer">Hono Node.js Adapter 2.0 - Up to 2.3x faster</a></li>
</ul>
<div role="separator" style="text-align:center;margin:10px 0"><img class="separator" src="https://thisweekinreact.com/emails/separators/christmas.png" width="600" height="64" style="width:100%;max-width:600px;margin:0 auto;object-fit:contain"></div>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="fun">🤭 Fun<a href="https://thisweekinreact.com/newsletter/278#fun" class="hash-link" aria-label="Direct link to 🤭 Fun" title="Direct link to 🤭 Fun">​</a></h2>
<p><img decoding="async" loading="lazy" src="https://thisweekinreact.com/emails/issues/278/meme.jpg" alt="alt" class="img_SS3x"></p>
<p><img decoding="async" loading="lazy" src="https://thisweekinreact.com/emails/issues/278/meme2.jpg" alt="alt" class="img_SS3x"></p>
<p>See ya! 👋</p>]]></content>
        <author>
            <name>Krzysztof Piaskowy</name>
            <uri>https://x.com/piaskowyk</uri>
        </author>
        <author>
            <name>Filip Solecki</name>
            <uri>https://x.com/f_solecki</uri>
        </author>
    </entry>
    <entry>
        <title type="html"><![CDATA[This Week In React #277: TanStack RSC, React2Dos, Next.js, MUI, Base UI, Aria, StyledComponents, Storm | Pulsar, Nitro Fetch, Flow, Agent React DevTools, Pretext, Vector, Metro, Ease, Voltra | HTML-in-Canvas, Yuku, Bun, Syncpack]]></title>
        <id>https://thisweekinreact.com/newsletter/277</id>
        <link href="https://thisweekinreact.com/newsletter/277"/>
        <updated>2026-04-15T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Hi everyone, Seb and Jan here 👋\!]]></summary>
        <content type="html"><![CDATA[<p>Hi everyone, <a href="https://x.com/sebastienlorber" target="_blank" rel="noopener noreferrer">Seb</a> and <a href="https://x.com/jaworek3211" target="_blank" rel="noopener noreferrer">Jan</a> here 👋!</p>
<p>This week we finally have an experimental version of TanStack RSC! A new React DoS vulnerability affects Server Functions, so you probably need to upgrade React again. There are also important releases from the MUI team, and Styled Components is still alive!</p>
<p>On the React Native side, we got a new universal Haptics library, and a much faster fetch alternative. We heard VisionCamera 5 is around the corner.</p>
<p>Let's dive in!</p>
<!-- -->
<p>As always, thanks for supporting us on your favorite platform:</p>
<ul>
<li>🦋 <a href="https://slo.im/last/b" target="_blank" rel="noopener noreferrer">Bluesky</a></li>
<li>✖️ <a href="https://slo.im/last/x" target="_blank" rel="noopener noreferrer">X / Twitter</a></li>
<li>👔 <a href="https://slo.im/last/l" target="_blank" rel="noopener noreferrer">LinkedIn</a></li>
<li>👽 <a href="https://slo.im/last/r" target="_blank" rel="noopener noreferrer">Reddit</a></li>
</ul>
<div class="card subscribeFormEmbed_aAcT"><p><strong>Don't miss the next email!</strong></p><div class="">
<script src="https://f.convertkit.com/ckjs/ck.5.js"></script>
      <form action="https://app.convertkit.com/forms/3472133/subscriptions" class="seva-form formkit-form" method="post" data-sv-form="3472133" data-uid="8d653b97b6" data-format="inline" data-version="5" data-options="{&quot;settings&quot;:{&quot;after_subscribe&quot;:{&quot;action&quot;:&quot;redirect&quot;,&quot;success_message&quot;:&quot;Success! Now check your email to confirm your subscription.&quot;,&quot;redirect_url&quot;:&quot;https://thisweekinreact.com/workflow/confirm-your-email&quot;},&quot;analytics&quot;:{&quot;google&quot;:null,&quot;fathom&quot;:null,&quot;facebook&quot;:null,&quot;segment&quot;:null,&quot;pinterest&quot;:null,&quot;sparkloop&quot;:null,&quot;googletagmanager&quot;:null},&quot;modal&quot;:{&quot;trigger&quot;:&quot;timer&quot;,&quot;scroll_percentage&quot;:null,&quot;timer&quot;:5,&quot;devices&quot;:&quot;all&quot;,&quot;show_once_every&quot;:15},&quot;powered_by&quot;:{&quot;show&quot;:false,&quot;url&quot;:&quot;https://convertkit.com/features/forms?lmref=d0748g&amp;utm_campaign=poweredby&amp;utm_content=form&amp;utm_medium=referral&amp;utm_source=dynamic&quot;},&quot;recaptcha&quot;:{&quot;enabled&quot;:false},&quot;return_visitor&quot;:{&quot;action&quot;:&quot;show&quot;,&quot;custom_content&quot;:&quot;&quot;},&quot;slide_in&quot;:{&quot;display_in&quot;:&quot;bottom_right&quot;,&quot;trigger&quot;:&quot;timer&quot;,&quot;scroll_percentage&quot;:null,&quot;timer&quot;:5,&quot;devices&quot;:&quot;all&quot;,&quot;show_once_every&quot;:15},&quot;sticky_bar&quot;:{&quot;display_in&quot;:&quot;top&quot;,&quot;trigger&quot;:&quot;timer&quot;,&quot;scroll_percentage&quot;:null,&quot;timer&quot;:5,&quot;devices&quot;:&quot;all&quot;,&quot;show_once_every&quot;:15}},&quot;version&quot;:&quot;5&quot;}" min-width="400 500 600 700 800"><div data-style="clean"><ul class="formkit-alert formkit-alert-error" data-element="errors" data-group="alert"></ul><div data-element="fields" data-stacked="false" class="seva-fields formkit-fields"><div class="formkit-field"><input class="formkit-input" name="email_address" aria-label="Email Address" placeholder="Email Address" required="" type="email" style="color: rgb(0, 0, 0); border-color: rgb(227, 227, 227); border-radius: 4px; font-weight: 700;"></div><button data-element="submit" class="formkit-submit formkit-submit" style="color: rgb(255, 255, 255); background-color: rgb(0, 54, 92); border-radius: 4px; font-weight: 700;"><div class="formkit-spinner"><div></div><div></div><div></div></div><span class="">Subscribe now!</span></button></div></div><style>.formkit-form[data-uid="8d653b97b6"] *{box-sizing:border-box}.formkit-form[data-uid="8d653b97b6"]{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.formkit-form[data-uid="8d653b97b6"] legend{font-size:inherit;border:none;margin-bottom:10px;padding:0;display:table;position:relative}.formkit-form[data-uid="8d653b97b6"] fieldset{border:0;min-width:0;margin:0;padding:.01em 0 0}.formkit-form[data-uid="8d653b97b6"] body:not(:-moz-handler-blocked) fieldset{display:table-cell}.formkit-form[data-uid="8d653b97b6"] h1,.formkit-form[data-uid="8d653b97b6"] h2,.formkit-form[data-uid="8d653b97b6"] h3,.formkit-form[data-uid="8d653b97b6"] h4,.formkit-form[data-uid="8d653b97b6"] h5,.formkit-form[data-uid="8d653b97b6"] h6{color:inherit;font-size:inherit;font-weight:inherit}.formkit-form[data-uid="8d653b97b6"] h2{margin:1em 0;font-size:1.5em}.formkit-form[data-uid="8d653b97b6"] h3{margin:1em 0;font-size:1.17em}.formkit-form[data-uid="8d653b97b6"] p{color:inherit;font-size:inherit;font-weight:inherit}.formkit-form[data-uid="8d653b97b6"] ol:not([template-default]),.formkit-form[data-uid="8d653b97b6"] ul:not([template-default]),.formkit-form[data-uid="8d653b97b6"] blockquote:not([template-default]){text-align:left}.formkit-form[data-uid="8d653b97b6"] p:not([template-default]),.formkit-form[data-uid="8d653b97b6"] hr:not([template-default]),.formkit-form[data-uid="8d653b97b6"] blockquote:not([template-default]),.formkit-form[data-uid="8d653b97b6"] ol:not([template-default]),.formkit-form[data-uid="8d653b97b6"] ul:not([template-default]){color:inherit;font-style:initial}.formkit-form[data-uid="8d653b97b6"] .ordered-list,.formkit-form[data-uid="8d653b97b6"] .unordered-list{padding-left:1em;list-style-position:outside!important}.formkit-form[data-uid="8d653b97b6"] .list-item{padding-left:0}.formkit-form[data-uid="8d653b97b6"][data-format=modal],.formkit-form[data-uid="8d653b97b6"][data-format=slide\ in],.formkit-form[data-uid="8d653b97b6"][data-format=sticky\ bar]{display:none}.formkit-sticky-bar .formkit-form[data-uid="8d653b97b6"][data-format=sticky\ bar]{display:block}.formkit-form[data-uid="8d653b97b6"] .formkit-input,.formkit-form[data-uid="8d653b97b6"] .formkit-select,.formkit-form[data-uid="8d653b97b6"] .formkit-checkboxes{width:100%}.formkit-form[data-uid="8d653b97b6"] .formkit-button,.formkit-form[data-uid="8d653b97b6"] .formkit-submit{color:#fff;cursor:pointer;text-align:center;cursor:pointer;vertical-align:middle;border:0;border-radius:5px;margin-bottom:15px;padding:0;font-size:15px;font-weight:500;display:inline-block;position:relative;overflow:hidden}.formkit-form[data-uid="8d653b97b6"] .formkit-button:hover,.formkit-form[data-uid="8d653b97b6"] .formkit-submit:hover,.formkit-form[data-uid="8d653b97b6"] .formkit-button:focus,.formkit-form[data-uid="8d653b97b6"] .formkit-submit:focus{outline:none}.formkit-form[data-uid="8d653b97b6"] .formkit-button:hover>span,.formkit-form[data-uid="8d653b97b6"] .formkit-submit:hover>span,.formkit-form[data-uid="8d653b97b6"] .formkit-button:focus>span,.formkit-form[data-uid="8d653b97b6"] .formkit-submit:focus>span{background-color:#0000001a}.formkit-form[data-uid="8d653b97b6"] .formkit-button>span,.formkit-form[data-uid="8d653b97b6"] .formkit-submit>span{padding:12px 24px;-webkit-transition:all .3s ease-in-out;transition:all .3s ease-in-out;display:block}.formkit-form[data-uid="8d653b97b6"] .formkit-input{background:#fff;border:1px solid #e3e3e3;-webkit-flex:1 0 auto;-ms-flex:1 0 auto;flex:1 0 auto;margin:0;padding:12px;font-size:15px;line-height:1.4;-webkit-transition:border-color .3s ease-out;transition:border-color .3s ease-out}.formkit-form[data-uid="8d653b97b6"] .formkit-input:focus{border-color:#1677be;outline:none;-webkit-transition:border-color .3s;transition:border-color .3s}.formkit-form[data-uid="8d653b97b6"] .formkit-input::-webkit-input-placeholder{color:inherit;opacity:.8}.formkit-form[data-uid="8d653b97b6"] .formkit-input::placeholder{color:inherit;opacity:.8}.formkit-form[data-uid="8d653b97b6"] .formkit-input:-ms-placeholder-shown{color:inherit;opacity:.8}.formkit-form[data-uid="8d653b97b6"] .formkit-input::placeholder{color:inherit;opacity:.8}.formkit-form[data-uid="8d653b97b6"] [data-group=dropdown]{width:100%;display:inline-block;position:relative}.formkit-form[data-uid="8d653b97b6"] [data-group=dropdown]:before{content:"";pointer-events:none;z-index:999;border:6px solid #0000;border-top-color:#4f4f4f;border-bottom-width:0;width:0;height:0;position:absolute;top:calc(50% - 2.5px);right:10px}.formkit-form[data-uid="8d653b97b6"] [data-group=dropdown] select{cursor:pointer;color:#333;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#fff;border:1px solid #e3e3e3;width:100%;height:auto;margin-bottom:0;padding:12px 25px 12px 12px;font-size:15px;line-height:1.4}.formkit-form[data-uid="8d653b97b6"] [data-group=dropdown] select:focus{outline:none}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes]{text-align:left;margin:0}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox]{margin-bottom:10px}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] *{cursor:pointer}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox]:last-of-type{margin-bottom:0}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] input[type=checkbox]{display:none}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] input[type=checkbox]+label:after{content:none}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] input[type=checkbox]:checked+label:after{content:"";border-color:#fff}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] input[type=checkbox]:checked+label:before{background:#10bf7a;border-color:#10bf7a}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] label{padding-left:28px;display:inline-block;position:relative}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] label:before,.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] label:after{content:"";display:inline-block;position:absolute}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] label:before{background:#fff;border:1px solid #e3e3e3;width:16px;height:16px;top:3px;left:0}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] label:after{border-bottom:2px solid #4d4d4d;border-left:2px solid #4d4d4d;width:8px;height:4px;top:8px;left:4px;-webkit-transform:rotate(-45deg);-ms-transform:rotate(-45deg);transform:rotate(-45deg)}.formkit-form[data-uid="8d653b97b6"] .formkit-alert{text-align:center;background:#f9fafb;border:1px solid #e3e3e3;border-radius:5px;-webkit-flex:1 0 auto;-ms-flex:1 0 auto;flex:1 0 auto;width:100%;margin:25px auto;padding:12px;list-style:none}.formkit-form[data-uid="8d653b97b6"] .formkit-alert:empty{display:none}.formkit-form[data-uid="8d653b97b6"] .formkit-alert-success{color:#0c905c;background:#d3fbeb;border-color:#10bf7a}.formkit-form[data-uid="8d653b97b6"] .formkit-alert-error{color:#ea4110;background:#fde8e2;border-color:#f2643b}.formkit-form[data-uid="8d653b97b6"] .formkit-spinner{text-align:center;width:0;height:0;margin:0 auto;-webkit-transition:all .3s ease-in-out;transition:all .3s ease-in-out;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;position:absolute;top:0;left:0;right:0;overflow:hidden}.formkit-form[data-uid="8d653b97b6"] .formkit-spinner>div{opacity:.3;background-color:#fff;border-radius:100%;width:12px;height:12px;margin:auto;-webkit-animation:1.4s ease-in-out infinite both formkit-bouncedelay-formkit-form-data-uid-8d653b97b6-;animation:1.4s ease-in-out infinite both formkit-bouncedelay-formkit-form-data-uid-8d653b97b6-;display:inline-block}.formkit-form[data-uid="8d653b97b6"] .formkit-spinner>div:first-child{-webkit-animation-delay:-.32s;animation-delay:-.32s}.formkit-form[data-uid="8d653b97b6"] .formkit-spinner>div:nth-child(2){-webkit-animation-delay:-.16s;animation-delay:-.16s}.formkit-form[data-uid="8d653b97b6"] .formkit-submit[data-active] .formkit-spinner{opacity:1;width:50px;height:100%}.formkit-form[data-uid="8d653b97b6"] .formkit-submit[data-active] .formkit-spinner~span{opacity:0}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by[data-active=false]{opacity:.35}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit-container{z-index:5;width:100%;margin:10px 0;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;position:relative}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit-container[data-active=false]{opacity:.35}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit{color:#373f45;cursor:pointer;opacity:.95;text-indent:100%;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-color:#fff;background-image:url("data:image/svg+xml;charset=utf8,%3Csvg width='162' height='20' viewBox='0 0 162 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M83.0561 15.2457C86.675 15.2457 89.4722 12.5154 89.4722 9.14749C89.4722 5.99211 86.8443 4.06563 85.1038 4.06563C82.6801 4.06563 80.7373 5.76407 80.4605 8.28551C80.4092 8.75244 80.0387 9.14403 79.5686 9.14069C78.7871 9.13509 77.6507 9.12841 76.9314 9.13092C76.6217 9.13199 76.3658 8.88106 76.381 8.57196C76.4895 6.38513 77.2218 4.3404 78.618 2.76974C80.1695 1.02445 82.4289 0 85.1038 0C89.5979 0 93.8406 4.07791 93.8406 9.14749C93.8406 14.7608 89.1832 19.3113 83.1517 19.3113C78.8502 19.3113 74.5179 16.5041 73.0053 12.5795C72.9999 12.565 72.9986 12.5492 73.0015 12.534C73.0218 12.4179 73.0617 12.3118 73.1011 12.2074C73.1583 12.0555 73.2143 11.907 73.2062 11.7359L73.18 11.1892C73.174 11.0569 73.2075 10.9258 73.2764 10.8127C73.3452 10.6995 73.4463 10.6094 73.5666 10.554L73.7852 10.4523C73.9077 10.3957 74.0148 10.3105 74.0976 10.204C74.1803 10.0974 74.2363 9.97252 74.2608 9.83983C74.3341 9.43894 74.6865 9.14749 75.0979 9.14749C75.7404 9.14749 76.299 9.57412 76.5088 10.1806C77.5188 13.1 79.1245 15.2457 83.0561 15.2457Z' fill='%23373F45'/%3E%3Cpath d='M155.758 6.91365C155.028 6.91365 154.804 6.47916 154.804 5.98857C154.804 5.46997 154.986 5.06348 155.758 5.06348C156.53 5.06348 156.712 5.46997 156.712 5.98857C156.712 6.47905 156.516 6.91365 155.758 6.91365ZM142.441 12.9304V9.32833L141.415 9.32323V8.90392C141.415 8.44719 141.786 8.07758 142.244 8.07986L142.441 8.08095V6.55306L144.082 6.09057V8.08073H145.569V8.50416C145.569 8.61242 145.548 8.71961 145.506 8.81961C145.465 8.91961 145.404 9.01047 145.328 9.08699C145.251 9.16351 145.16 9.2242 145.06 9.26559C144.96 9.30698 144.853 9.32826 144.745 9.32822H144.082V12.7201C144.082 13.2423 144.378 13.4256 144.76 13.4887C145.209 13.5629 145.583 13.888 145.583 14.343V14.9626C144.029 14.9626 142.441 14.8942 142.441 12.9304Z' fill='%23373F45'/%3E%3Cpath d='M110.058 7.92554C108.417 7.88344 106.396 8.92062 106.396 11.5137C106.396 14.0646 108.417 15.0738 110.058 15.0318C111.742 15.0738 113.748 14.0646 113.748 11.5137C113.748 8.92062 111.742 7.88344 110.058 7.92554ZM110.07 13.7586C108.878 13.7586 108.032 12.8905 108.032 11.461C108.032 10.1013 108.878 9.20569 110.071 9.20569C111.263 9.20569 112.101 10.0995 112.101 11.459C112.101 12.8887 111.263 13.7586 110.07 13.7586Z' fill='%23373F45'/%3E%3Cpath d='M118.06 7.94098C119.491 7.94098 120.978 8.33337 120.978 11.1366V14.893H120.063C119.608 14.893 119.238 14.524 119.238 14.0689V10.9965C119.238 9.66506 118.747 9.16047 117.891 9.16047C117.414 9.16047 116.797 9.52486 116.502 9.81915V14.069C116.502 14.1773 116.481 14.2845 116.44 14.3845C116.398 14.4845 116.337 14.5753 116.261 14.6519C116.184 14.7284 116.093 14.7891 115.993 14.8305C115.893 14.8719 115.786 14.8931 115.678 14.8931H114.847V8.10918H115.773C115.932 8.10914 116.087 8.16315 116.212 8.26242C116.337 8.36168 116.424 8.50033 116.46 8.65577C116.881 8.19328 117.428 7.94098 118.06 7.94098ZM122.854 8.09713C123.024 8.09708 123.19 8.1496 123.329 8.2475C123.468 8.34541 123.574 8.48391 123.631 8.64405L125.133 12.8486L126.635 8.64415C126.692 8.48402 126.798 8.34551 126.937 8.2476C127.076 8.1497 127.242 8.09718 127.412 8.09724H128.598L126.152 14.3567C126.091 14.5112 125.986 14.6439 125.849 14.7374C125.711 14.831 125.549 14.881 125.383 14.8809H124.333L121.668 8.09713H122.854Z' fill='%23373F45'/%3E%3Cpath d='M135.085 14.5514C134.566 14.7616 133.513 15.0416 132.418 15.0416C130.496 15.0416 129.024 13.9345 129.024 11.4396C129.024 9.19701 130.451 7.99792 132.191 7.99792C134.338 7.99792 135.254 9.4378 135.158 11.3979C135.139 11.8029 134.786 12.0983 134.38 12.0983H130.679C130.763 13.1916 131.562 13.7662 132.615 13.7662C133.028 13.7662 133.462 13.7452 133.983 13.6481C134.535 13.545 135.085 13.9375 135.085 14.4985V14.5514ZM133.673 10.949C133.785 9.87621 133.061 9.28752 132.191 9.28752C131.321 9.28752 130.734 9.93979 130.679 10.9489L133.673 10.949Z' fill='%23373F45'/%3E%3Cpath d='M137.345 8.11122C137.497 8.11118 137.645 8.16229 137.765 8.25635C137.884 8.35041 137.969 8.48197 138.005 8.62993C138.566 8.20932 139.268 7.94303 139.759 7.94303C139.801 7.94303 140.068 7.94303 140.489 7.99913V8.7265C140.489 9.11748 140.15 9.4147 139.759 9.4147C139.31 9.4147 138.651 9.5829 138.131 9.8773V14.8951H136.462V8.11112L137.345 8.11122ZM156.6 14.0508V8.09104H155.769C155.314 8.09104 154.944 8.45999 154.944 8.9151V14.8748H155.775C156.23 14.8748 156.6 14.5058 156.6 14.0508ZM158.857 12.9447V9.34254H157.749V8.91912C157.749 8.46401 158.118 8.09506 158.574 8.09506H158.857V6.56739L160.499 6.10479V8.09506H161.986V8.51848C161.986 8.97359 161.617 9.34254 161.161 9.34254H160.499V12.7345C160.499 13.2566 160.795 13.44 161.177 13.503C161.626 13.5774 162 13.9024 162 14.3574V14.977C160.446 14.977 158.857 14.9086 158.857 12.9447ZM98.1929 10.1124C98.2033 6.94046 100.598 5.16809 102.895 5.16809C104.171 5.16809 105.342 5.44285 106.304 6.12953L105.914 6.6631C105.654 7.02011 105.16 7.16194 104.749 6.99949C104.169 6.7702 103.622 6.7218 103.215 6.7218C101.335 6.7218 99.9169 7.92849 99.9068 10.1123C99.9169 12.2959 101.335 13.5201 103.215 13.5201C103.622 13.5201 104.169 13.4717 104.749 13.2424C105.16 13.0799 105.654 13.2046 105.914 13.5615L106.304 14.0952C105.342 14.7819 104.171 15.0566 102.895 15.0566C100.598 15.0566 98.2033 13.2842 98.1929 10.1124ZM147.619 5.21768C148.074 5.21768 148.444 5.58663 148.444 6.04174V9.81968L151.82 5.58131C151.897 5.47733 151.997 5.39282 152.112 5.3346C152.227 5.27638 152.355 5.24607 152.484 5.24611H153.984L150.166 10.0615L153.984 14.8749H152.484C152.355 14.8749 152.227 14.8446 152.112 14.7864C151.997 14.7281 151.897 14.6436 151.82 14.5397L148.444 10.3025V14.0508C148.444 14.5059 148.074 14.8749 147.619 14.8749H146.746V5.21768H147.619Z' fill='%23373F45'/%3E%3Cpath d='M0.773438 6.5752H2.68066C3.56543 6.5752 4.2041 6.7041 4.59668 6.96191C4.99219 7.21973 5.18994 7.62695 5.18994 8.18359C5.18994 8.55859 5.09326 8.87061 4.8999 9.11963C4.70654 9.36865 4.42822 9.52539 4.06494 9.58984V9.63379C4.51611 9.71875 4.84717 9.88721 5.05811 10.1392C5.27197 10.3882 5.37891 10.7266 5.37891 11.1543C5.37891 11.7314 5.17676 12.1841 4.77246 12.5122C4.37109 12.8374 3.81152 13 3.09375 13H0.773438V6.5752ZM1.82373 9.22949H2.83447C3.27393 9.22949 3.59473 9.16064 3.79688 9.02295C3.99902 8.88232 4.1001 8.64502 4.1001 8.31104C4.1001 8.00928 3.99023 7.79102 3.77051 7.65625C3.55371 7.52148 3.20801 7.4541 2.7334 7.4541H1.82373V9.22949ZM1.82373 10.082V12.1167H2.93994C3.37939 12.1167 3.71045 12.0332 3.93311 11.8662C4.15869 11.6963 4.27148 11.4297 4.27148 11.0664C4.27148 10.7324 4.15723 10.4849 3.92871 10.3237C3.7002 10.1626 3.35303 10.082 2.88721 10.082H1.82373Z' fill='%23373F45'/%3E%3Cpath d='M13.011 6.5752V10.7324C13.011 11.207 12.9084 11.623 12.7034 11.9805C12.5012 12.335 12.2068 12.6089 11.8201 12.8022C11.4363 12.9927 10.9763 13.0879 10.4402 13.0879C9.6433 13.0879 9.02368 12.877 8.5813 12.4551C8.13892 12.0332 7.91772 11.4531 7.91772 10.7148V6.5752H8.9724V10.6401C8.9724 11.1704 9.09546 11.5615 9.34155 11.8135C9.58765 12.0654 9.96557 12.1914 10.4753 12.1914C11.4656 12.1914 11.9607 11.6714 11.9607 10.6313V6.5752H13.011Z' fill='%23373F45'/%3E%3Cpath d='M15.9146 13V6.5752H16.9649V13H15.9146Z' fill='%23373F45'/%3E%3Cpath d='M19.9255 13V6.5752H20.9758V12.0991H23.696V13H19.9255Z' fill='%23373F45'/%3E%3Cpath d='M28.2828 13H27.2325V7.47607H25.3428V6.5752H30.1724V7.47607H28.2828V13Z' fill='%23373F45'/%3E%3Cpath d='M41.9472 13H40.8046L39.7148 9.16796C39.6679 9.00097 39.6093 8.76074 39.539 8.44727C39.4687 8.13086 39.4262 7.91113 39.4116 7.78809C39.3823 7.97559 39.3339 8.21875 39.2665 8.51758C39.2021 8.81641 39.1479 9.03905 39.1039 9.18554L38.0405 13H36.8979L36.0673 9.7832L35.2236 6.5752H36.2958L37.2143 10.3193C37.3578 10.9199 37.4604 11.4502 37.5219 11.9102C37.5541 11.6611 37.6025 11.3828 37.6669 11.0752C37.7314 10.7676 37.79 10.5186 37.8427 10.3281L38.8886 6.5752H39.9301L41.0024 10.3457C41.1049 10.6943 41.2133 11.2158 41.3276 11.9102C41.3715 11.4912 41.477 10.958 41.644 10.3105L42.558 6.5752H43.6215L41.9472 13Z' fill='%23373F45'/%3E%3Cpath d='M45.7957 13V6.5752H46.846V13H45.7957Z' fill='%23373F45'/%3E%3Cpath d='M52.0258 13H50.9755V7.47607H49.0859V6.5752H53.9155V7.47607H52.0258V13Z' fill='%23373F45'/%3E%3Cpath d='M61.2312 13H60.1765V10.104H57.2146V13H56.1643V6.5752H57.2146V9.20312H60.1765V6.5752H61.2312V13Z' fill='%23373F45'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;border:1px solid #dde2e7;border-radius:4px;align-items:center;width:190px;height:36px;margin:0 auto;padding:0;-webkit-text-decoration:none;text-decoration:none;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out;display:block;overflow:hidden}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit:hover,.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit:focus{opacity:1;background-color:#fff;-webkit-transform:scale(1.025)perspective(1px);-ms-transform:scale(1.025)perspective(1px);transform:scale(1.025)perspective(1px)}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit[data-variant=dark],.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit[data-variant=light]{background-color:#0000;border-color:#0000;width:166px}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit[data-variant=light]{color:#fff;background-image:url("data:image/svg+xml;charset=utf8,%3Csvg width='162' height='20' viewBox='0 0 162 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M83.0561 15.2457C86.675 15.2457 89.4722 12.5154 89.4722 9.14749C89.4722 5.99211 86.8443 4.06563 85.1038 4.06563C82.6801 4.06563 80.7373 5.76407 80.4605 8.28551C80.4092 8.75244 80.0387 9.14403 79.5686 9.14069C78.7871 9.13509 77.6507 9.12841 76.9314 9.13092C76.6217 9.13199 76.3658 8.88106 76.381 8.57196C76.4895 6.38513 77.2218 4.3404 78.618 2.76974C80.1695 1.02445 82.4289 0 85.1038 0C89.5979 0 93.8406 4.07791 93.8406 9.14749C93.8406 14.7608 89.1832 19.3113 83.1517 19.3113C78.8502 19.3113 74.5179 16.5041 73.0053 12.5795C72.9999 12.565 72.9986 12.5492 73.0015 12.534C73.0218 12.4179 73.0617 12.3118 73.1011 12.2074C73.1583 12.0555 73.2143 11.907 73.2062 11.7359L73.18 11.1892C73.174 11.0569 73.2075 10.9258 73.2764 10.8127C73.3452 10.6995 73.4463 10.6094 73.5666 10.554L73.7852 10.4523C73.9077 10.3957 74.0148 10.3105 74.0976 10.204C74.1803 10.0974 74.2363 9.97252 74.2608 9.83983C74.3341 9.43894 74.6865 9.14749 75.0979 9.14749C75.7404 9.14749 76.299 9.57412 76.5088 10.1806C77.5188 13.1 79.1245 15.2457 83.0561 15.2457Z' fill='white'/%3E%3Cpath d='M155.758 6.91365C155.028 6.91365 154.804 6.47916 154.804 5.98857C154.804 5.46997 154.986 5.06348 155.758 5.06348C156.53 5.06348 156.712 5.46997 156.712 5.98857C156.712 6.47905 156.516 6.91365 155.758 6.91365ZM142.441 12.9304V9.32833L141.415 9.32323V8.90392C141.415 8.44719 141.786 8.07758 142.244 8.07986L142.441 8.08095V6.55306L144.082 6.09057V8.08073H145.569V8.50416C145.569 8.61242 145.548 8.71961 145.506 8.81961C145.465 8.91961 145.404 9.01047 145.328 9.08699C145.251 9.16351 145.16 9.2242 145.06 9.26559C144.96 9.30698 144.853 9.32826 144.745 9.32822H144.082V12.7201C144.082 13.2423 144.378 13.4256 144.76 13.4887C145.209 13.5629 145.583 13.888 145.583 14.343V14.9626C144.029 14.9626 142.441 14.8942 142.441 12.9304Z' fill='white'/%3E%3Cpath d='M110.058 7.92554C108.417 7.88344 106.396 8.92062 106.396 11.5137C106.396 14.0646 108.417 15.0738 110.058 15.0318C111.742 15.0738 113.748 14.0646 113.748 11.5137C113.748 8.92062 111.742 7.88344 110.058 7.92554ZM110.07 13.7586C108.878 13.7586 108.032 12.8905 108.032 11.461C108.032 10.1013 108.878 9.20569 110.071 9.20569C111.263 9.20569 112.101 10.0995 112.101 11.459C112.101 12.8887 111.263 13.7586 110.07 13.7586Z' fill='white'/%3E%3Cpath d='M118.06 7.94098C119.491 7.94098 120.978 8.33337 120.978 11.1366V14.893H120.063C119.608 14.893 119.238 14.524 119.238 14.0689V10.9965C119.238 9.66506 118.747 9.16047 117.891 9.16047C117.414 9.16047 116.797 9.52486 116.502 9.81915V14.069C116.502 14.1773 116.481 14.2845 116.44 14.3845C116.398 14.4845 116.337 14.5753 116.261 14.6519C116.184 14.7284 116.093 14.7891 115.993 14.8305C115.893 14.8719 115.786 14.8931 115.678 14.8931H114.847V8.10918H115.773C115.932 8.10914 116.087 8.16315 116.212 8.26242C116.337 8.36168 116.424 8.50033 116.46 8.65577C116.881 8.19328 117.428 7.94098 118.06 7.94098ZM122.854 8.09713C123.024 8.09708 123.19 8.1496 123.329 8.2475C123.468 8.34541 123.574 8.48391 123.631 8.64405L125.133 12.8486L126.635 8.64415C126.692 8.48402 126.798 8.34551 126.937 8.2476C127.076 8.1497 127.242 8.09718 127.412 8.09724H128.598L126.152 14.3567C126.091 14.5112 125.986 14.6439 125.849 14.7374C125.711 14.831 125.549 14.881 125.383 14.8809H124.333L121.668 8.09713H122.854Z' fill='white'/%3E%3Cpath d='M135.085 14.5514C134.566 14.7616 133.513 15.0416 132.418 15.0416C130.496 15.0416 129.024 13.9345 129.024 11.4396C129.024 9.19701 130.451 7.99792 132.191 7.99792C134.338 7.99792 135.254 9.4378 135.158 11.3979C135.139 11.8029 134.786 12.0983 134.38 12.0983H130.679C130.763 13.1916 131.562 13.7662 132.615 13.7662C133.028 13.7662 133.462 13.7452 133.983 13.6481C134.535 13.545 135.085 13.9375 135.085 14.4985V14.5514ZM133.673 10.949C133.785 9.87621 133.061 9.28752 132.191 9.28752C131.321 9.28752 130.734 9.93979 130.679 10.9489L133.673 10.949Z' fill='white'/%3E%3Cpath d='M137.345 8.11122C137.497 8.11118 137.645 8.16229 137.765 8.25635C137.884 8.35041 137.969 8.48197 138.005 8.62993C138.566 8.20932 139.268 7.94303 139.759 7.94303C139.801 7.94303 140.068 7.94303 140.489 7.99913V8.7265C140.489 9.11748 140.15 9.4147 139.759 9.4147C139.31 9.4147 138.651 9.5829 138.131 9.8773V14.8951H136.462V8.11112L137.345 8.11122ZM156.6 14.0508V8.09104H155.769C155.314 8.09104 154.944 8.45999 154.944 8.9151V14.8748H155.775C156.23 14.8748 156.6 14.5058 156.6 14.0508ZM158.857 12.9447V9.34254H157.749V8.91912C157.749 8.46401 158.118 8.09506 158.574 8.09506H158.857V6.56739L160.499 6.10479V8.09506H161.986V8.51848C161.986 8.97359 161.617 9.34254 161.161 9.34254H160.499V12.7345C160.499 13.2566 160.795 13.44 161.177 13.503C161.626 13.5774 162 13.9024 162 14.3574V14.977C160.446 14.977 158.857 14.9086 158.857 12.9447ZM98.1929 10.1124C98.2033 6.94046 100.598 5.16809 102.895 5.16809C104.171 5.16809 105.342 5.44285 106.304 6.12953L105.914 6.6631C105.654 7.02011 105.16 7.16194 104.749 6.99949C104.169 6.7702 103.622 6.7218 103.215 6.7218C101.335 6.7218 99.9169 7.92849 99.9068 10.1123C99.9169 12.2959 101.335 13.5201 103.215 13.5201C103.622 13.5201 104.169 13.4717 104.749 13.2424C105.16 13.0799 105.654 13.2046 105.914 13.5615L106.304 14.0952C105.342 14.7819 104.171 15.0566 102.895 15.0566C100.598 15.0566 98.2033 13.2842 98.1929 10.1124ZM147.619 5.21768C148.074 5.21768 148.444 5.58663 148.444 6.04174V9.81968L151.82 5.58131C151.897 5.47733 151.997 5.39282 152.112 5.3346C152.227 5.27638 152.355 5.24607 152.484 5.24611H153.984L150.166 10.0615L153.984 14.8749H152.484C152.355 14.8749 152.227 14.8446 152.112 14.7864C151.997 14.7281 151.897 14.6436 151.82 14.5397L148.444 10.3025V14.0508C148.444 14.5059 148.074 14.8749 147.619 14.8749H146.746V5.21768H147.619Z' fill='white'/%3E%3Cpath d='M0.773438 6.5752H2.68066C3.56543 6.5752 4.2041 6.7041 4.59668 6.96191C4.99219 7.21973 5.18994 7.62695 5.18994 8.18359C5.18994 8.55859 5.09326 8.87061 4.8999 9.11963C4.70654 9.36865 4.42822 9.52539 4.06494 9.58984V9.63379C4.51611 9.71875 4.84717 9.88721 5.05811 10.1392C5.27197 10.3882 5.37891 10.7266 5.37891 11.1543C5.37891 11.7314 5.17676 12.1841 4.77246 12.5122C4.37109 12.8374 3.81152 13 3.09375 13H0.773438V6.5752ZM1.82373 9.22949H2.83447C3.27393 9.22949 3.59473 9.16064 3.79688 9.02295C3.99902 8.88232 4.1001 8.64502 4.1001 8.31104C4.1001 8.00928 3.99023 7.79102 3.77051 7.65625C3.55371 7.52148 3.20801 7.4541 2.7334 7.4541H1.82373V9.22949ZM1.82373 10.082V12.1167H2.93994C3.37939 12.1167 3.71045 12.0332 3.93311 11.8662C4.15869 11.6963 4.27148 11.4297 4.27148 11.0664C4.27148 10.7324 4.15723 10.4849 3.92871 10.3237C3.7002 10.1626 3.35303 10.082 2.88721 10.082H1.82373Z' fill='white'/%3E%3Cpath d='M13.011 6.5752V10.7324C13.011 11.207 12.9084 11.623 12.7034 11.9805C12.5012 12.335 12.2068 12.6089 11.8201 12.8022C11.4363 12.9927 10.9763 13.0879 10.4402 13.0879C9.6433 13.0879 9.02368 12.877 8.5813 12.4551C8.13892 12.0332 7.91772 11.4531 7.91772 10.7148V6.5752H8.9724V10.6401C8.9724 11.1704 9.09546 11.5615 9.34155 11.8135C9.58765 12.0654 9.96557 12.1914 10.4753 12.1914C11.4656 12.1914 11.9607 11.6714 11.9607 10.6313V6.5752H13.011Z' fill='white'/%3E%3Cpath d='M15.9146 13V6.5752H16.9649V13H15.9146Z' fill='white'/%3E%3Cpath d='M19.9255 13V6.5752H20.9758V12.0991H23.696V13H19.9255Z' fill='white'/%3E%3Cpath d='M28.2828 13H27.2325V7.47607H25.3428V6.5752H30.1724V7.47607H28.2828V13Z' fill='white'/%3E%3Cpath d='M41.9472 13H40.8046L39.7148 9.16796C39.6679 9.00097 39.6093 8.76074 39.539 8.44727C39.4687 8.13086 39.4262 7.91113 39.4116 7.78809C39.3823 7.97559 39.3339 8.21875 39.2665 8.51758C39.2021 8.81641 39.1479 9.03905 39.1039 9.18554L38.0405 13H36.8979L36.0673 9.7832L35.2236 6.5752H36.2958L37.2143 10.3193C37.3578 10.9199 37.4604 11.4502 37.5219 11.9102C37.5541 11.6611 37.6025 11.3828 37.6669 11.0752C37.7314 10.7676 37.79 10.5186 37.8427 10.3281L38.8886 6.5752H39.9301L41.0024 10.3457C41.1049 10.6943 41.2133 11.2158 41.3276 11.9102C41.3715 11.4912 41.477 10.958 41.644 10.3105L42.558 6.5752H43.6215L41.9472 13Z' fill='white'/%3E%3Cpath d='M45.7957 13V6.5752H46.846V13H45.7957Z' fill='white'/%3E%3Cpath d='M52.0258 13H50.9755V7.47607H49.0859V6.5752H53.9155V7.47607H52.0258V13Z' fill='white'/%3E%3Cpath d='M61.2312 13H60.1765V10.104H57.2146V13H56.1643V6.5752H57.2146V9.20312H60.1765V6.5752H61.2312V13Z' fill='white'/%3E%3C/svg%3E")}@-webkit-keyframes formkit-bouncedelay-formkit-form-data-uid-8d653b97b6-{0%,80%,to{-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0)}40%{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}@keyframes formkit-bouncedelay-formkit-form-data-uid-8d653b97b6-{0%,80%,to{-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0)}40%{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}.formkit-form[data-uid="8d653b97b6"] blockquote{border-left:5px solid #e1e1e1;margin:0 0 20px;padding:10px 20px}.formkit-form[data-uid="8d653b97b6"] .seva-custom-content{color:#fff;mix-blend-mode:difference;padding:15px;font-size:16px}.formkit-form[data-uid="8d653b97b6"]{max-width:700px}.formkit-form[data-uid="8d653b97b6"] [data-style=clean]{width:100%}.formkit-form[data-uid="8d653b97b6"] .formkit-fields{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;margin:0 auto;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.formkit-form[data-uid="8d653b97b6"] .formkit-field,.formkit-form[data-uid="8d653b97b6"] .formkit-submit{-webkit-flex:1 0 100%;-ms-flex:1 0 100%;flex:1 0 100%;margin:0 0 15px}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit-container{margin:0}.formkit-form[data-uid="8d653b97b6"] .formkit-submit{position:static}.formkit-form[data-uid="8d653b97b6"][min-width~="700"] [data-style=clean],.formkit-form[data-uid="8d653b97b6"][min-width~="800"] [data-style=clean]{padding:10px}.formkit-form[data-uid="8d653b97b6"][min-width~="700"] .formkit-fields[data-stacked=false],.formkit-form[data-uid="8d653b97b6"][min-width~="800"] .formkit-fields[data-stacked=false]{margin-left:-5px;margin-right:-5px}.formkit-form[data-uid="8d653b97b6"][min-width~="700"] .formkit-fields[data-stacked=false] .formkit-field,.formkit-form[data-uid="8d653b97b6"][min-width~="800"] .formkit-fields[data-stacked=false] .formkit-field,.formkit-form[data-uid="8d653b97b6"][min-width~="700"] .formkit-fields[data-stacked=false] .formkit-submit,.formkit-form[data-uid="8d653b97b6"][min-width~="800"] .formkit-fields[data-stacked=false] .formkit-submit{margin:0 5px 15px}.formkit-form[data-uid="8d653b97b6"][min-width~="700"] .formkit-fields[data-stacked=false] .formkit-field,.formkit-form[data-uid="8d653b97b6"][min-width~="800"] .formkit-fields[data-stacked=false] .formkit-field{-webkit-flex:100 auto;-ms-flex:100 auto;flex:100 auto}.formkit-form[data-uid="8d653b97b6"][min-width~="700"] .formkit-fields[data-stacked=false] .formkit-submit,.formkit-form[data-uid="8d653b97b6"][min-width~="800"] .formkit-fields[data-stacked=false] .formkit-submit{-webkit-flex:auto;-ms-flex:auto;flex:auto}</style></form>
</div><div><div class="quoteContainer_Karu"><figure class="tweetQuote_h8Rz"><blockquote><a href="https://twitter.com/wcandillon/status/1263825118557593600" target="_blank" rel="noreferrer nofollow">If you are not signed-up, you are missing out</a></blockquote><figcaption><a href="https://twitter.com/wcandillon" target="_blank" rel="noreferrer nofollow"><div class="avatar"><img alt="William Candillon" class="avatar__photo shadow--md avatarImg_b51M" src="https://unavatar.io/twitter/wcandillon?fallback=https://github.com/wcandillon.png"><div class="avatar__intro"><strong class="avatar__name"><cite>William Candillon</cite></strong><small class="avatar__subtitle" itemprop="description">React-Native animations expert - Youtuber</small></div></div></a></figcaption></figure></div></div></div>
<div role="separator" style="text-align:center;margin:10px 0"><img class="separator" src="https://thisweekinreact.com/emails/separators/christmas.png" width="600" height="64" style="width:100%;max-width:600px;margin:0 auto;object-fit:contain"></div>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="sponsor1">💸 Sponsor<a href="https://thisweekinreact.com/newsletter/277#sponsor1" class="hash-link" aria-label="Direct link to 💸 Sponsor" title="Direct link to 💸 Sponsor">​</a></h2>
<p><a href="https://planetscale.com/" target="_blank" rel="noopener noreferrer"><img decoding="async" loading="lazy" src="https://thisweekinreact.com/emails/issues/277/planetscale.png" alt="The fastest Postgres + MySQL database" class="img_SS3x"></a></p>
<p><strong><a href="https://planetscale.com/" target="_blank" rel="noopener noreferrer">The fastest Postgres + MySQL database</a></strong></p>
<p>PlanetScale Metal runs on blazing-fast NVMe in your favorite hyperscaler clouds. Get high-performance, reliability, and the best DX available for Postgres and MySQL.</p>
<p>Companies like Cash App, Cursor, and MyFitnessPal trust PlanetScale for their Tier 0 databases.</p>
<p>With PlanetScale, you get:</p>
<ul>
<li>The best performance with local NVMe</li>
<li>AI integration with our MCP, skills, and automatic schema recommendations</li>
<li>Built-in query observability with Insights</li>
<li>Pricing from $5/mo</li>
</ul>
<p><a href="https://planetscale.com/migrate" target="_blank" rel="noopener noreferrer">Migrate your database today</a></p>
<div role="separator" style="text-align:center;margin:10px 0"><img class="separator" src="https://thisweekinreact.com/emails/separators/christmas.png" width="600" height="64" style="width:100%;max-width:600px;margin:0 auto;object-fit:contain"></div>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="react">⚛️ React<a href="https://thisweekinreact.com/newsletter/277#react" class="hash-link" aria-label="Direct link to ⚛️ React" title="Direct link to ⚛️ React">​</a></h2>
<p><a href="https://tanstack.com/blog/react-server-components" target="_blank" rel="noopener noreferrer"><img decoding="async" loading="lazy" src="https://thisweekinreact.com/emails/issues/277/tanstack.jpg" alt="TanStack - React Server Components Your Way" class="img_SS3x"></a></p>
<p><strong><a href="https://tanstack.com/blog/react-server-components" target="_blank" rel="noopener noreferrer">TanStack - React Server Components Your Way</a></strong></p>
<p>Two weeks ago, we covered the TanStack Start RSC sneak peek that Tanner offered us at React Paris. And now, they are available as an experimental feature!</p>
<p>My highlights remain mostly the same:</p>
<ul>
<li><strong>Primitives</strong>: RSCs are supported through 3 primitive APIs that permit to manipulate RSCs as any other stream of data, immediately compatible with existing tools such as React Query, TanStack Router loaders, localStorage, CDNs and HTTP caches. It is entirely opt-in and does not impose a server-first approach nor any framework convention, giving you total freedom on how to compose those primitives.</li>
<li><strong>Composite Components</strong>: The server renders a RSC with slots that get filled by the client. You don’t need <code>’use client’</code> directives, although they are supported. This new concept creates an explicit boundary between the server and the client. It should be possible to co-locate client/server components in the same file this way.</li>
<li><strong>No Server Actions</strong>: A design decision for security reasons. Recent React CVEs affecting other RSC frameworks were due to Server Functions handling Flight payloads and don't apply to TanStack Start, as <a href="https://www.youtube.com/watch?v=-dbvAMsRKi0" target="_blank" rel="noopener noreferrer">Jack Herrington explains in this video</a>.</li>
</ul>
<p>What strikes me is just how different this is from Next.js. It feels more like a library than a framework, and more in sync with the philosophy that initially attracted me to React.</p>
<div role="separator" style="text-align:center;margin:10px 0"><img class="separator" src="https://thisweekinreact.com/emails/separators/christmas.png" width="600" height="64" style="width:100%;max-width:600px;margin:0 auto;object-fit:contain"></div>
<ul>
<li>💸 <a href="https://go.posthog.com/twir-apr15" target="_blank" rel="noopener noreferrer">PostHog - How we built automatic clustering for LLM traces</a></li>
<li>🔐 <a href="https://www.imperva.com/blog/react2dos-cve-2026-23869-when-the-flight-protocol-crashes-at-takeoff/" target="_blank" rel="noopener noreferrer">React2DoS (CVE-2026-23869): When the Flight Protocol Crashes at Takeoff</a> - A new Denial-of-Service vulnerability affects the React Flight Protocol when deserializing Server Functions payloads. If you use Server Functions, upgrade asap to React 19.2.5 or <a href="https://github.com/vercel/next.js/releases/tag/v16.2.3" target="_blank" rel="noopener noreferrer">Next.js 16.2.3</a></li>
<li>👀 <a href="https://github.com/vercel/next.js/pull/92252" target="_blank" rel="noopener noreferrer">Next.js PR - Node.js streams: Fork points</a> - The SSR/RSC throughput is limited due to the use of standard Web Streams. The PR shows ongoing work to provide support for faster but non-standard Node.js streams, though the <code>experimental.useNodeStreams</code> feature flag. Accordingly to this former <a href="https://vercel.com/blog/we-ralph-wiggumed-webstreams-to-make-them-10x-faster" target="_blank" rel="noopener noreferrer">Vercel article about Web Streams</a>, the outcome could be quite significant.</li>
<li>🗓️ <a href="https://www.dotjs.io/speak?utm_source=twir&amp;utm_medium=newsletter&amp;utm_campaign=CFP" target="_blank" rel="noopener noreferrer">dotJS 2026</a>&nbsp;-&nbsp;🇫🇷 Paris - 18 September - Call For Papers for dotJS is open until April 28th 6 PM CET, submit now your talk proposals for the conference!</li>
<li>📜 <a href="https://github.blog/engineering/architecture-optimization/the-uphill-climb-of-making-diff-lines-performant/" target="_blank" rel="noopener noreferrer">GitHub - The uphill climb of making diff lines performant</a> - GitHub cut the rendering cost their React-based PR diff view. What worked includes using fewer DOM nodes and event handler, simpler CSS selectors, TanStack Virtual for large PRs, removing scattered useEffect, and more.</li>
<li>📜 <a href="https://valentinprugnaud.dev/posts/2026/04/if-you-cant-see-the-boundary-you-cant-reason-about-the-system" target="_blank" rel="noopener noreferrer">If You Can't See the Boundary, You Can't Reason About the System</a> - Explains the need to visually see the boundary of Client/Server components on the current page, and introduces a Next.js App Router tool to highlight those boundaries.</li>
<li>📜 <a href="https://programmingarehard.com/2026/04/11/contributing-to-react-router.html/" target="_blank" rel="noopener noreferrer">Contributing Callsite Revalidation Opt-out to React Router</a> - Explains how React Router and React Query behave differently regarding revalidation after a mutation, and motivations to contribute a new <code>unstable_defaultShouldRevalidate</code> API to React Router.</li>
<li>📜 <a href="https://tkdodo.eu/blog/the-vertical-codebase" target="_blank" rel="noopener noreferrer">The Vertical Codebase</a> - Colocate files by vertical features to scale your React codebase.</li>
<li>📜 <a href="https://yurimutti.com/posts/logging-nextjs-loglayer-instrumentation-console-override-structured-logs" target="_blank" rel="noopener noreferrer">Logging in Next.js with LogLayer: Instrumentation, Console Override, and Structured Logs</a> - Gives you one logging model across all runtimes.</li>
<li>📜 <a href="https://neciudan.dev/master-eslint-rules" target="_blank" rel="noopener noreferrer">Now more then ever, you need to master custom ESLint rules</a> - Deep dive into writing custom ESLint rules, with concrete React-focused examples, such as preventing useEffect antipatterns).</li>
<li>📜 <a href="https://tigerabrodi.blog/next-js-use-cache-remote-a-distributed-cache-in-one-line" target="_blank" rel="noopener noreferrer">Next.js use cache: remote: A Distributed Cache in One Line</a> - By default, the Cache Components feature works in memory, but it’s possible to cache data across serverless instances to increase cache hits.</li>
<li>💸 <a href="https://certificates.dev/react?friend=TWIR&amp;utm_source=twir&amp;utm_medium=newsletter&amp;utm_campaign=partner" target="_blank" rel="noopener noreferrer">Certificates.dev - Boost your skills with up to 6 live bootcamps led by Aurora Scharff and get React certified with our Mid &amp; Senior bundles</a></li>
<li>📦 <a href="https://mui.com/blog/introducing-mui-v9/" target="_blank" rel="noopener noreferrer">Material UI and MUI X 9.0</a> - This large release re-aligns the versions of the core design system and the advanced components. MUI moves from v7 straight to v9, and introduces the first Base UI-backed primitives in the codebase with new <code>NumberField</code> and <code>Menubar</code> components. MUI X also received several improvements, adding new Chat and Scheduler components in alpha.</li>
<li>📦 <a href="https://base-ui.com/react/overview/releases/v1-4-0" target="_blank" rel="noopener noreferrer">Base UI 1.4 - One-Time Password field (preview), update a Toast, many bug fixes</a></li>
<li>📦 <a href="https://github.com/unjs/unhead/releases/tag/v3.0.0" target="_blank" rel="noopener noreferrer">Unhead 3.0 - Streaming <code>&lt;head&gt;</code> component for any framework</a></li>
<li>📦 <a href="https://github.com/orchetron/storm" target="_blank" rel="noopener noreferrer">Storm - Terminal UI framework based on React</a> - This new TUI addresses limitations of Ink, with cell-level diffing and dual-speed rendering architecture.</li>
<li>📦 <a href="https://github.com/styled-components/styled-components/releases/tag/styled-components%406.4.0" target="_blank" rel="noopener noreferrer">Styled Components 6.4 - React Server Components support, performance optimizations, RN improvements, and more</a> - The historical CSS-in-JS lib is in “maintenance mode” and yet it received a quite significant update!</li>
<li>📦 <a href="https://react-aria.adobe.com/releases/v1-17-0" target="_blank" rel="noopener noreferrer">React Aria 1.17 - Expandable rows in Table, window scrolling in Virtualizer, dependency consolidation, sub-path imports</a></li>
<li>📦 <a href="https://github.com/millionco/isolet" target="_blank" rel="noopener noreferrer">Isolet - Package any component into a self-contained, isolated widget</a></li>
<li>📦 <a href="https://github.com/kapishdima/remocn" target="_blank" rel="noopener noreferrer">Remocn - Production-ready animations, transitions, and scenes for Remotion</a></li>
<li>🎙️ <a href="https://syntax.fm/show/995/next-js-vendor-lock-in-no-more" target="_blank" rel="noopener noreferrer">Syntax.fm 955 - Next.js Vendor Lock-in No More</a></li>
</ul>
<div class="card subscribeFormEmbed_aAcT"><p><strong>Don't miss the next email!</strong></p><div class="">
<script src="https://f.convertkit.com/ckjs/ck.5.js"></script>
      <form action="https://app.convertkit.com/forms/3472133/subscriptions" class="seva-form formkit-form" method="post" data-sv-form="3472133" data-uid="8d653b97b6" data-format="inline" data-version="5" data-options="{&quot;settings&quot;:{&quot;after_subscribe&quot;:{&quot;action&quot;:&quot;redirect&quot;,&quot;success_message&quot;:&quot;Success! Now check your email to confirm your subscription.&quot;,&quot;redirect_url&quot;:&quot;https://thisweekinreact.com/workflow/confirm-your-email&quot;},&quot;analytics&quot;:{&quot;google&quot;:null,&quot;fathom&quot;:null,&quot;facebook&quot;:null,&quot;segment&quot;:null,&quot;pinterest&quot;:null,&quot;sparkloop&quot;:null,&quot;googletagmanager&quot;:null},&quot;modal&quot;:{&quot;trigger&quot;:&quot;timer&quot;,&quot;scroll_percentage&quot;:null,&quot;timer&quot;:5,&quot;devices&quot;:&quot;all&quot;,&quot;show_once_every&quot;:15},&quot;powered_by&quot;:{&quot;show&quot;:false,&quot;url&quot;:&quot;https://convertkit.com/features/forms?lmref=d0748g&amp;utm_campaign=poweredby&amp;utm_content=form&amp;utm_medium=referral&amp;utm_source=dynamic&quot;},&quot;recaptcha&quot;:{&quot;enabled&quot;:false},&quot;return_visitor&quot;:{&quot;action&quot;:&quot;show&quot;,&quot;custom_content&quot;:&quot;&quot;},&quot;slide_in&quot;:{&quot;display_in&quot;:&quot;bottom_right&quot;,&quot;trigger&quot;:&quot;timer&quot;,&quot;scroll_percentage&quot;:null,&quot;timer&quot;:5,&quot;devices&quot;:&quot;all&quot;,&quot;show_once_every&quot;:15},&quot;sticky_bar&quot;:{&quot;display_in&quot;:&quot;top&quot;,&quot;trigger&quot;:&quot;timer&quot;,&quot;scroll_percentage&quot;:null,&quot;timer&quot;:5,&quot;devices&quot;:&quot;all&quot;,&quot;show_once_every&quot;:15}},&quot;version&quot;:&quot;5&quot;}" min-width="400 500 600 700 800"><div data-style="clean"><ul class="formkit-alert formkit-alert-error" data-element="errors" data-group="alert"></ul><div data-element="fields" data-stacked="false" class="seva-fields formkit-fields"><div class="formkit-field"><input class="formkit-input" name="email_address" aria-label="Email Address" placeholder="Email Address" required="" type="email" style="color: rgb(0, 0, 0); border-color: rgb(227, 227, 227); border-radius: 4px; font-weight: 700;"></div><button data-element="submit" class="formkit-submit formkit-submit" style="color: rgb(255, 255, 255); background-color: rgb(0, 54, 92); border-radius: 4px; font-weight: 700;"><div class="formkit-spinner"><div></div><div></div><div></div></div><span class="">Subscribe now!</span></button></div></div><style>.formkit-form[data-uid="8d653b97b6"] *{box-sizing:border-box}.formkit-form[data-uid="8d653b97b6"]{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.formkit-form[data-uid="8d653b97b6"] legend{font-size:inherit;border:none;margin-bottom:10px;padding:0;display:table;position:relative}.formkit-form[data-uid="8d653b97b6"] fieldset{border:0;min-width:0;margin:0;padding:.01em 0 0}.formkit-form[data-uid="8d653b97b6"] body:not(:-moz-handler-blocked) fieldset{display:table-cell}.formkit-form[data-uid="8d653b97b6"] h1,.formkit-form[data-uid="8d653b97b6"] h2,.formkit-form[data-uid="8d653b97b6"] h3,.formkit-form[data-uid="8d653b97b6"] h4,.formkit-form[data-uid="8d653b97b6"] h5,.formkit-form[data-uid="8d653b97b6"] h6{color:inherit;font-size:inherit;font-weight:inherit}.formkit-form[data-uid="8d653b97b6"] h2{margin:1em 0;font-size:1.5em}.formkit-form[data-uid="8d653b97b6"] h3{margin:1em 0;font-size:1.17em}.formkit-form[data-uid="8d653b97b6"] p{color:inherit;font-size:inherit;font-weight:inherit}.formkit-form[data-uid="8d653b97b6"] ol:not([template-default]),.formkit-form[data-uid="8d653b97b6"] ul:not([template-default]),.formkit-form[data-uid="8d653b97b6"] blockquote:not([template-default]){text-align:left}.formkit-form[data-uid="8d653b97b6"] p:not([template-default]),.formkit-form[data-uid="8d653b97b6"] hr:not([template-default]),.formkit-form[data-uid="8d653b97b6"] blockquote:not([template-default]),.formkit-form[data-uid="8d653b97b6"] ol:not([template-default]),.formkit-form[data-uid="8d653b97b6"] ul:not([template-default]){color:inherit;font-style:initial}.formkit-form[data-uid="8d653b97b6"] .ordered-list,.formkit-form[data-uid="8d653b97b6"] .unordered-list{padding-left:1em;list-style-position:outside!important}.formkit-form[data-uid="8d653b97b6"] .list-item{padding-left:0}.formkit-form[data-uid="8d653b97b6"][data-format=modal],.formkit-form[data-uid="8d653b97b6"][data-format=slide\ in],.formkit-form[data-uid="8d653b97b6"][data-format=sticky\ bar]{display:none}.formkit-sticky-bar .formkit-form[data-uid="8d653b97b6"][data-format=sticky\ bar]{display:block}.formkit-form[data-uid="8d653b97b6"] .formkit-input,.formkit-form[data-uid="8d653b97b6"] .formkit-select,.formkit-form[data-uid="8d653b97b6"] .formkit-checkboxes{width:100%}.formkit-form[data-uid="8d653b97b6"] .formkit-button,.formkit-form[data-uid="8d653b97b6"] .formkit-submit{color:#fff;cursor:pointer;text-align:center;cursor:pointer;vertical-align:middle;border:0;border-radius:5px;margin-bottom:15px;padding:0;font-size:15px;font-weight:500;display:inline-block;position:relative;overflow:hidden}.formkit-form[data-uid="8d653b97b6"] .formkit-button:hover,.formkit-form[data-uid="8d653b97b6"] .formkit-submit:hover,.formkit-form[data-uid="8d653b97b6"] .formkit-button:focus,.formkit-form[data-uid="8d653b97b6"] .formkit-submit:focus{outline:none}.formkit-form[data-uid="8d653b97b6"] .formkit-button:hover>span,.formkit-form[data-uid="8d653b97b6"] .formkit-submit:hover>span,.formkit-form[data-uid="8d653b97b6"] .formkit-button:focus>span,.formkit-form[data-uid="8d653b97b6"] .formkit-submit:focus>span{background-color:#0000001a}.formkit-form[data-uid="8d653b97b6"] .formkit-button>span,.formkit-form[data-uid="8d653b97b6"] .formkit-submit>span{padding:12px 24px;-webkit-transition:all .3s ease-in-out;transition:all .3s ease-in-out;display:block}.formkit-form[data-uid="8d653b97b6"] .formkit-input{background:#fff;border:1px solid #e3e3e3;-webkit-flex:1 0 auto;-ms-flex:1 0 auto;flex:1 0 auto;margin:0;padding:12px;font-size:15px;line-height:1.4;-webkit-transition:border-color .3s ease-out;transition:border-color .3s ease-out}.formkit-form[data-uid="8d653b97b6"] .formkit-input:focus{border-color:#1677be;outline:none;-webkit-transition:border-color .3s;transition:border-color .3s}.formkit-form[data-uid="8d653b97b6"] .formkit-input::-webkit-input-placeholder{color:inherit;opacity:.8}.formkit-form[data-uid="8d653b97b6"] .formkit-input::placeholder{color:inherit;opacity:.8}.formkit-form[data-uid="8d653b97b6"] .formkit-input:-ms-placeholder-shown{color:inherit;opacity:.8}.formkit-form[data-uid="8d653b97b6"] .formkit-input::placeholder{color:inherit;opacity:.8}.formkit-form[data-uid="8d653b97b6"] [data-group=dropdown]{width:100%;display:inline-block;position:relative}.formkit-form[data-uid="8d653b97b6"] [data-group=dropdown]:before{content:"";pointer-events:none;z-index:999;border:6px solid #0000;border-top-color:#4f4f4f;border-bottom-width:0;width:0;height:0;position:absolute;top:calc(50% - 2.5px);right:10px}.formkit-form[data-uid="8d653b97b6"] [data-group=dropdown] select{cursor:pointer;color:#333;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#fff;border:1px solid #e3e3e3;width:100%;height:auto;margin-bottom:0;padding:12px 25px 12px 12px;font-size:15px;line-height:1.4}.formkit-form[data-uid="8d653b97b6"] [data-group=dropdown] select:focus{outline:none}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes]{text-align:left;margin:0}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox]{margin-bottom:10px}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] *{cursor:pointer}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox]:last-of-type{margin-bottom:0}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] input[type=checkbox]{display:none}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] input[type=checkbox]+label:after{content:none}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] input[type=checkbox]:checked+label:after{content:"";border-color:#fff}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] input[type=checkbox]:checked+label:before{background:#10bf7a;border-color:#10bf7a}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] label{padding-left:28px;display:inline-block;position:relative}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] label:before,.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] label:after{content:"";display:inline-block;position:absolute}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] label:before{background:#fff;border:1px solid #e3e3e3;width:16px;height:16px;top:3px;left:0}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] label:after{border-bottom:2px solid #4d4d4d;border-left:2px solid #4d4d4d;width:8px;height:4px;top:8px;left:4px;-webkit-transform:rotate(-45deg);-ms-transform:rotate(-45deg);transform:rotate(-45deg)}.formkit-form[data-uid="8d653b97b6"] .formkit-alert{text-align:center;background:#f9fafb;border:1px solid #e3e3e3;border-radius:5px;-webkit-flex:1 0 auto;-ms-flex:1 0 auto;flex:1 0 auto;width:100%;margin:25px auto;padding:12px;list-style:none}.formkit-form[data-uid="8d653b97b6"] .formkit-alert:empty{display:none}.formkit-form[data-uid="8d653b97b6"] .formkit-alert-success{color:#0c905c;background:#d3fbeb;border-color:#10bf7a}.formkit-form[data-uid="8d653b97b6"] .formkit-alert-error{color:#ea4110;background:#fde8e2;border-color:#f2643b}.formkit-form[data-uid="8d653b97b6"] .formkit-spinner{text-align:center;width:0;height:0;margin:0 auto;-webkit-transition:all .3s ease-in-out;transition:all .3s ease-in-out;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;position:absolute;top:0;left:0;right:0;overflow:hidden}.formkit-form[data-uid="8d653b97b6"] .formkit-spinner>div{opacity:.3;background-color:#fff;border-radius:100%;width:12px;height:12px;margin:auto;-webkit-animation:1.4s ease-in-out infinite both formkit-bouncedelay-formkit-form-data-uid-8d653b97b6-;animation:1.4s ease-in-out infinite both formkit-bouncedelay-formkit-form-data-uid-8d653b97b6-;display:inline-block}.formkit-form[data-uid="8d653b97b6"] .formkit-spinner>div:first-child{-webkit-animation-delay:-.32s;animation-delay:-.32s}.formkit-form[data-uid="8d653b97b6"] .formkit-spinner>div:nth-child(2){-webkit-animation-delay:-.16s;animation-delay:-.16s}.formkit-form[data-uid="8d653b97b6"] .formkit-submit[data-active] .formkit-spinner{opacity:1;width:50px;height:100%}.formkit-form[data-uid="8d653b97b6"] .formkit-submit[data-active] .formkit-spinner~span{opacity:0}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by[data-active=false]{opacity:.35}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit-container{z-index:5;width:100%;margin:10px 0;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;position:relative}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit-container[data-active=false]{opacity:.35}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit{color:#373f45;cursor:pointer;opacity:.95;text-indent:100%;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-color:#fff;background-image:url("data:image/svg+xml;charset=utf8,%3Csvg width='162' height='20' viewBox='0 0 162 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M83.0561 15.2457C86.675 15.2457 89.4722 12.5154 89.4722 9.14749C89.4722 5.99211 86.8443 4.06563 85.1038 4.06563C82.6801 4.06563 80.7373 5.76407 80.4605 8.28551C80.4092 8.75244 80.0387 9.14403 79.5686 9.14069C78.7871 9.13509 77.6507 9.12841 76.9314 9.13092C76.6217 9.13199 76.3658 8.88106 76.381 8.57196C76.4895 6.38513 77.2218 4.3404 78.618 2.76974C80.1695 1.02445 82.4289 0 85.1038 0C89.5979 0 93.8406 4.07791 93.8406 9.14749C93.8406 14.7608 89.1832 19.3113 83.1517 19.3113C78.8502 19.3113 74.5179 16.5041 73.0053 12.5795C72.9999 12.565 72.9986 12.5492 73.0015 12.534C73.0218 12.4179 73.0617 12.3118 73.1011 12.2074C73.1583 12.0555 73.2143 11.907 73.2062 11.7359L73.18 11.1892C73.174 11.0569 73.2075 10.9258 73.2764 10.8127C73.3452 10.6995 73.4463 10.6094 73.5666 10.554L73.7852 10.4523C73.9077 10.3957 74.0148 10.3105 74.0976 10.204C74.1803 10.0974 74.2363 9.97252 74.2608 9.83983C74.3341 9.43894 74.6865 9.14749 75.0979 9.14749C75.7404 9.14749 76.299 9.57412 76.5088 10.1806C77.5188 13.1 79.1245 15.2457 83.0561 15.2457Z' fill='%23373F45'/%3E%3Cpath d='M155.758 6.91365C155.028 6.91365 154.804 6.47916 154.804 5.98857C154.804 5.46997 154.986 5.06348 155.758 5.06348C156.53 5.06348 156.712 5.46997 156.712 5.98857C156.712 6.47905 156.516 6.91365 155.758 6.91365ZM142.441 12.9304V9.32833L141.415 9.32323V8.90392C141.415 8.44719 141.786 8.07758 142.244 8.07986L142.441 8.08095V6.55306L144.082 6.09057V8.08073H145.569V8.50416C145.569 8.61242 145.548 8.71961 145.506 8.81961C145.465 8.91961 145.404 9.01047 145.328 9.08699C145.251 9.16351 145.16 9.2242 145.06 9.26559C144.96 9.30698 144.853 9.32826 144.745 9.32822H144.082V12.7201C144.082 13.2423 144.378 13.4256 144.76 13.4887C145.209 13.5629 145.583 13.888 145.583 14.343V14.9626C144.029 14.9626 142.441 14.8942 142.441 12.9304Z' fill='%23373F45'/%3E%3Cpath d='M110.058 7.92554C108.417 7.88344 106.396 8.92062 106.396 11.5137C106.396 14.0646 108.417 15.0738 110.058 15.0318C111.742 15.0738 113.748 14.0646 113.748 11.5137C113.748 8.92062 111.742 7.88344 110.058 7.92554ZM110.07 13.7586C108.878 13.7586 108.032 12.8905 108.032 11.461C108.032 10.1013 108.878 9.20569 110.071 9.20569C111.263 9.20569 112.101 10.0995 112.101 11.459C112.101 12.8887 111.263 13.7586 110.07 13.7586Z' fill='%23373F45'/%3E%3Cpath d='M118.06 7.94098C119.491 7.94098 120.978 8.33337 120.978 11.1366V14.893H120.063C119.608 14.893 119.238 14.524 119.238 14.0689V10.9965C119.238 9.66506 118.747 9.16047 117.891 9.16047C117.414 9.16047 116.797 9.52486 116.502 9.81915V14.069C116.502 14.1773 116.481 14.2845 116.44 14.3845C116.398 14.4845 116.337 14.5753 116.261 14.6519C116.184 14.7284 116.093 14.7891 115.993 14.8305C115.893 14.8719 115.786 14.8931 115.678 14.8931H114.847V8.10918H115.773C115.932 8.10914 116.087 8.16315 116.212 8.26242C116.337 8.36168 116.424 8.50033 116.46 8.65577C116.881 8.19328 117.428 7.94098 118.06 7.94098ZM122.854 8.09713C123.024 8.09708 123.19 8.1496 123.329 8.2475C123.468 8.34541 123.574 8.48391 123.631 8.64405L125.133 12.8486L126.635 8.64415C126.692 8.48402 126.798 8.34551 126.937 8.2476C127.076 8.1497 127.242 8.09718 127.412 8.09724H128.598L126.152 14.3567C126.091 14.5112 125.986 14.6439 125.849 14.7374C125.711 14.831 125.549 14.881 125.383 14.8809H124.333L121.668 8.09713H122.854Z' fill='%23373F45'/%3E%3Cpath d='M135.085 14.5514C134.566 14.7616 133.513 15.0416 132.418 15.0416C130.496 15.0416 129.024 13.9345 129.024 11.4396C129.024 9.19701 130.451 7.99792 132.191 7.99792C134.338 7.99792 135.254 9.4378 135.158 11.3979C135.139 11.8029 134.786 12.0983 134.38 12.0983H130.679C130.763 13.1916 131.562 13.7662 132.615 13.7662C133.028 13.7662 133.462 13.7452 133.983 13.6481C134.535 13.545 135.085 13.9375 135.085 14.4985V14.5514ZM133.673 10.949C133.785 9.87621 133.061 9.28752 132.191 9.28752C131.321 9.28752 130.734 9.93979 130.679 10.9489L133.673 10.949Z' fill='%23373F45'/%3E%3Cpath d='M137.345 8.11122C137.497 8.11118 137.645 8.16229 137.765 8.25635C137.884 8.35041 137.969 8.48197 138.005 8.62993C138.566 8.20932 139.268 7.94303 139.759 7.94303C139.801 7.94303 140.068 7.94303 140.489 7.99913V8.7265C140.489 9.11748 140.15 9.4147 139.759 9.4147C139.31 9.4147 138.651 9.5829 138.131 9.8773V14.8951H136.462V8.11112L137.345 8.11122ZM156.6 14.0508V8.09104H155.769C155.314 8.09104 154.944 8.45999 154.944 8.9151V14.8748H155.775C156.23 14.8748 156.6 14.5058 156.6 14.0508ZM158.857 12.9447V9.34254H157.749V8.91912C157.749 8.46401 158.118 8.09506 158.574 8.09506H158.857V6.56739L160.499 6.10479V8.09506H161.986V8.51848C161.986 8.97359 161.617 9.34254 161.161 9.34254H160.499V12.7345C160.499 13.2566 160.795 13.44 161.177 13.503C161.626 13.5774 162 13.9024 162 14.3574V14.977C160.446 14.977 158.857 14.9086 158.857 12.9447ZM98.1929 10.1124C98.2033 6.94046 100.598 5.16809 102.895 5.16809C104.171 5.16809 105.342 5.44285 106.304 6.12953L105.914 6.6631C105.654 7.02011 105.16 7.16194 104.749 6.99949C104.169 6.7702 103.622 6.7218 103.215 6.7218C101.335 6.7218 99.9169 7.92849 99.9068 10.1123C99.9169 12.2959 101.335 13.5201 103.215 13.5201C103.622 13.5201 104.169 13.4717 104.749 13.2424C105.16 13.0799 105.654 13.2046 105.914 13.5615L106.304 14.0952C105.342 14.7819 104.171 15.0566 102.895 15.0566C100.598 15.0566 98.2033 13.2842 98.1929 10.1124ZM147.619 5.21768C148.074 5.21768 148.444 5.58663 148.444 6.04174V9.81968L151.82 5.58131C151.897 5.47733 151.997 5.39282 152.112 5.3346C152.227 5.27638 152.355 5.24607 152.484 5.24611H153.984L150.166 10.0615L153.984 14.8749H152.484C152.355 14.8749 152.227 14.8446 152.112 14.7864C151.997 14.7281 151.897 14.6436 151.82 14.5397L148.444 10.3025V14.0508C148.444 14.5059 148.074 14.8749 147.619 14.8749H146.746V5.21768H147.619Z' fill='%23373F45'/%3E%3Cpath d='M0.773438 6.5752H2.68066C3.56543 6.5752 4.2041 6.7041 4.59668 6.96191C4.99219 7.21973 5.18994 7.62695 5.18994 8.18359C5.18994 8.55859 5.09326 8.87061 4.8999 9.11963C4.70654 9.36865 4.42822 9.52539 4.06494 9.58984V9.63379C4.51611 9.71875 4.84717 9.88721 5.05811 10.1392C5.27197 10.3882 5.37891 10.7266 5.37891 11.1543C5.37891 11.7314 5.17676 12.1841 4.77246 12.5122C4.37109 12.8374 3.81152 13 3.09375 13H0.773438V6.5752ZM1.82373 9.22949H2.83447C3.27393 9.22949 3.59473 9.16064 3.79688 9.02295C3.99902 8.88232 4.1001 8.64502 4.1001 8.31104C4.1001 8.00928 3.99023 7.79102 3.77051 7.65625C3.55371 7.52148 3.20801 7.4541 2.7334 7.4541H1.82373V9.22949ZM1.82373 10.082V12.1167H2.93994C3.37939 12.1167 3.71045 12.0332 3.93311 11.8662C4.15869 11.6963 4.27148 11.4297 4.27148 11.0664C4.27148 10.7324 4.15723 10.4849 3.92871 10.3237C3.7002 10.1626 3.35303 10.082 2.88721 10.082H1.82373Z' fill='%23373F45'/%3E%3Cpath d='M13.011 6.5752V10.7324C13.011 11.207 12.9084 11.623 12.7034 11.9805C12.5012 12.335 12.2068 12.6089 11.8201 12.8022C11.4363 12.9927 10.9763 13.0879 10.4402 13.0879C9.6433 13.0879 9.02368 12.877 8.5813 12.4551C8.13892 12.0332 7.91772 11.4531 7.91772 10.7148V6.5752H8.9724V10.6401C8.9724 11.1704 9.09546 11.5615 9.34155 11.8135C9.58765 12.0654 9.96557 12.1914 10.4753 12.1914C11.4656 12.1914 11.9607 11.6714 11.9607 10.6313V6.5752H13.011Z' fill='%23373F45'/%3E%3Cpath d='M15.9146 13V6.5752H16.9649V13H15.9146Z' fill='%23373F45'/%3E%3Cpath d='M19.9255 13V6.5752H20.9758V12.0991H23.696V13H19.9255Z' fill='%23373F45'/%3E%3Cpath d='M28.2828 13H27.2325V7.47607H25.3428V6.5752H30.1724V7.47607H28.2828V13Z' fill='%23373F45'/%3E%3Cpath d='M41.9472 13H40.8046L39.7148 9.16796C39.6679 9.00097 39.6093 8.76074 39.539 8.44727C39.4687 8.13086 39.4262 7.91113 39.4116 7.78809C39.3823 7.97559 39.3339 8.21875 39.2665 8.51758C39.2021 8.81641 39.1479 9.03905 39.1039 9.18554L38.0405 13H36.8979L36.0673 9.7832L35.2236 6.5752H36.2958L37.2143 10.3193C37.3578 10.9199 37.4604 11.4502 37.5219 11.9102C37.5541 11.6611 37.6025 11.3828 37.6669 11.0752C37.7314 10.7676 37.79 10.5186 37.8427 10.3281L38.8886 6.5752H39.9301L41.0024 10.3457C41.1049 10.6943 41.2133 11.2158 41.3276 11.9102C41.3715 11.4912 41.477 10.958 41.644 10.3105L42.558 6.5752H43.6215L41.9472 13Z' fill='%23373F45'/%3E%3Cpath d='M45.7957 13V6.5752H46.846V13H45.7957Z' fill='%23373F45'/%3E%3Cpath d='M52.0258 13H50.9755V7.47607H49.0859V6.5752H53.9155V7.47607H52.0258V13Z' fill='%23373F45'/%3E%3Cpath d='M61.2312 13H60.1765V10.104H57.2146V13H56.1643V6.5752H57.2146V9.20312H60.1765V6.5752H61.2312V13Z' fill='%23373F45'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;border:1px solid #dde2e7;border-radius:4px;align-items:center;width:190px;height:36px;margin:0 auto;padding:0;-webkit-text-decoration:none;text-decoration:none;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out;display:block;overflow:hidden}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit:hover,.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit:focus{opacity:1;background-color:#fff;-webkit-transform:scale(1.025)perspective(1px);-ms-transform:scale(1.025)perspective(1px);transform:scale(1.025)perspective(1px)}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit[data-variant=dark],.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit[data-variant=light]{background-color:#0000;border-color:#0000;width:166px}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit[data-variant=light]{color:#fff;background-image:url("data:image/svg+xml;charset=utf8,%3Csvg width='162' height='20' viewBox='0 0 162 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M83.0561 15.2457C86.675 15.2457 89.4722 12.5154 89.4722 9.14749C89.4722 5.99211 86.8443 4.06563 85.1038 4.06563C82.6801 4.06563 80.7373 5.76407 80.4605 8.28551C80.4092 8.75244 80.0387 9.14403 79.5686 9.14069C78.7871 9.13509 77.6507 9.12841 76.9314 9.13092C76.6217 9.13199 76.3658 8.88106 76.381 8.57196C76.4895 6.38513 77.2218 4.3404 78.618 2.76974C80.1695 1.02445 82.4289 0 85.1038 0C89.5979 0 93.8406 4.07791 93.8406 9.14749C93.8406 14.7608 89.1832 19.3113 83.1517 19.3113C78.8502 19.3113 74.5179 16.5041 73.0053 12.5795C72.9999 12.565 72.9986 12.5492 73.0015 12.534C73.0218 12.4179 73.0617 12.3118 73.1011 12.2074C73.1583 12.0555 73.2143 11.907 73.2062 11.7359L73.18 11.1892C73.174 11.0569 73.2075 10.9258 73.2764 10.8127C73.3452 10.6995 73.4463 10.6094 73.5666 10.554L73.7852 10.4523C73.9077 10.3957 74.0148 10.3105 74.0976 10.204C74.1803 10.0974 74.2363 9.97252 74.2608 9.83983C74.3341 9.43894 74.6865 9.14749 75.0979 9.14749C75.7404 9.14749 76.299 9.57412 76.5088 10.1806C77.5188 13.1 79.1245 15.2457 83.0561 15.2457Z' fill='white'/%3E%3Cpath d='M155.758 6.91365C155.028 6.91365 154.804 6.47916 154.804 5.98857C154.804 5.46997 154.986 5.06348 155.758 5.06348C156.53 5.06348 156.712 5.46997 156.712 5.98857C156.712 6.47905 156.516 6.91365 155.758 6.91365ZM142.441 12.9304V9.32833L141.415 9.32323V8.90392C141.415 8.44719 141.786 8.07758 142.244 8.07986L142.441 8.08095V6.55306L144.082 6.09057V8.08073H145.569V8.50416C145.569 8.61242 145.548 8.71961 145.506 8.81961C145.465 8.91961 145.404 9.01047 145.328 9.08699C145.251 9.16351 145.16 9.2242 145.06 9.26559C144.96 9.30698 144.853 9.32826 144.745 9.32822H144.082V12.7201C144.082 13.2423 144.378 13.4256 144.76 13.4887C145.209 13.5629 145.583 13.888 145.583 14.343V14.9626C144.029 14.9626 142.441 14.8942 142.441 12.9304Z' fill='white'/%3E%3Cpath d='M110.058 7.92554C108.417 7.88344 106.396 8.92062 106.396 11.5137C106.396 14.0646 108.417 15.0738 110.058 15.0318C111.742 15.0738 113.748 14.0646 113.748 11.5137C113.748 8.92062 111.742 7.88344 110.058 7.92554ZM110.07 13.7586C108.878 13.7586 108.032 12.8905 108.032 11.461C108.032 10.1013 108.878 9.20569 110.071 9.20569C111.263 9.20569 112.101 10.0995 112.101 11.459C112.101 12.8887 111.263 13.7586 110.07 13.7586Z' fill='white'/%3E%3Cpath d='M118.06 7.94098C119.491 7.94098 120.978 8.33337 120.978 11.1366V14.893H120.063C119.608 14.893 119.238 14.524 119.238 14.0689V10.9965C119.238 9.66506 118.747 9.16047 117.891 9.16047C117.414 9.16047 116.797 9.52486 116.502 9.81915V14.069C116.502 14.1773 116.481 14.2845 116.44 14.3845C116.398 14.4845 116.337 14.5753 116.261 14.6519C116.184 14.7284 116.093 14.7891 115.993 14.8305C115.893 14.8719 115.786 14.8931 115.678 14.8931H114.847V8.10918H115.773C115.932 8.10914 116.087 8.16315 116.212 8.26242C116.337 8.36168 116.424 8.50033 116.46 8.65577C116.881 8.19328 117.428 7.94098 118.06 7.94098ZM122.854 8.09713C123.024 8.09708 123.19 8.1496 123.329 8.2475C123.468 8.34541 123.574 8.48391 123.631 8.64405L125.133 12.8486L126.635 8.64415C126.692 8.48402 126.798 8.34551 126.937 8.2476C127.076 8.1497 127.242 8.09718 127.412 8.09724H128.598L126.152 14.3567C126.091 14.5112 125.986 14.6439 125.849 14.7374C125.711 14.831 125.549 14.881 125.383 14.8809H124.333L121.668 8.09713H122.854Z' fill='white'/%3E%3Cpath d='M135.085 14.5514C134.566 14.7616 133.513 15.0416 132.418 15.0416C130.496 15.0416 129.024 13.9345 129.024 11.4396C129.024 9.19701 130.451 7.99792 132.191 7.99792C134.338 7.99792 135.254 9.4378 135.158 11.3979C135.139 11.8029 134.786 12.0983 134.38 12.0983H130.679C130.763 13.1916 131.562 13.7662 132.615 13.7662C133.028 13.7662 133.462 13.7452 133.983 13.6481C134.535 13.545 135.085 13.9375 135.085 14.4985V14.5514ZM133.673 10.949C133.785 9.87621 133.061 9.28752 132.191 9.28752C131.321 9.28752 130.734 9.93979 130.679 10.9489L133.673 10.949Z' fill='white'/%3E%3Cpath d='M137.345 8.11122C137.497 8.11118 137.645 8.16229 137.765 8.25635C137.884 8.35041 137.969 8.48197 138.005 8.62993C138.566 8.20932 139.268 7.94303 139.759 7.94303C139.801 7.94303 140.068 7.94303 140.489 7.99913V8.7265C140.489 9.11748 140.15 9.4147 139.759 9.4147C139.31 9.4147 138.651 9.5829 138.131 9.8773V14.8951H136.462V8.11112L137.345 8.11122ZM156.6 14.0508V8.09104H155.769C155.314 8.09104 154.944 8.45999 154.944 8.9151V14.8748H155.775C156.23 14.8748 156.6 14.5058 156.6 14.0508ZM158.857 12.9447V9.34254H157.749V8.91912C157.749 8.46401 158.118 8.09506 158.574 8.09506H158.857V6.56739L160.499 6.10479V8.09506H161.986V8.51848C161.986 8.97359 161.617 9.34254 161.161 9.34254H160.499V12.7345C160.499 13.2566 160.795 13.44 161.177 13.503C161.626 13.5774 162 13.9024 162 14.3574V14.977C160.446 14.977 158.857 14.9086 158.857 12.9447ZM98.1929 10.1124C98.2033 6.94046 100.598 5.16809 102.895 5.16809C104.171 5.16809 105.342 5.44285 106.304 6.12953L105.914 6.6631C105.654 7.02011 105.16 7.16194 104.749 6.99949C104.169 6.7702 103.622 6.7218 103.215 6.7218C101.335 6.7218 99.9169 7.92849 99.9068 10.1123C99.9169 12.2959 101.335 13.5201 103.215 13.5201C103.622 13.5201 104.169 13.4717 104.749 13.2424C105.16 13.0799 105.654 13.2046 105.914 13.5615L106.304 14.0952C105.342 14.7819 104.171 15.0566 102.895 15.0566C100.598 15.0566 98.2033 13.2842 98.1929 10.1124ZM147.619 5.21768C148.074 5.21768 148.444 5.58663 148.444 6.04174V9.81968L151.82 5.58131C151.897 5.47733 151.997 5.39282 152.112 5.3346C152.227 5.27638 152.355 5.24607 152.484 5.24611H153.984L150.166 10.0615L153.984 14.8749H152.484C152.355 14.8749 152.227 14.8446 152.112 14.7864C151.997 14.7281 151.897 14.6436 151.82 14.5397L148.444 10.3025V14.0508C148.444 14.5059 148.074 14.8749 147.619 14.8749H146.746V5.21768H147.619Z' fill='white'/%3E%3Cpath d='M0.773438 6.5752H2.68066C3.56543 6.5752 4.2041 6.7041 4.59668 6.96191C4.99219 7.21973 5.18994 7.62695 5.18994 8.18359C5.18994 8.55859 5.09326 8.87061 4.8999 9.11963C4.70654 9.36865 4.42822 9.52539 4.06494 9.58984V9.63379C4.51611 9.71875 4.84717 9.88721 5.05811 10.1392C5.27197 10.3882 5.37891 10.7266 5.37891 11.1543C5.37891 11.7314 5.17676 12.1841 4.77246 12.5122C4.37109 12.8374 3.81152 13 3.09375 13H0.773438V6.5752ZM1.82373 9.22949H2.83447C3.27393 9.22949 3.59473 9.16064 3.79688 9.02295C3.99902 8.88232 4.1001 8.64502 4.1001 8.31104C4.1001 8.00928 3.99023 7.79102 3.77051 7.65625C3.55371 7.52148 3.20801 7.4541 2.7334 7.4541H1.82373V9.22949ZM1.82373 10.082V12.1167H2.93994C3.37939 12.1167 3.71045 12.0332 3.93311 11.8662C4.15869 11.6963 4.27148 11.4297 4.27148 11.0664C4.27148 10.7324 4.15723 10.4849 3.92871 10.3237C3.7002 10.1626 3.35303 10.082 2.88721 10.082H1.82373Z' fill='white'/%3E%3Cpath d='M13.011 6.5752V10.7324C13.011 11.207 12.9084 11.623 12.7034 11.9805C12.5012 12.335 12.2068 12.6089 11.8201 12.8022C11.4363 12.9927 10.9763 13.0879 10.4402 13.0879C9.6433 13.0879 9.02368 12.877 8.5813 12.4551C8.13892 12.0332 7.91772 11.4531 7.91772 10.7148V6.5752H8.9724V10.6401C8.9724 11.1704 9.09546 11.5615 9.34155 11.8135C9.58765 12.0654 9.96557 12.1914 10.4753 12.1914C11.4656 12.1914 11.9607 11.6714 11.9607 10.6313V6.5752H13.011Z' fill='white'/%3E%3Cpath d='M15.9146 13V6.5752H16.9649V13H15.9146Z' fill='white'/%3E%3Cpath d='M19.9255 13V6.5752H20.9758V12.0991H23.696V13H19.9255Z' fill='white'/%3E%3Cpath d='M28.2828 13H27.2325V7.47607H25.3428V6.5752H30.1724V7.47607H28.2828V13Z' fill='white'/%3E%3Cpath d='M41.9472 13H40.8046L39.7148 9.16796C39.6679 9.00097 39.6093 8.76074 39.539 8.44727C39.4687 8.13086 39.4262 7.91113 39.4116 7.78809C39.3823 7.97559 39.3339 8.21875 39.2665 8.51758C39.2021 8.81641 39.1479 9.03905 39.1039 9.18554L38.0405 13H36.8979L36.0673 9.7832L35.2236 6.5752H36.2958L37.2143 10.3193C37.3578 10.9199 37.4604 11.4502 37.5219 11.9102C37.5541 11.6611 37.6025 11.3828 37.6669 11.0752C37.7314 10.7676 37.79 10.5186 37.8427 10.3281L38.8886 6.5752H39.9301L41.0024 10.3457C41.1049 10.6943 41.2133 11.2158 41.3276 11.9102C41.3715 11.4912 41.477 10.958 41.644 10.3105L42.558 6.5752H43.6215L41.9472 13Z' fill='white'/%3E%3Cpath d='M45.7957 13V6.5752H46.846V13H45.7957Z' fill='white'/%3E%3Cpath d='M52.0258 13H50.9755V7.47607H49.0859V6.5752H53.9155V7.47607H52.0258V13Z' fill='white'/%3E%3Cpath d='M61.2312 13H60.1765V10.104H57.2146V13H56.1643V6.5752H57.2146V9.20312H60.1765V6.5752H61.2312V13Z' fill='white'/%3E%3C/svg%3E")}@-webkit-keyframes formkit-bouncedelay-formkit-form-data-uid-8d653b97b6-{0%,80%,to{-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0)}40%{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}@keyframes formkit-bouncedelay-formkit-form-data-uid-8d653b97b6-{0%,80%,to{-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0)}40%{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}.formkit-form[data-uid="8d653b97b6"] blockquote{border-left:5px solid #e1e1e1;margin:0 0 20px;padding:10px 20px}.formkit-form[data-uid="8d653b97b6"] .seva-custom-content{color:#fff;mix-blend-mode:difference;padding:15px;font-size:16px}.formkit-form[data-uid="8d653b97b6"]{max-width:700px}.formkit-form[data-uid="8d653b97b6"] [data-style=clean]{width:100%}.formkit-form[data-uid="8d653b97b6"] .formkit-fields{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;margin:0 auto;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.formkit-form[data-uid="8d653b97b6"] .formkit-field,.formkit-form[data-uid="8d653b97b6"] .formkit-submit{-webkit-flex:1 0 100%;-ms-flex:1 0 100%;flex:1 0 100%;margin:0 0 15px}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit-container{margin:0}.formkit-form[data-uid="8d653b97b6"] .formkit-submit{position:static}.formkit-form[data-uid="8d653b97b6"][min-width~="700"] [data-style=clean],.formkit-form[data-uid="8d653b97b6"][min-width~="800"] [data-style=clean]{padding:10px}.formkit-form[data-uid="8d653b97b6"][min-width~="700"] .formkit-fields[data-stacked=false],.formkit-form[data-uid="8d653b97b6"][min-width~="800"] .formkit-fields[data-stacked=false]{margin-left:-5px;margin-right:-5px}.formkit-form[data-uid="8d653b97b6"][min-width~="700"] .formkit-fields[data-stacked=false] .formkit-field,.formkit-form[data-uid="8d653b97b6"][min-width~="800"] .formkit-fields[data-stacked=false] .formkit-field,.formkit-form[data-uid="8d653b97b6"][min-width~="700"] .formkit-fields[data-stacked=false] .formkit-submit,.formkit-form[data-uid="8d653b97b6"][min-width~="800"] .formkit-fields[data-stacked=false] .formkit-submit{margin:0 5px 15px}.formkit-form[data-uid="8d653b97b6"][min-width~="700"] .formkit-fields[data-stacked=false] .formkit-field,.formkit-form[data-uid="8d653b97b6"][min-width~="800"] .formkit-fields[data-stacked=false] .formkit-field{-webkit-flex:100 auto;-ms-flex:100 auto;flex:100 auto}.formkit-form[data-uid="8d653b97b6"][min-width~="700"] .formkit-fields[data-stacked=false] .formkit-submit,.formkit-form[data-uid="8d653b97b6"][min-width~="800"] .formkit-fields[data-stacked=false] .formkit-submit{-webkit-flex:auto;-ms-flex:auto;flex:auto}</style></form>
</div><div><div class="quoteContainer_Karu"><figure class="tweetQuote_h8Rz"><blockquote><a href="https://twitter.com/TkDodo/status/1661337628875137027" target="_blank" rel="noreferrer nofollow">I'm constantly finding interesting things to learn in there.</a></blockquote><figcaption><a href="https://twitter.com/TkDodo" target="_blank" rel="noreferrer nofollow"><div class="avatar"><img alt="Dominik Dorfmeister" class="avatar__photo shadow--md avatarImg_b51M" src="https://unavatar.io/twitter/TkDodo?fallback=https://github.com/TkDodo.png"><div class="avatar__intro"><strong class="avatar__name"><cite>Dominik Dorfmeister</cite></strong><small class="avatar__subtitle" itemprop="description">Web Developer - React-Query maintainer</small></div></div></a></figcaption></figure></div></div></div>
<div role="separator" style="text-align:center;margin:10px 0"><img class="separator" src="https://thisweekinreact.com/emails/separators/christmas.png" width="600" height="64" style="width:100%;max-width:600px;margin:0 auto;object-fit:contain"></div>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="sponsor2">💸 Sponsor<a href="https://thisweekinreact.com/newsletter/277#sponsor2" class="hash-link" aria-label="Direct link to 💸 Sponsor" title="Direct link to 💸 Sponsor">​</a></h2>
<p><a href="https://www.meticulous.ai/?utm_source=thisweekinreact&amp;utm_medium=newsletter&amp;utm_campaign=26q1&amp;utm_content=2nd" target="_blank" rel="noopener noreferrer"><img decoding="async" loading="lazy" src="https://thisweekinreact.com/emails/issues/270/meticulous.jpg" alt="Still writing tests manually?" class="img_SS3x"></a></p>
<p><strong><a href="https://www.meticulous.ai/?utm_source=thisweekinreact&amp;utm_medium=newsletter&amp;utm_campaign=26q1&amp;utm_content=2nd" target="_blank" rel="noopener noreferrer">Still writing tests manually?</a></strong></p>
<p>Notion, Dropbox and LaunchDarkly&nbsp;have found a new testing paradigm - and they can't imagine working without it.&nbsp;Built by <a href="https://www.meticulous.ai/?utm_source=thisweekinreact&amp;utm_medium=newsletter&amp;utm_campaign=26q1&amp;utm_content=1st" target="_blank" rel="noopener noreferrer">ex-Palantir engineers</a>, Meticulous autonomously creates a continuously evolving suite of E2E UI tests that delivers <a href="https://www.meticulous.ai/?utm_source=thisweekinreact&amp;utm_medium=newsletter&amp;utm_campaign=26q1&amp;utm_content=1st" target="_blank" rel="noopener noreferrer">near-exhaustive coverage</a> with <em>zero developer effort</em> - impossible to deliver by any other means.&nbsp;</p>
<p>It works like magic in the background:</p>
<ul>
<li>Near-exhaustive coverage on every test run</li>
<li>No test creation</li>
<li><strong>No maintenance (seriously)</strong></li>
<li>Zero flakes (built on a deterministic browser)</li>
</ul>
<p><strong>🤨</strong> Curious? <a href="https://www.meticulous.ai/?utm_source=thisweekinreact&amp;utm_medium=newsletter&amp;utm_campaign=26q1&amp;utm_content=1st" target="_blank" rel="noopener noreferrer">Book in a time to learn more</a></p>
<div role="separator" style="text-align:center;margin:10px 0"><img class="separator" src="https://thisweekinreact.com/emails/separators/christmas.png" width="600" height="64" style="width:100%;max-width:600px;margin:0 auto;object-fit:contain"></div>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="react-native">📱 React-Native<a href="https://thisweekinreact.com/newsletter/277#react-native" class="hash-link" aria-label="Direct link to 📱 React-Native" title="Direct link to 📱 React-Native">​</a></h2>
<p><a href="https://docs.swmansion.com/pulsar/" target="_blank" rel="noopener noreferrer"><img decoding="async" loading="lazy" src="https://thisweekinreact.com/emails/issues/277/pulsar.jpg" alt="Pulsar - Haptic Feedback Library" class="img_SS3x"></a></p>
<p><strong><a href="https://docs.swmansion.com/pulsar/" target="_blank" rel="noopener noreferrer">Pulsar - Haptic Feedback Library</a></strong></p>
<p>Meet Pulsar, a new library from Software Mansion that makes implementing haptic feedback much easier. Comes with SDKs for React Native, native iOS, and Android. See also the <a href="https://www.youtube.com/watch?v=RAunnxSlvhM" target="_blank" rel="noopener noreferrer">intro video</a>.</p>
<ul>
<li>150+ patterns to browse, filter, preview, and ship</li>
<li>Live Preview Playground app for testing on a physical device</li>
<li>Multiplatform SDKs</li>
<li>Audio preview for testing in a simulator</li>
<li>Pulsar Studio – coming later – will allow the design of custom haptic sequences</li>
</ul>
<div role="separator" style="text-align:center;margin:10px 0"><img class="separator" src="https://thisweekinreact.com/emails/separators/christmas.png" width="600" height="64" style="width:100%;max-width:600px;margin:0 auto;object-fit:contain"></div>
<ul>
<li>💸 <a href="https://sentry.io/cookbook/debug-undefined-react-native/?utm_source=thisweekinreact&amp;utm_medium=paid-community&amp;utm_campaign=mobile-fy27q1-cookbook&amp;utm_content=newsletter-rn-link-rn-logs-trysentry" target="_blank" rel="noopener noreferrer">Sentry - A tutorial to debugging undefined properties in React Native by correlating frontend and backend logs</a></li>
<li>👀 <a href="https://github.com/swc-project/swc/pull/11702" target="_blank" rel="noopener noreferrer">SWC PR - Complete Hermes Flow stripping parity</a> - Currently, Babel is needed to strip non-TS code in React Native. The newly released <a href="https://swc.rs/docs/usage/flow" target="_blank" rel="noopener noreferrer">Flow support in SWC</a> could help you adopt an alternative toolchain, leading to build time improvements or faster unit tests.</li>
<li>💬 <a href="https://github.com/react-native-community/discussions-and-proposals/issues/993" target="_blank" rel="noopener noreferrer">React Native Proposal - Allow opting in to specific feature flags via public APIs</a> - Community proposal to expose experimental feature flags for testing before broad rollout.</li>
<li>📜 <a href="https://expo.dev/blog/how-to-keep-your-ota-updates-lean-and-fast" target="_blank" rel="noopener noreferrer">How to keep your OTA updates lean and fast</a> - Why smaller updates matter, how to ship them effectively, and how to monitor your usage.</li>
<li>📜 <a href="https://reactnativecrossroads.com/posts/react-native-085-changelog-dive/" target="_blank" rel="noopener noreferrer">React Native 0.85 changelog dive</a> - Analysis of 0.85's Shadow Tree commit branching, Animation Backend changes, and breaking changes for library authors.</li>
<li>📜 <a href="https://reactnativecrossroads.com/posts/uniwind-pro-1-release/" target="_blank" rel="noopener noreferrer">Zero re-renders on theme change: Introducing Uniwind Pro</a> - A look into first stable release, the C++ Shadow Tree Engine, className Animations with Reanimated, Animated Theme Transitions, pricing, and more.</li>
<li>📜 <a href="https://themythicalengineer.com/the-complete-guide-to-react-native-build-optimization.html" target="_blank" rel="noopener noreferrer">The Complete Guide to React Native Build Optimization</a> - How to improve build times with Gradle/Metro parallelization and C++ compiler caching.</li>
<li>📦 <a href="https://github.com/facebook/react-native/releases/tag/v0.85.1" target="_blank" rel="noopener noreferrer">RN 0.85.1 - Animation backend as experimental</a> - Enables the new Shared Animation Backend in the <a href="https://reactnative.dev/docs/releases/release-levels" target="_blank" rel="noopener noreferrer">experimental Release Level</a>.</li>
<li>📦 <a href="https://github.com/margelo/react-native-nitro-fetch/releases/tag/v1.0.0" target="_blank" rel="noopener noreferrer">Nitro Fetch 1.0 - Fast networking library, drop-in replacement for fetch</a> - This Margelo library supports HTTP/3, Prefetching, Steaming, FormData, WebSockets, worklets, and more. Demo on 🐦 <a href="https://x.com/margelo_com/status/2043674988062859608" target="_blank" rel="noopener noreferrer">X</a> shows the impressive performance impact on the Bluesky app.</li>
<li>📦 <a href="https://www.callstack.com/blog/agent-react-devtools-give-ai-agents-access-to-react-internals" target="_blank" rel="noopener noreferrer">Agent React DevTools - Give AI Agents Access to React Internals</a> - New CLI from Callstack that exposes React component tree and profiling data to AI agents, enabling deeper debugging beyond UI trees.</li>
<li>📦 <a href="https://github.com/JubaKitiashvili/expo-pretext" target="_blank" rel="noopener noreferrer">Expo Pretext - Text layout primitive React Native</a> - Add Pretext support to React Native, unlocking new layouts currently difficult to achieve with CSS or Skia.</li>
<li>📦 <a href="https://github.com/gideon-del/react-native-nitro-vector" target="_blank" rel="noopener noreferrer">Nitro Vector - C++ vector path engine powered by Nitro Modules</a> - 104x faster bezier math, boolean ops, path analysis, and SVG parsing — all in C++ off the JS thread.</li>
<li>📦 <a href="https://github.com/steve228uk/metro-mcp" target="_blank" rel="noopener noreferrer">Metro MCP - MCP server for React Native debugging &amp; automation</a> - Plugin-based MCP server connecting to Metro via CDP — exposes console logs, network, Redux, components, test recording, and more. Works alongside Chrome DevTools.</li>
<li>📦 <a href="https://github.com/nandorojo/galeria/releases/tag/v3.0.0" target="_blank" rel="noopener noreferrer">Galeria 3.0 - New Architecture only, iOS 16+</a></li>
<li>📦 <a href="https://github.com/callstack/react-native-builder-bob/releases/tag/create-react-native-library%400.62.0" target="_blank" rel="noopener noreferrer">CRNL 0.62 - RN 0.85, Expo SDK 55 support</a></li>
<li>📦 <a href="https://github.com/facebook/metro/releases/tag/v0.84.3" target="_blank" rel="noopener noreferrer">Metro 0.84.3 - TLS support, Fast Refresh heartbeat, optimized cache</a></li>
<li>📦 <a href="https://github.com/callstackincubator/react-native-harness/releases/tag/v1.1.0" target="_blank" rel="noopener noreferrer">Harness 1.1 - CI improvements, unified GitHub Action, plugin system</a></li>
<li>📦 <a href="https://github.com/callstackincubator/rozenite/releases/tag/v1.7.0" target="_blank" rel="noopener noreferrer">Rozenite 1.7 - Metro-backed agent workflow, SQLite plugin, Webpack web support</a></li>
<li>📦 <a href="https://github.com/AppAndFlow/react-native-ease/releases/tag/v0.7.0" target="_blank" rel="noopener noreferrer">React Native Ease 0.7 - Animated borderColor, shadow properties</a></li>
<li>📦 <a href="https://github.com/callstackincubator/voltra/releases/tag/v1.4.0" target="_blank" rel="noopener noreferrer">Voltra 1.4 - Android theme-aware widget colors, Android ongoing (persistent) notifications</a></li>
<li>🎥 <a href="https://www.youtube.com/watch?v=J8hmOaA5uzc" target="_blank" rel="noopener noreferrer">Beto - 5 React Native Styles Your AI Is Getting Wrong</a> - Linear Gradient (experimental), filter, boxShadow, gap, mixBlendMode, are available in RN, no need for external libraries.</li>
<li>🎥 <a href="https://www.youtube.com/watch?v=99ESJ-_CeWg" target="_blank" rel="noopener noreferrer">Callstack - AI-Assisted Migrations to React Native: From Months to Days</a> - Reducing migration using AI in real React Native workflows. Practical strategies for modernizing existing apps without starting from scratch.</li>
<li>🎙️ <a href="https://infinite.red/react-native-radio/rnr-359-the-ai-apocalypse-the-past-present-and-future-of-software" target="_blank" rel="noopener noreferrer">RNR 359 - The AI Apocalypse? The past, present, and future of software</a></li>
</ul>
<div role="separator" style="text-align:center;margin:10px 0"><img class="separator" src="https://thisweekinreact.com/emails/separators/christmas.png" width="600" height="64" style="width:100%;max-width:600px;margin:0 auto;object-fit:contain"></div>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="other">🔀 Other<a href="https://thisweekinreact.com/newsletter/277#other" class="hash-link" aria-label="Direct link to 🔀 Other" title="Direct link to 🔀 Other">​</a></h2>
<ul>
<li>👀 <a href="https://github.github.com/gh-stack/" target="_blank" rel="noopener noreferrer">GitHub Stacked PRs in private preview</a> - A much-anticipated feature lets you break large changes into small, focused PRs that build on each other.</li>
<li>📜 <a href="https://www.inngest.com/blog/hanging-promises-for-control-flow" target="_blank" rel="noopener noreferrer">You can't cancel a JavaScript promise (except sometimes you can)</a> - Using never-resolving promises to interrupt async functions.</li>
<li>📜 <a href="https://encore.dev/blog/rust-runtime" target="_blank" rel="noopener noreferrer">What We Learned Building a Rust Runtime for TypeScript</a> - How Encore built a Rust runtime embedded in Node.js via napi-rs, moving infrastructure concerns (HTTP, DB, pub/sub) out of the JS event loop. Benchmarks show 9x Express throughput with 80% less latency.</li>
<li>📦 <a href="https://developer.chrome.com/blog/chrome-148-beta" target="_blank" rel="noopener noreferrer">Chrome 148 Beta - Name-only container queries in CSS, Prompt API, Web Serial API on Android, and more</a> - Notably includes an origin trial for the <a href="https://github.com/WICG/html-in-canvas" target="_blank" rel="noopener noreferrer">HTML-in-Canvas</a> API that led to many impressive demos.</li>
<li>📦 <a href="https://github.com/yuku-toolchain/yuku" target="_blank" rel="noopener noreferrer">Yuku - High-performance JS/TS toolchain in Zig</a> - Already full spec compliance, competitive with Oxc on raw parsing speed.</li>
<li>📦 <a href="https://webpack.js.org/blog/2026-04-08-webpack-5-106/" target="_blank" rel="noopener noreferrer">Webpack 5.106 - Plugin validation hooks, CSS runtime injection, smarter tree shaking, experimental Oxc parser</a></li>
<li>📦 <a href="https://bun.com/blog/bun-v1.3.12" target="_blank" rel="noopener noreferrer">Bun 1.3.12 - WebView headless browser, Markdown in terminal, in-process Cron scheduler</a></li>
<li>📦 <a href="https://github.com/JamieMason/syncpack/releases/tag/14.0.0" target="_blank" rel="noopener noreferrer">Syncpack 14.0 - CLI for managing npm dependency versions, rewritten in Rust</a></li>
<li>📦 <a href="https://aejkatappaja.github.io/phantom-ui/" target="_blank" rel="noopener noreferrer">Phantom UI - Structure-aware skeleton loader for every framework, based on Web Component</a></li>
</ul>
<div role="separator" style="text-align:center;margin:10px 0"><img class="separator" src="https://thisweekinreact.com/emails/separators/christmas.png" width="600" height="64" style="width:100%;max-width:600px;margin:0 auto;object-fit:contain"></div>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="fun">🤭 Fun<a href="https://thisweekinreact.com/newsletter/277#fun" class="hash-link" aria-label="Direct link to 🤭 Fun" title="Direct link to 🤭 Fun">​</a></h2>
<p><a href="https://x.com/ThisWeekInReact/status/2042171782195536326" target="_blank" rel="noopener noreferrer"><img decoding="async" loading="lazy" src="https://thisweekinreact.com/emails/issues/277/meme.jpg" alt="alt" class="img_SS3x"></a></p>
<p><a href="https://x.com/mrousavy/status/2044072110209819032" target="_blank" rel="noopener noreferrer"><img decoding="async" loading="lazy" src="https://thisweekinreact.com/emails/issues/277/meme2.jpg" alt="alt" class="img_SS3x"></a></p>
<p>See ya! 👋</p>]]></content>
        <author>
            <name>Sébastien Lorber</name>
            <uri>https://sebastienlorber.com</uri>
        </author>
        <author>
            <name>Jan Jaworski</name>
            <uri>https://x.com/jaworek3211</uri>
        </author>
    </entry>
    <entry>
        <title type="html"><![CDATA[This Week In React #276: Boneyard, Ink, MUI, React Router, Next.js, shadcn, Docusaurus, Comark, Forms, Shaders | RN 0.85, ViewTransition, Skia, Windows, CRNL, Maestro, True Sheet, Nitro Player, RNGH | JSIR, Security, esbuild, Ky, Intl]]></title>
        <id>https://thisweekinreact.com/newsletter/276</id>
        <link href="https://thisweekinreact.com/newsletter/276"/>
        <updated>2026-04-08T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Hi there, Seb and Jan here 👋\!]]></summary>
        <content type="html"><![CDATA[<p>Hi there, <a href="https://x.com/sebastienlorber" target="_blank" rel="noopener noreferrer">Seb</a> and <a href="https://x.com/jaworek3211" target="_blank" rel="noopener noreferrer">Jan</a> here 👋!</p>
<p>This week brings a collection of smaller, yet still noteworthy, React releases and articles.</p>
<p>On the React Native side, v0.85 just dropped with a new Shared Animation backend. Speaking of animations, we have a little sneak peek of exciting things coming, such as <code>&lt;ViewTransition&gt;</code> and Skia Graphite.</p>
<p>With the recent surge in npm supply chain attacks, it’s worth reviewing the <a href="https://github.com/lirantal/npm-security-best-practices" target="_blank" rel="noopener noreferrer">npm Security Best Practices</a> guide to secure your setup.</p>
<p>Let's dive in!</p>
<!-- -->
<p>As always, thanks for supporting us on your favorite platform:</p>
<ul>
<li>🦋 <a href="https://slo.im/last/b" target="_blank" rel="noopener noreferrer">Bluesky</a></li>
<li>✖️ <a href="https://slo.im/last/x" target="_blank" rel="noopener noreferrer">X / Twitter</a></li>
<li>👔 <a href="https://slo.im/last/l" target="_blank" rel="noopener noreferrer">LinkedIn</a></li>
<li>👽 <a href="https://slo.im/last/r" target="_blank" rel="noopener noreferrer">Reddit</a></li>
</ul>
<div class="card subscribeFormEmbed_aAcT"><p><strong>Don't miss the next email!</strong></p><div class="">
<script src="https://f.convertkit.com/ckjs/ck.5.js"></script>
      <form action="https://app.convertkit.com/forms/3472133/subscriptions" class="seva-form formkit-form" method="post" data-sv-form="3472133" data-uid="8d653b97b6" data-format="inline" data-version="5" data-options="{&quot;settings&quot;:{&quot;after_subscribe&quot;:{&quot;action&quot;:&quot;redirect&quot;,&quot;success_message&quot;:&quot;Success! Now check your email to confirm your subscription.&quot;,&quot;redirect_url&quot;:&quot;https://thisweekinreact.com/workflow/confirm-your-email&quot;},&quot;analytics&quot;:{&quot;google&quot;:null,&quot;fathom&quot;:null,&quot;facebook&quot;:null,&quot;segment&quot;:null,&quot;pinterest&quot;:null,&quot;sparkloop&quot;:null,&quot;googletagmanager&quot;:null},&quot;modal&quot;:{&quot;trigger&quot;:&quot;timer&quot;,&quot;scroll_percentage&quot;:null,&quot;timer&quot;:5,&quot;devices&quot;:&quot;all&quot;,&quot;show_once_every&quot;:15},&quot;powered_by&quot;:{&quot;show&quot;:false,&quot;url&quot;:&quot;https://convertkit.com/features/forms?lmref=d0748g&amp;utm_campaign=poweredby&amp;utm_content=form&amp;utm_medium=referral&amp;utm_source=dynamic&quot;},&quot;recaptcha&quot;:{&quot;enabled&quot;:false},&quot;return_visitor&quot;:{&quot;action&quot;:&quot;show&quot;,&quot;custom_content&quot;:&quot;&quot;},&quot;slide_in&quot;:{&quot;display_in&quot;:&quot;bottom_right&quot;,&quot;trigger&quot;:&quot;timer&quot;,&quot;scroll_percentage&quot;:null,&quot;timer&quot;:5,&quot;devices&quot;:&quot;all&quot;,&quot;show_once_every&quot;:15},&quot;sticky_bar&quot;:{&quot;display_in&quot;:&quot;top&quot;,&quot;trigger&quot;:&quot;timer&quot;,&quot;scroll_percentage&quot;:null,&quot;timer&quot;:5,&quot;devices&quot;:&quot;all&quot;,&quot;show_once_every&quot;:15}},&quot;version&quot;:&quot;5&quot;}" min-width="400 500 600 700 800"><div data-style="clean"><ul class="formkit-alert formkit-alert-error" data-element="errors" data-group="alert"></ul><div data-element="fields" data-stacked="false" class="seva-fields formkit-fields"><div class="formkit-field"><input class="formkit-input" name="email_address" aria-label="Email Address" placeholder="Email Address" required="" type="email" style="color: rgb(0, 0, 0); border-color: rgb(227, 227, 227); border-radius: 4px; font-weight: 700;"></div><button data-element="submit" class="formkit-submit formkit-submit" style="color: rgb(255, 255, 255); background-color: rgb(0, 54, 92); border-radius: 4px; font-weight: 700;"><div class="formkit-spinner"><div></div><div></div><div></div></div><span class="">Subscribe now!</span></button></div></div><style>.formkit-form[data-uid="8d653b97b6"] *{box-sizing:border-box}.formkit-form[data-uid="8d653b97b6"]{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.formkit-form[data-uid="8d653b97b6"] legend{font-size:inherit;border:none;margin-bottom:10px;padding:0;display:table;position:relative}.formkit-form[data-uid="8d653b97b6"] fieldset{border:0;min-width:0;margin:0;padding:.01em 0 0}.formkit-form[data-uid="8d653b97b6"] body:not(:-moz-handler-blocked) fieldset{display:table-cell}.formkit-form[data-uid="8d653b97b6"] h1,.formkit-form[data-uid="8d653b97b6"] h2,.formkit-form[data-uid="8d653b97b6"] h3,.formkit-form[data-uid="8d653b97b6"] h4,.formkit-form[data-uid="8d653b97b6"] h5,.formkit-form[data-uid="8d653b97b6"] h6{color:inherit;font-size:inherit;font-weight:inherit}.formkit-form[data-uid="8d653b97b6"] h2{margin:1em 0;font-size:1.5em}.formkit-form[data-uid="8d653b97b6"] h3{margin:1em 0;font-size:1.17em}.formkit-form[data-uid="8d653b97b6"] p{color:inherit;font-size:inherit;font-weight:inherit}.formkit-form[data-uid="8d653b97b6"] ol:not([template-default]),.formkit-form[data-uid="8d653b97b6"] ul:not([template-default]),.formkit-form[data-uid="8d653b97b6"] blockquote:not([template-default]){text-align:left}.formkit-form[data-uid="8d653b97b6"] p:not([template-default]),.formkit-form[data-uid="8d653b97b6"] hr:not([template-default]),.formkit-form[data-uid="8d653b97b6"] blockquote:not([template-default]),.formkit-form[data-uid="8d653b97b6"] ol:not([template-default]),.formkit-form[data-uid="8d653b97b6"] ul:not([template-default]){color:inherit;font-style:initial}.formkit-form[data-uid="8d653b97b6"] .ordered-list,.formkit-form[data-uid="8d653b97b6"] .unordered-list{padding-left:1em;list-style-position:outside!important}.formkit-form[data-uid="8d653b97b6"] .list-item{padding-left:0}.formkit-form[data-uid="8d653b97b6"][data-format=modal],.formkit-form[data-uid="8d653b97b6"][data-format=slide\ in],.formkit-form[data-uid="8d653b97b6"][data-format=sticky\ bar]{display:none}.formkit-sticky-bar .formkit-form[data-uid="8d653b97b6"][data-format=sticky\ bar]{display:block}.formkit-form[data-uid="8d653b97b6"] .formkit-input,.formkit-form[data-uid="8d653b97b6"] .formkit-select,.formkit-form[data-uid="8d653b97b6"] .formkit-checkboxes{width:100%}.formkit-form[data-uid="8d653b97b6"] .formkit-button,.formkit-form[data-uid="8d653b97b6"] .formkit-submit{color:#fff;cursor:pointer;text-align:center;cursor:pointer;vertical-align:middle;border:0;border-radius:5px;margin-bottom:15px;padding:0;font-size:15px;font-weight:500;display:inline-block;position:relative;overflow:hidden}.formkit-form[data-uid="8d653b97b6"] .formkit-button:hover,.formkit-form[data-uid="8d653b97b6"] .formkit-submit:hover,.formkit-form[data-uid="8d653b97b6"] .formkit-button:focus,.formkit-form[data-uid="8d653b97b6"] .formkit-submit:focus{outline:none}.formkit-form[data-uid="8d653b97b6"] .formkit-button:hover>span,.formkit-form[data-uid="8d653b97b6"] .formkit-submit:hover>span,.formkit-form[data-uid="8d653b97b6"] .formkit-button:focus>span,.formkit-form[data-uid="8d653b97b6"] .formkit-submit:focus>span{background-color:#0000001a}.formkit-form[data-uid="8d653b97b6"] .formkit-button>span,.formkit-form[data-uid="8d653b97b6"] .formkit-submit>span{padding:12px 24px;-webkit-transition:all .3s ease-in-out;transition:all .3s ease-in-out;display:block}.formkit-form[data-uid="8d653b97b6"] .formkit-input{background:#fff;border:1px solid #e3e3e3;-webkit-flex:1 0 auto;-ms-flex:1 0 auto;flex:1 0 auto;margin:0;padding:12px;font-size:15px;line-height:1.4;-webkit-transition:border-color .3s ease-out;transition:border-color .3s ease-out}.formkit-form[data-uid="8d653b97b6"] .formkit-input:focus{border-color:#1677be;outline:none;-webkit-transition:border-color .3s;transition:border-color .3s}.formkit-form[data-uid="8d653b97b6"] .formkit-input::-webkit-input-placeholder{color:inherit;opacity:.8}.formkit-form[data-uid="8d653b97b6"] .formkit-input::placeholder{color:inherit;opacity:.8}.formkit-form[data-uid="8d653b97b6"] .formkit-input:-ms-placeholder-shown{color:inherit;opacity:.8}.formkit-form[data-uid="8d653b97b6"] .formkit-input::placeholder{color:inherit;opacity:.8}.formkit-form[data-uid="8d653b97b6"] [data-group=dropdown]{width:100%;display:inline-block;position:relative}.formkit-form[data-uid="8d653b97b6"] [data-group=dropdown]:before{content:"";pointer-events:none;z-index:999;border:6px solid #0000;border-top-color:#4f4f4f;border-bottom-width:0;width:0;height:0;position:absolute;top:calc(50% - 2.5px);right:10px}.formkit-form[data-uid="8d653b97b6"] [data-group=dropdown] select{cursor:pointer;color:#333;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#fff;border:1px solid #e3e3e3;width:100%;height:auto;margin-bottom:0;padding:12px 25px 12px 12px;font-size:15px;line-height:1.4}.formkit-form[data-uid="8d653b97b6"] [data-group=dropdown] select:focus{outline:none}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes]{text-align:left;margin:0}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox]{margin-bottom:10px}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] *{cursor:pointer}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox]:last-of-type{margin-bottom:0}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] input[type=checkbox]{display:none}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] input[type=checkbox]+label:after{content:none}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] input[type=checkbox]:checked+label:after{content:"";border-color:#fff}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] input[type=checkbox]:checked+label:before{background:#10bf7a;border-color:#10bf7a}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] label{padding-left:28px;display:inline-block;position:relative}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] label:before,.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] label:after{content:"";display:inline-block;position:absolute}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] label:before{background:#fff;border:1px solid #e3e3e3;width:16px;height:16px;top:3px;left:0}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] label:after{border-bottom:2px solid #4d4d4d;border-left:2px solid #4d4d4d;width:8px;height:4px;top:8px;left:4px;-webkit-transform:rotate(-45deg);-ms-transform:rotate(-45deg);transform:rotate(-45deg)}.formkit-form[data-uid="8d653b97b6"] .formkit-alert{text-align:center;background:#f9fafb;border:1px solid #e3e3e3;border-radius:5px;-webkit-flex:1 0 auto;-ms-flex:1 0 auto;flex:1 0 auto;width:100%;margin:25px auto;padding:12px;list-style:none}.formkit-form[data-uid="8d653b97b6"] .formkit-alert:empty{display:none}.formkit-form[data-uid="8d653b97b6"] .formkit-alert-success{color:#0c905c;background:#d3fbeb;border-color:#10bf7a}.formkit-form[data-uid="8d653b97b6"] .formkit-alert-error{color:#ea4110;background:#fde8e2;border-color:#f2643b}.formkit-form[data-uid="8d653b97b6"] .formkit-spinner{text-align:center;width:0;height:0;margin:0 auto;-webkit-transition:all .3s ease-in-out;transition:all .3s ease-in-out;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;position:absolute;top:0;left:0;right:0;overflow:hidden}.formkit-form[data-uid="8d653b97b6"] .formkit-spinner>div{opacity:.3;background-color:#fff;border-radius:100%;width:12px;height:12px;margin:auto;-webkit-animation:1.4s ease-in-out infinite both formkit-bouncedelay-formkit-form-data-uid-8d653b97b6-;animation:1.4s ease-in-out infinite both formkit-bouncedelay-formkit-form-data-uid-8d653b97b6-;display:inline-block}.formkit-form[data-uid="8d653b97b6"] .formkit-spinner>div:first-child{-webkit-animation-delay:-.32s;animation-delay:-.32s}.formkit-form[data-uid="8d653b97b6"] .formkit-spinner>div:nth-child(2){-webkit-animation-delay:-.16s;animation-delay:-.16s}.formkit-form[data-uid="8d653b97b6"] .formkit-submit[data-active] .formkit-spinner{opacity:1;width:50px;height:100%}.formkit-form[data-uid="8d653b97b6"] .formkit-submit[data-active] .formkit-spinner~span{opacity:0}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by[data-active=false]{opacity:.35}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit-container{z-index:5;width:100%;margin:10px 0;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;position:relative}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit-container[data-active=false]{opacity:.35}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit{color:#373f45;cursor:pointer;opacity:.95;text-indent:100%;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-color:#fff;background-image:url("data:image/svg+xml;charset=utf8,%3Csvg width='162' height='20' viewBox='0 0 162 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M83.0561 15.2457C86.675 15.2457 89.4722 12.5154 89.4722 9.14749C89.4722 5.99211 86.8443 4.06563 85.1038 4.06563C82.6801 4.06563 80.7373 5.76407 80.4605 8.28551C80.4092 8.75244 80.0387 9.14403 79.5686 9.14069C78.7871 9.13509 77.6507 9.12841 76.9314 9.13092C76.6217 9.13199 76.3658 8.88106 76.381 8.57196C76.4895 6.38513 77.2218 4.3404 78.618 2.76974C80.1695 1.02445 82.4289 0 85.1038 0C89.5979 0 93.8406 4.07791 93.8406 9.14749C93.8406 14.7608 89.1832 19.3113 83.1517 19.3113C78.8502 19.3113 74.5179 16.5041 73.0053 12.5795C72.9999 12.565 72.9986 12.5492 73.0015 12.534C73.0218 12.4179 73.0617 12.3118 73.1011 12.2074C73.1583 12.0555 73.2143 11.907 73.2062 11.7359L73.18 11.1892C73.174 11.0569 73.2075 10.9258 73.2764 10.8127C73.3452 10.6995 73.4463 10.6094 73.5666 10.554L73.7852 10.4523C73.9077 10.3957 74.0148 10.3105 74.0976 10.204C74.1803 10.0974 74.2363 9.97252 74.2608 9.83983C74.3341 9.43894 74.6865 9.14749 75.0979 9.14749C75.7404 9.14749 76.299 9.57412 76.5088 10.1806C77.5188 13.1 79.1245 15.2457 83.0561 15.2457Z' fill='%23373F45'/%3E%3Cpath d='M155.758 6.91365C155.028 6.91365 154.804 6.47916 154.804 5.98857C154.804 5.46997 154.986 5.06348 155.758 5.06348C156.53 5.06348 156.712 5.46997 156.712 5.98857C156.712 6.47905 156.516 6.91365 155.758 6.91365ZM142.441 12.9304V9.32833L141.415 9.32323V8.90392C141.415 8.44719 141.786 8.07758 142.244 8.07986L142.441 8.08095V6.55306L144.082 6.09057V8.08073H145.569V8.50416C145.569 8.61242 145.548 8.71961 145.506 8.81961C145.465 8.91961 145.404 9.01047 145.328 9.08699C145.251 9.16351 145.16 9.2242 145.06 9.26559C144.96 9.30698 144.853 9.32826 144.745 9.32822H144.082V12.7201C144.082 13.2423 144.378 13.4256 144.76 13.4887C145.209 13.5629 145.583 13.888 145.583 14.343V14.9626C144.029 14.9626 142.441 14.8942 142.441 12.9304Z' fill='%23373F45'/%3E%3Cpath d='M110.058 7.92554C108.417 7.88344 106.396 8.92062 106.396 11.5137C106.396 14.0646 108.417 15.0738 110.058 15.0318C111.742 15.0738 113.748 14.0646 113.748 11.5137C113.748 8.92062 111.742 7.88344 110.058 7.92554ZM110.07 13.7586C108.878 13.7586 108.032 12.8905 108.032 11.461C108.032 10.1013 108.878 9.20569 110.071 9.20569C111.263 9.20569 112.101 10.0995 112.101 11.459C112.101 12.8887 111.263 13.7586 110.07 13.7586Z' fill='%23373F45'/%3E%3Cpath d='M118.06 7.94098C119.491 7.94098 120.978 8.33337 120.978 11.1366V14.893H120.063C119.608 14.893 119.238 14.524 119.238 14.0689V10.9965C119.238 9.66506 118.747 9.16047 117.891 9.16047C117.414 9.16047 116.797 9.52486 116.502 9.81915V14.069C116.502 14.1773 116.481 14.2845 116.44 14.3845C116.398 14.4845 116.337 14.5753 116.261 14.6519C116.184 14.7284 116.093 14.7891 115.993 14.8305C115.893 14.8719 115.786 14.8931 115.678 14.8931H114.847V8.10918H115.773C115.932 8.10914 116.087 8.16315 116.212 8.26242C116.337 8.36168 116.424 8.50033 116.46 8.65577C116.881 8.19328 117.428 7.94098 118.06 7.94098ZM122.854 8.09713C123.024 8.09708 123.19 8.1496 123.329 8.2475C123.468 8.34541 123.574 8.48391 123.631 8.64405L125.133 12.8486L126.635 8.64415C126.692 8.48402 126.798 8.34551 126.937 8.2476C127.076 8.1497 127.242 8.09718 127.412 8.09724H128.598L126.152 14.3567C126.091 14.5112 125.986 14.6439 125.849 14.7374C125.711 14.831 125.549 14.881 125.383 14.8809H124.333L121.668 8.09713H122.854Z' fill='%23373F45'/%3E%3Cpath d='M135.085 14.5514C134.566 14.7616 133.513 15.0416 132.418 15.0416C130.496 15.0416 129.024 13.9345 129.024 11.4396C129.024 9.19701 130.451 7.99792 132.191 7.99792C134.338 7.99792 135.254 9.4378 135.158 11.3979C135.139 11.8029 134.786 12.0983 134.38 12.0983H130.679C130.763 13.1916 131.562 13.7662 132.615 13.7662C133.028 13.7662 133.462 13.7452 133.983 13.6481C134.535 13.545 135.085 13.9375 135.085 14.4985V14.5514ZM133.673 10.949C133.785 9.87621 133.061 9.28752 132.191 9.28752C131.321 9.28752 130.734 9.93979 130.679 10.9489L133.673 10.949Z' fill='%23373F45'/%3E%3Cpath d='M137.345 8.11122C137.497 8.11118 137.645 8.16229 137.765 8.25635C137.884 8.35041 137.969 8.48197 138.005 8.62993C138.566 8.20932 139.268 7.94303 139.759 7.94303C139.801 7.94303 140.068 7.94303 140.489 7.99913V8.7265C140.489 9.11748 140.15 9.4147 139.759 9.4147C139.31 9.4147 138.651 9.5829 138.131 9.8773V14.8951H136.462V8.11112L137.345 8.11122ZM156.6 14.0508V8.09104H155.769C155.314 8.09104 154.944 8.45999 154.944 8.9151V14.8748H155.775C156.23 14.8748 156.6 14.5058 156.6 14.0508ZM158.857 12.9447V9.34254H157.749V8.91912C157.749 8.46401 158.118 8.09506 158.574 8.09506H158.857V6.56739L160.499 6.10479V8.09506H161.986V8.51848C161.986 8.97359 161.617 9.34254 161.161 9.34254H160.499V12.7345C160.499 13.2566 160.795 13.44 161.177 13.503C161.626 13.5774 162 13.9024 162 14.3574V14.977C160.446 14.977 158.857 14.9086 158.857 12.9447ZM98.1929 10.1124C98.2033 6.94046 100.598 5.16809 102.895 5.16809C104.171 5.16809 105.342 5.44285 106.304 6.12953L105.914 6.6631C105.654 7.02011 105.16 7.16194 104.749 6.99949C104.169 6.7702 103.622 6.7218 103.215 6.7218C101.335 6.7218 99.9169 7.92849 99.9068 10.1123C99.9169 12.2959 101.335 13.5201 103.215 13.5201C103.622 13.5201 104.169 13.4717 104.749 13.2424C105.16 13.0799 105.654 13.2046 105.914 13.5615L106.304 14.0952C105.342 14.7819 104.171 15.0566 102.895 15.0566C100.598 15.0566 98.2033 13.2842 98.1929 10.1124ZM147.619 5.21768C148.074 5.21768 148.444 5.58663 148.444 6.04174V9.81968L151.82 5.58131C151.897 5.47733 151.997 5.39282 152.112 5.3346C152.227 5.27638 152.355 5.24607 152.484 5.24611H153.984L150.166 10.0615L153.984 14.8749H152.484C152.355 14.8749 152.227 14.8446 152.112 14.7864C151.997 14.7281 151.897 14.6436 151.82 14.5397L148.444 10.3025V14.0508C148.444 14.5059 148.074 14.8749 147.619 14.8749H146.746V5.21768H147.619Z' fill='%23373F45'/%3E%3Cpath d='M0.773438 6.5752H2.68066C3.56543 6.5752 4.2041 6.7041 4.59668 6.96191C4.99219 7.21973 5.18994 7.62695 5.18994 8.18359C5.18994 8.55859 5.09326 8.87061 4.8999 9.11963C4.70654 9.36865 4.42822 9.52539 4.06494 9.58984V9.63379C4.51611 9.71875 4.84717 9.88721 5.05811 10.1392C5.27197 10.3882 5.37891 10.7266 5.37891 11.1543C5.37891 11.7314 5.17676 12.1841 4.77246 12.5122C4.37109 12.8374 3.81152 13 3.09375 13H0.773438V6.5752ZM1.82373 9.22949H2.83447C3.27393 9.22949 3.59473 9.16064 3.79688 9.02295C3.99902 8.88232 4.1001 8.64502 4.1001 8.31104C4.1001 8.00928 3.99023 7.79102 3.77051 7.65625C3.55371 7.52148 3.20801 7.4541 2.7334 7.4541H1.82373V9.22949ZM1.82373 10.082V12.1167H2.93994C3.37939 12.1167 3.71045 12.0332 3.93311 11.8662C4.15869 11.6963 4.27148 11.4297 4.27148 11.0664C4.27148 10.7324 4.15723 10.4849 3.92871 10.3237C3.7002 10.1626 3.35303 10.082 2.88721 10.082H1.82373Z' fill='%23373F45'/%3E%3Cpath d='M13.011 6.5752V10.7324C13.011 11.207 12.9084 11.623 12.7034 11.9805C12.5012 12.335 12.2068 12.6089 11.8201 12.8022C11.4363 12.9927 10.9763 13.0879 10.4402 13.0879C9.6433 13.0879 9.02368 12.877 8.5813 12.4551C8.13892 12.0332 7.91772 11.4531 7.91772 10.7148V6.5752H8.9724V10.6401C8.9724 11.1704 9.09546 11.5615 9.34155 11.8135C9.58765 12.0654 9.96557 12.1914 10.4753 12.1914C11.4656 12.1914 11.9607 11.6714 11.9607 10.6313V6.5752H13.011Z' fill='%23373F45'/%3E%3Cpath d='M15.9146 13V6.5752H16.9649V13H15.9146Z' fill='%23373F45'/%3E%3Cpath d='M19.9255 13V6.5752H20.9758V12.0991H23.696V13H19.9255Z' fill='%23373F45'/%3E%3Cpath d='M28.2828 13H27.2325V7.47607H25.3428V6.5752H30.1724V7.47607H28.2828V13Z' fill='%23373F45'/%3E%3Cpath d='M41.9472 13H40.8046L39.7148 9.16796C39.6679 9.00097 39.6093 8.76074 39.539 8.44727C39.4687 8.13086 39.4262 7.91113 39.4116 7.78809C39.3823 7.97559 39.3339 8.21875 39.2665 8.51758C39.2021 8.81641 39.1479 9.03905 39.1039 9.18554L38.0405 13H36.8979L36.0673 9.7832L35.2236 6.5752H36.2958L37.2143 10.3193C37.3578 10.9199 37.4604 11.4502 37.5219 11.9102C37.5541 11.6611 37.6025 11.3828 37.6669 11.0752C37.7314 10.7676 37.79 10.5186 37.8427 10.3281L38.8886 6.5752H39.9301L41.0024 10.3457C41.1049 10.6943 41.2133 11.2158 41.3276 11.9102C41.3715 11.4912 41.477 10.958 41.644 10.3105L42.558 6.5752H43.6215L41.9472 13Z' fill='%23373F45'/%3E%3Cpath d='M45.7957 13V6.5752H46.846V13H45.7957Z' fill='%23373F45'/%3E%3Cpath d='M52.0258 13H50.9755V7.47607H49.0859V6.5752H53.9155V7.47607H52.0258V13Z' fill='%23373F45'/%3E%3Cpath d='M61.2312 13H60.1765V10.104H57.2146V13H56.1643V6.5752H57.2146V9.20312H60.1765V6.5752H61.2312V13Z' fill='%23373F45'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;border:1px solid #dde2e7;border-radius:4px;align-items:center;width:190px;height:36px;margin:0 auto;padding:0;-webkit-text-decoration:none;text-decoration:none;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out;display:block;overflow:hidden}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit:hover,.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit:focus{opacity:1;background-color:#fff;-webkit-transform:scale(1.025)perspective(1px);-ms-transform:scale(1.025)perspective(1px);transform:scale(1.025)perspective(1px)}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit[data-variant=dark],.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit[data-variant=light]{background-color:#0000;border-color:#0000;width:166px}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit[data-variant=light]{color:#fff;background-image:url("data:image/svg+xml;charset=utf8,%3Csvg width='162' height='20' viewBox='0 0 162 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M83.0561 15.2457C86.675 15.2457 89.4722 12.5154 89.4722 9.14749C89.4722 5.99211 86.8443 4.06563 85.1038 4.06563C82.6801 4.06563 80.7373 5.76407 80.4605 8.28551C80.4092 8.75244 80.0387 9.14403 79.5686 9.14069C78.7871 9.13509 77.6507 9.12841 76.9314 9.13092C76.6217 9.13199 76.3658 8.88106 76.381 8.57196C76.4895 6.38513 77.2218 4.3404 78.618 2.76974C80.1695 1.02445 82.4289 0 85.1038 0C89.5979 0 93.8406 4.07791 93.8406 9.14749C93.8406 14.7608 89.1832 19.3113 83.1517 19.3113C78.8502 19.3113 74.5179 16.5041 73.0053 12.5795C72.9999 12.565 72.9986 12.5492 73.0015 12.534C73.0218 12.4179 73.0617 12.3118 73.1011 12.2074C73.1583 12.0555 73.2143 11.907 73.2062 11.7359L73.18 11.1892C73.174 11.0569 73.2075 10.9258 73.2764 10.8127C73.3452 10.6995 73.4463 10.6094 73.5666 10.554L73.7852 10.4523C73.9077 10.3957 74.0148 10.3105 74.0976 10.204C74.1803 10.0974 74.2363 9.97252 74.2608 9.83983C74.3341 9.43894 74.6865 9.14749 75.0979 9.14749C75.7404 9.14749 76.299 9.57412 76.5088 10.1806C77.5188 13.1 79.1245 15.2457 83.0561 15.2457Z' fill='white'/%3E%3Cpath d='M155.758 6.91365C155.028 6.91365 154.804 6.47916 154.804 5.98857C154.804 5.46997 154.986 5.06348 155.758 5.06348C156.53 5.06348 156.712 5.46997 156.712 5.98857C156.712 6.47905 156.516 6.91365 155.758 6.91365ZM142.441 12.9304V9.32833L141.415 9.32323V8.90392C141.415 8.44719 141.786 8.07758 142.244 8.07986L142.441 8.08095V6.55306L144.082 6.09057V8.08073H145.569V8.50416C145.569 8.61242 145.548 8.71961 145.506 8.81961C145.465 8.91961 145.404 9.01047 145.328 9.08699C145.251 9.16351 145.16 9.2242 145.06 9.26559C144.96 9.30698 144.853 9.32826 144.745 9.32822H144.082V12.7201C144.082 13.2423 144.378 13.4256 144.76 13.4887C145.209 13.5629 145.583 13.888 145.583 14.343V14.9626C144.029 14.9626 142.441 14.8942 142.441 12.9304Z' fill='white'/%3E%3Cpath d='M110.058 7.92554C108.417 7.88344 106.396 8.92062 106.396 11.5137C106.396 14.0646 108.417 15.0738 110.058 15.0318C111.742 15.0738 113.748 14.0646 113.748 11.5137C113.748 8.92062 111.742 7.88344 110.058 7.92554ZM110.07 13.7586C108.878 13.7586 108.032 12.8905 108.032 11.461C108.032 10.1013 108.878 9.20569 110.071 9.20569C111.263 9.20569 112.101 10.0995 112.101 11.459C112.101 12.8887 111.263 13.7586 110.07 13.7586Z' fill='white'/%3E%3Cpath d='M118.06 7.94098C119.491 7.94098 120.978 8.33337 120.978 11.1366V14.893H120.063C119.608 14.893 119.238 14.524 119.238 14.0689V10.9965C119.238 9.66506 118.747 9.16047 117.891 9.16047C117.414 9.16047 116.797 9.52486 116.502 9.81915V14.069C116.502 14.1773 116.481 14.2845 116.44 14.3845C116.398 14.4845 116.337 14.5753 116.261 14.6519C116.184 14.7284 116.093 14.7891 115.993 14.8305C115.893 14.8719 115.786 14.8931 115.678 14.8931H114.847V8.10918H115.773C115.932 8.10914 116.087 8.16315 116.212 8.26242C116.337 8.36168 116.424 8.50033 116.46 8.65577C116.881 8.19328 117.428 7.94098 118.06 7.94098ZM122.854 8.09713C123.024 8.09708 123.19 8.1496 123.329 8.2475C123.468 8.34541 123.574 8.48391 123.631 8.64405L125.133 12.8486L126.635 8.64415C126.692 8.48402 126.798 8.34551 126.937 8.2476C127.076 8.1497 127.242 8.09718 127.412 8.09724H128.598L126.152 14.3567C126.091 14.5112 125.986 14.6439 125.849 14.7374C125.711 14.831 125.549 14.881 125.383 14.8809H124.333L121.668 8.09713H122.854Z' fill='white'/%3E%3Cpath d='M135.085 14.5514C134.566 14.7616 133.513 15.0416 132.418 15.0416C130.496 15.0416 129.024 13.9345 129.024 11.4396C129.024 9.19701 130.451 7.99792 132.191 7.99792C134.338 7.99792 135.254 9.4378 135.158 11.3979C135.139 11.8029 134.786 12.0983 134.38 12.0983H130.679C130.763 13.1916 131.562 13.7662 132.615 13.7662C133.028 13.7662 133.462 13.7452 133.983 13.6481C134.535 13.545 135.085 13.9375 135.085 14.4985V14.5514ZM133.673 10.949C133.785 9.87621 133.061 9.28752 132.191 9.28752C131.321 9.28752 130.734 9.93979 130.679 10.9489L133.673 10.949Z' fill='white'/%3E%3Cpath d='M137.345 8.11122C137.497 8.11118 137.645 8.16229 137.765 8.25635C137.884 8.35041 137.969 8.48197 138.005 8.62993C138.566 8.20932 139.268 7.94303 139.759 7.94303C139.801 7.94303 140.068 7.94303 140.489 7.99913V8.7265C140.489 9.11748 140.15 9.4147 139.759 9.4147C139.31 9.4147 138.651 9.5829 138.131 9.8773V14.8951H136.462V8.11112L137.345 8.11122ZM156.6 14.0508V8.09104H155.769C155.314 8.09104 154.944 8.45999 154.944 8.9151V14.8748H155.775C156.23 14.8748 156.6 14.5058 156.6 14.0508ZM158.857 12.9447V9.34254H157.749V8.91912C157.749 8.46401 158.118 8.09506 158.574 8.09506H158.857V6.56739L160.499 6.10479V8.09506H161.986V8.51848C161.986 8.97359 161.617 9.34254 161.161 9.34254H160.499V12.7345C160.499 13.2566 160.795 13.44 161.177 13.503C161.626 13.5774 162 13.9024 162 14.3574V14.977C160.446 14.977 158.857 14.9086 158.857 12.9447ZM98.1929 10.1124C98.2033 6.94046 100.598 5.16809 102.895 5.16809C104.171 5.16809 105.342 5.44285 106.304 6.12953L105.914 6.6631C105.654 7.02011 105.16 7.16194 104.749 6.99949C104.169 6.7702 103.622 6.7218 103.215 6.7218C101.335 6.7218 99.9169 7.92849 99.9068 10.1123C99.9169 12.2959 101.335 13.5201 103.215 13.5201C103.622 13.5201 104.169 13.4717 104.749 13.2424C105.16 13.0799 105.654 13.2046 105.914 13.5615L106.304 14.0952C105.342 14.7819 104.171 15.0566 102.895 15.0566C100.598 15.0566 98.2033 13.2842 98.1929 10.1124ZM147.619 5.21768C148.074 5.21768 148.444 5.58663 148.444 6.04174V9.81968L151.82 5.58131C151.897 5.47733 151.997 5.39282 152.112 5.3346C152.227 5.27638 152.355 5.24607 152.484 5.24611H153.984L150.166 10.0615L153.984 14.8749H152.484C152.355 14.8749 152.227 14.8446 152.112 14.7864C151.997 14.7281 151.897 14.6436 151.82 14.5397L148.444 10.3025V14.0508C148.444 14.5059 148.074 14.8749 147.619 14.8749H146.746V5.21768H147.619Z' fill='white'/%3E%3Cpath d='M0.773438 6.5752H2.68066C3.56543 6.5752 4.2041 6.7041 4.59668 6.96191C4.99219 7.21973 5.18994 7.62695 5.18994 8.18359C5.18994 8.55859 5.09326 8.87061 4.8999 9.11963C4.70654 9.36865 4.42822 9.52539 4.06494 9.58984V9.63379C4.51611 9.71875 4.84717 9.88721 5.05811 10.1392C5.27197 10.3882 5.37891 10.7266 5.37891 11.1543C5.37891 11.7314 5.17676 12.1841 4.77246 12.5122C4.37109 12.8374 3.81152 13 3.09375 13H0.773438V6.5752ZM1.82373 9.22949H2.83447C3.27393 9.22949 3.59473 9.16064 3.79688 9.02295C3.99902 8.88232 4.1001 8.64502 4.1001 8.31104C4.1001 8.00928 3.99023 7.79102 3.77051 7.65625C3.55371 7.52148 3.20801 7.4541 2.7334 7.4541H1.82373V9.22949ZM1.82373 10.082V12.1167H2.93994C3.37939 12.1167 3.71045 12.0332 3.93311 11.8662C4.15869 11.6963 4.27148 11.4297 4.27148 11.0664C4.27148 10.7324 4.15723 10.4849 3.92871 10.3237C3.7002 10.1626 3.35303 10.082 2.88721 10.082H1.82373Z' fill='white'/%3E%3Cpath d='M13.011 6.5752V10.7324C13.011 11.207 12.9084 11.623 12.7034 11.9805C12.5012 12.335 12.2068 12.6089 11.8201 12.8022C11.4363 12.9927 10.9763 13.0879 10.4402 13.0879C9.6433 13.0879 9.02368 12.877 8.5813 12.4551C8.13892 12.0332 7.91772 11.4531 7.91772 10.7148V6.5752H8.9724V10.6401C8.9724 11.1704 9.09546 11.5615 9.34155 11.8135C9.58765 12.0654 9.96557 12.1914 10.4753 12.1914C11.4656 12.1914 11.9607 11.6714 11.9607 10.6313V6.5752H13.011Z' fill='white'/%3E%3Cpath d='M15.9146 13V6.5752H16.9649V13H15.9146Z' fill='white'/%3E%3Cpath d='M19.9255 13V6.5752H20.9758V12.0991H23.696V13H19.9255Z' fill='white'/%3E%3Cpath d='M28.2828 13H27.2325V7.47607H25.3428V6.5752H30.1724V7.47607H28.2828V13Z' fill='white'/%3E%3Cpath d='M41.9472 13H40.8046L39.7148 9.16796C39.6679 9.00097 39.6093 8.76074 39.539 8.44727C39.4687 8.13086 39.4262 7.91113 39.4116 7.78809C39.3823 7.97559 39.3339 8.21875 39.2665 8.51758C39.2021 8.81641 39.1479 9.03905 39.1039 9.18554L38.0405 13H36.8979L36.0673 9.7832L35.2236 6.5752H36.2958L37.2143 10.3193C37.3578 10.9199 37.4604 11.4502 37.5219 11.9102C37.5541 11.6611 37.6025 11.3828 37.6669 11.0752C37.7314 10.7676 37.79 10.5186 37.8427 10.3281L38.8886 6.5752H39.9301L41.0024 10.3457C41.1049 10.6943 41.2133 11.2158 41.3276 11.9102C41.3715 11.4912 41.477 10.958 41.644 10.3105L42.558 6.5752H43.6215L41.9472 13Z' fill='white'/%3E%3Cpath d='M45.7957 13V6.5752H46.846V13H45.7957Z' fill='white'/%3E%3Cpath d='M52.0258 13H50.9755V7.47607H49.0859V6.5752H53.9155V7.47607H52.0258V13Z' fill='white'/%3E%3Cpath d='M61.2312 13H60.1765V10.104H57.2146V13H56.1643V6.5752H57.2146V9.20312H60.1765V6.5752H61.2312V13Z' fill='white'/%3E%3C/svg%3E")}@-webkit-keyframes formkit-bouncedelay-formkit-form-data-uid-8d653b97b6-{0%,80%,to{-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0)}40%{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}@keyframes formkit-bouncedelay-formkit-form-data-uid-8d653b97b6-{0%,80%,to{-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0)}40%{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}.formkit-form[data-uid="8d653b97b6"] blockquote{border-left:5px solid #e1e1e1;margin:0 0 20px;padding:10px 20px}.formkit-form[data-uid="8d653b97b6"] .seva-custom-content{color:#fff;mix-blend-mode:difference;padding:15px;font-size:16px}.formkit-form[data-uid="8d653b97b6"]{max-width:700px}.formkit-form[data-uid="8d653b97b6"] [data-style=clean]{width:100%}.formkit-form[data-uid="8d653b97b6"] .formkit-fields{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;margin:0 auto;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.formkit-form[data-uid="8d653b97b6"] .formkit-field,.formkit-form[data-uid="8d653b97b6"] .formkit-submit{-webkit-flex:1 0 100%;-ms-flex:1 0 100%;flex:1 0 100%;margin:0 0 15px}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit-container{margin:0}.formkit-form[data-uid="8d653b97b6"] .formkit-submit{position:static}.formkit-form[data-uid="8d653b97b6"][min-width~="700"] [data-style=clean],.formkit-form[data-uid="8d653b97b6"][min-width~="800"] [data-style=clean]{padding:10px}.formkit-form[data-uid="8d653b97b6"][min-width~="700"] .formkit-fields[data-stacked=false],.formkit-form[data-uid="8d653b97b6"][min-width~="800"] .formkit-fields[data-stacked=false]{margin-left:-5px;margin-right:-5px}.formkit-form[data-uid="8d653b97b6"][min-width~="700"] .formkit-fields[data-stacked=false] .formkit-field,.formkit-form[data-uid="8d653b97b6"][min-width~="800"] .formkit-fields[data-stacked=false] .formkit-field,.formkit-form[data-uid="8d653b97b6"][min-width~="700"] .formkit-fields[data-stacked=false] .formkit-submit,.formkit-form[data-uid="8d653b97b6"][min-width~="800"] .formkit-fields[data-stacked=false] .formkit-submit{margin:0 5px 15px}.formkit-form[data-uid="8d653b97b6"][min-width~="700"] .formkit-fields[data-stacked=false] .formkit-field,.formkit-form[data-uid="8d653b97b6"][min-width~="800"] .formkit-fields[data-stacked=false] .formkit-field{-webkit-flex:100 auto;-ms-flex:100 auto;flex:100 auto}.formkit-form[data-uid="8d653b97b6"][min-width~="700"] .formkit-fields[data-stacked=false] .formkit-submit,.formkit-form[data-uid="8d653b97b6"][min-width~="800"] .formkit-fields[data-stacked=false] .formkit-submit{-webkit-flex:auto;-ms-flex:auto;flex:auto}</style></form>
</div><div><div class="quoteContainer_Karu"><figure class="tweetQuote_h8Rz"><blockquote><a href="https://x.com/grabbou/status/1829126194022715617" target="_blank" rel="noreferrer nofollow">If every newsletter was as informative, the world would be a better place!</a></blockquote><figcaption><a href="https://twitter.com/grabbou" target="_blank" rel="noreferrer nofollow"><div class="avatar"><img alt="Mike Grabowski" class="avatar__photo shadow--md avatarImg_b51M" src="https://unavatar.io/twitter/grabbou?fallback=https://github.com/grabbou.png"><div class="avatar__intro"><strong class="avatar__name"><cite>Mike Grabowski</cite></strong><small class="avatar__subtitle" itemprop="description">CTO and founder - Callstack</small></div></div></a></figcaption></figure></div></div></div>
<div role="separator" style="text-align:center;margin:10px 0"><img class="separator" src="https://thisweekinreact.com/emails/separators/christmas.png" width="600" height="64" style="width:100%;max-width:600px;margin:0 auto;object-fit:contain"></div>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="sponsor1">💸 Sponsor<a href="https://thisweekinreact.com/newsletter/276#sponsor1" class="hash-link" aria-label="Direct link to 💸 Sponsor" title="Direct link to 💸 Sponsor">​</a></h2>
<p><a href="https://www.meticulous.ai/?utm_source=thisweekinreact&amp;utm_medium=newsletter&amp;utm_campaign=26q1&amp;utm_content=1st" target="_blank" rel="noopener noreferrer"><img decoding="async" loading="lazy" src="https://thisweekinreact.com/emails/issues/270/meticulous.jpg" alt="Still writing tests manually?" class="img_SS3x"></a></p>
<p><strong><a href="https://www.meticulous.ai/?utm_source=thisweekinreact&amp;utm_medium=newsletter&amp;utm_campaign=26q1&amp;utm_content=1st" target="_blank" rel="noopener noreferrer">Still writing tests manually?</a></strong></p>
<p>Notion, Dropbox and LaunchDarkly&nbsp;have found a new testing paradigm - and they can't imagine working without it.&nbsp;Built by <a href="https://www.meticulous.ai/?utm_source=thisweekinreact&amp;utm_medium=newsletter&amp;utm_campaign=26q1&amp;utm_content=1st" target="_blank" rel="noopener noreferrer">ex-Palantir engineers</a>, Meticulous autonomously creates a continuously evolving suite of E2E UI tests that delivers <a href="https://www.meticulous.ai/?utm_source=thisweekinreact&amp;utm_medium=newsletter&amp;utm_campaign=26q1&amp;utm_content=1st" target="_blank" rel="noopener noreferrer">near-exhaustive coverage</a> with <em>zero developer effort</em> - impossible to deliver by any other means.&nbsp;</p>
<p>It works like magic in the background:</p>
<ul>
<li>Near-exhaustive coverage on every test run</li>
<li>No test creation</li>
<li><strong>No maintenance (seriously)</strong></li>
<li>Zero flakes (built on a deterministic browser)</li>
</ul>
<p><strong>🤨</strong> Curious? <a href="https://www.meticulous.ai/?utm_source=thisweekinreact&amp;utm_medium=newsletter&amp;utm_campaign=26q1&amp;utm_content=1st" target="_blank" rel="noopener noreferrer">Book in a time to learn more</a></p>
<div role="separator" style="text-align:center;margin:10px 0"><img class="separator" src="https://thisweekinreact.com/emails/separators/christmas.png" width="600" height="64" style="width:100%;max-width:600px;margin:0 auto;object-fit:contain"></div>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="react">⚛️ React<a href="https://thisweekinreact.com/newsletter/276#react" class="hash-link" aria-label="Direct link to ⚛️ React" title="Direct link to ⚛️ React">​</a></h2>
<p><a href="https://boneyard.vercel.app/" target="_blank" rel="noopener noreferrer"><img decoding="async" loading="lazy" src="https://thisweekinreact.com/emails/issues/276/boneyard.jpg" alt="Boneyard - Auto-generated skeleton screens" class="img_SS3x"></a></p>
<p><strong><a href="https://boneyard.vercel.app/" target="_blank" rel="noopener noreferrer">Boneyard - Auto-generated skeleton screens</a></strong></p>
<p>Instead of manually creating skeleton screens for loading states, this innovative library snapshots your real UI at various breakpoints and captures skeleton "bones" - positioned, sized rectangles that mirror the layout exactly. It supports React, React Native, and other frameworks.</p>
<div role="separator" style="text-align:center;margin:10px 0"><img class="separator" src="https://thisweekinreact.com/emails/separators/christmas.png" width="600" height="64" style="width:100%;max-width:600px;margin:0 auto;object-fit:contain"></div>
<ul>
<li>💸 <a href="https://cwb.sh/platano?r=seb" target="_blank" rel="noopener noreferrer">Platano - Ship a revenue-ready AI image app this weekend. You know React? That's all you need to launch on the App Store.</a></li>
<li>🗓 <a href="https://reactsummit.com/?utm_source=thisweekinreact" target="_blank" rel="noopener noreferrer">React Summit</a> - 🇳🇱 Amsterdam - 12 &amp; 16 Jun. Catch the latest in React with inspiring talks, networking, and Amsterdam adventures. Save on tickets with promo code TWIR (-10%) !</li>
<li>📜 <a href="https://aurorascharff.no/posts/the-precompute-pattern-encoding-dynamic-data-into-urls-in-nextjs/" target="_blank" rel="noopener noreferrer">The Precompute Pattern: Encoding Dynamic Data into URLs in Next.js</a> - An advanced technique to maximize the ability for Next.js to pre-render pages. It works particularly well for low cardinality variants such as feature flags and auth status.</li>
<li>📜 <a href="https://developer.mozilla.org/en-US/blog/mdn-front-end-deep-dive/" target="_blank" rel="noopener noreferrer">Under the hood of MDN's new frontend</a> - MDN launched a new frontend, replacing their old and difficult-to-maintain React CRA app for a new stack. They implemented their own Server Components system on top of Lit and Custom Elements, using Declarative Shadow DOM as a progressive enhancement.</li>
<li>📜 <a href="https://blog.railway.com/p/moving-railways-frontend-off-nextjs" target="_blank" rel="noopener noreferrer">Moving Railway's Frontend Off Next.js</a> - Feedback on migrating a Page Router app with 200+ routes to TanStack Start in 2 PRs with zero downtime. Their app now builds faster, has a more explicit model, and layout composition is easier.</li>
<li>📜 <a href="https://neciudan.dev/you-really-really-dont-need-an-effect" target="_blank" rel="noopener noreferrer">You really, really, really don't need an effect! I swear!</a> - And even when you need one (data fetching), someone already wrote that effect better than you will (React Query).</li>
<li>📜 <a href="https://tigerabrodi.blog/how-to-implement-spring-physics-buttons-with-framer-motion" target="_blank" rel="noopener noreferrer">How to implement spring physics buttons with Framer Motion</a></li>
<li>💸 <a href="https://certificates.dev/react?friend=TWIR&amp;utm_source=twir&amp;utm_medium=newsletter&amp;utm_campaign=partner" target="_blank" rel="noopener noreferrer">Certificates.dev - Go beyond tutorials. Get certified with real-world React coding exams prepped by Aurora Scharff. Trusted by 680 companies</a></li>
<li>📦 <a href="https://github.com/vadimdemedes/ink/releases/tag/v7.0.0" target="_blank" rel="noopener noreferrer">Ink 7.0 - React renderer for CLIs</a> - Unsurprisingly, this package has become quite popular with the rise of AI and terminal apps. This major version upgrades to Node 22, React 19.2, and adds many new hooks, features, and props.</li>
<li>📦 <a href="https://comark.dev/" target="_blank" rel="noopener noreferrer">Comark - Fast, streaming-ready Markdown parser with support for React and more</a> - An interesting alternative to Streamdown or MDX, coming from the Nuxt team.</li>
<li>📦 <a href="https://docusaurus.io/blog/releases/3.10" target="_blank" rel="noopener noreferrer">Docusaurus 3.10 - Security, Docusaurus Faster stable, VCS API, Strict MDX, Site Storage stable</a> - A milestone release to prepare for Docusaurus v4.</li>
<li>📦 <a href="https://shaders.com/" target="_blank" rel="noopener noreferrer">Shaders beta - The component library for creative WebGPU effects in the browser</a> - A nice solution for modern creative web dev, coming with first-class React components. Commercial usage of React components is free, although there’s a paid offering.</li>
<li>📦 <a href="https://github.com/react-hook-form/react-hook-form/releases/tag/v7.72.0" target="_blank" rel="noopener noreferrer">React Hook Form 7.72 - Built-in form-level validation</a> - Useful feature for cross-field validation.</li>
<li>📦 <a href="https://github.com/edmundhung/conform/releases/tag/v1.18.0" target="_blank" rel="noopener noreferrer">Conform 1.18 - Progressively enhance HTML forms with React</a></li>
<li>📦 <a href="https://github.com/remix-run/react-router/blob/main/CHANGELOG.md#v7140" target="_blank" rel="noopener noreferrer">React Router 7.14 - Support for Vite 8, unstable RSC Framework Mode improvements</a></li>
<li>📦 <a href="https://ui.shadcn.com/docs/changelog/2026-04-shadcn-apply" target="_blank" rel="noopener noreferrer">shadcn CLI 4.2 - New <code>shadcn apply</code> command to switch presets easily</a></li>
<li>📦 <a href="https://github.com/mui/material-ui/releases/tag/v9.0.0" target="_blank" rel="noopener noreferrer">Material UI 9.0 - Accessibility improvements, sx prop performance, and cleanup of deprecated APIs</a></li>
<li>📦 <a href="https://mantine.dev/changelog/9-0-0/" target="_blank" rel="noopener noreferrer">Mantine 9.0 - New components: Scheduling, FloatingWindow, OverflowList, Marquee, and more</a></li>
<li>📦 <a href="https://github.com/amannn/next-intl/releases/tag/v4.9.0" target="_blank" rel="noopener noreferrer">Next-Intl 4.9 - Support <code>&lt;Link transitionTypes&gt;</code></a></li>
<li>🎥 <a href="https://www.youtube.com/watch?v=NBjycPpPHQQ" target="_blank" rel="noopener noreferrer">Web Dev Simplified - You Need To Start Using This Underrated React Hook - <code>useSyncExternalStore</code></a></li>
<li>🎥 <a href="https://www.youtube.com/playlist?list=PL53Z0yyYnpWhsizNWtlnyM7XWFUSw437J" target="_blank" rel="noopener noreferrer">React Paris 2026 - YouTube Playlist</a></li>
</ul>
<div class="card subscribeFormEmbed_aAcT"><p><strong>Don't miss the next email!</strong></p><div class="">
<script src="https://f.convertkit.com/ckjs/ck.5.js"></script>
      <form action="https://app.convertkit.com/forms/3472133/subscriptions" class="seva-form formkit-form" method="post" data-sv-form="3472133" data-uid="8d653b97b6" data-format="inline" data-version="5" data-options="{&quot;settings&quot;:{&quot;after_subscribe&quot;:{&quot;action&quot;:&quot;redirect&quot;,&quot;success_message&quot;:&quot;Success! Now check your email to confirm your subscription.&quot;,&quot;redirect_url&quot;:&quot;https://thisweekinreact.com/workflow/confirm-your-email&quot;},&quot;analytics&quot;:{&quot;google&quot;:null,&quot;fathom&quot;:null,&quot;facebook&quot;:null,&quot;segment&quot;:null,&quot;pinterest&quot;:null,&quot;sparkloop&quot;:null,&quot;googletagmanager&quot;:null},&quot;modal&quot;:{&quot;trigger&quot;:&quot;timer&quot;,&quot;scroll_percentage&quot;:null,&quot;timer&quot;:5,&quot;devices&quot;:&quot;all&quot;,&quot;show_once_every&quot;:15},&quot;powered_by&quot;:{&quot;show&quot;:false,&quot;url&quot;:&quot;https://convertkit.com/features/forms?lmref=d0748g&amp;utm_campaign=poweredby&amp;utm_content=form&amp;utm_medium=referral&amp;utm_source=dynamic&quot;},&quot;recaptcha&quot;:{&quot;enabled&quot;:false},&quot;return_visitor&quot;:{&quot;action&quot;:&quot;show&quot;,&quot;custom_content&quot;:&quot;&quot;},&quot;slide_in&quot;:{&quot;display_in&quot;:&quot;bottom_right&quot;,&quot;trigger&quot;:&quot;timer&quot;,&quot;scroll_percentage&quot;:null,&quot;timer&quot;:5,&quot;devices&quot;:&quot;all&quot;,&quot;show_once_every&quot;:15},&quot;sticky_bar&quot;:{&quot;display_in&quot;:&quot;top&quot;,&quot;trigger&quot;:&quot;timer&quot;,&quot;scroll_percentage&quot;:null,&quot;timer&quot;:5,&quot;devices&quot;:&quot;all&quot;,&quot;show_once_every&quot;:15}},&quot;version&quot;:&quot;5&quot;}" min-width="400 500 600 700 800"><div data-style="clean"><ul class="formkit-alert formkit-alert-error" data-element="errors" data-group="alert"></ul><div data-element="fields" data-stacked="false" class="seva-fields formkit-fields"><div class="formkit-field"><input class="formkit-input" name="email_address" aria-label="Email Address" placeholder="Email Address" required="" type="email" style="color: rgb(0, 0, 0); border-color: rgb(227, 227, 227); border-radius: 4px; font-weight: 700;"></div><button data-element="submit" class="formkit-submit formkit-submit" style="color: rgb(255, 255, 255); background-color: rgb(0, 54, 92); border-radius: 4px; font-weight: 700;"><div class="formkit-spinner"><div></div><div></div><div></div></div><span class="">Subscribe now!</span></button></div></div><style>.formkit-form[data-uid="8d653b97b6"] *{box-sizing:border-box}.formkit-form[data-uid="8d653b97b6"]{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.formkit-form[data-uid="8d653b97b6"] legend{font-size:inherit;border:none;margin-bottom:10px;padding:0;display:table;position:relative}.formkit-form[data-uid="8d653b97b6"] fieldset{border:0;min-width:0;margin:0;padding:.01em 0 0}.formkit-form[data-uid="8d653b97b6"] body:not(:-moz-handler-blocked) fieldset{display:table-cell}.formkit-form[data-uid="8d653b97b6"] h1,.formkit-form[data-uid="8d653b97b6"] h2,.formkit-form[data-uid="8d653b97b6"] h3,.formkit-form[data-uid="8d653b97b6"] h4,.formkit-form[data-uid="8d653b97b6"] h5,.formkit-form[data-uid="8d653b97b6"] h6{color:inherit;font-size:inherit;font-weight:inherit}.formkit-form[data-uid="8d653b97b6"] h2{margin:1em 0;font-size:1.5em}.formkit-form[data-uid="8d653b97b6"] h3{margin:1em 0;font-size:1.17em}.formkit-form[data-uid="8d653b97b6"] p{color:inherit;font-size:inherit;font-weight:inherit}.formkit-form[data-uid="8d653b97b6"] ol:not([template-default]),.formkit-form[data-uid="8d653b97b6"] ul:not([template-default]),.formkit-form[data-uid="8d653b97b6"] blockquote:not([template-default]){text-align:left}.formkit-form[data-uid="8d653b97b6"] p:not([template-default]),.formkit-form[data-uid="8d653b97b6"] hr:not([template-default]),.formkit-form[data-uid="8d653b97b6"] blockquote:not([template-default]),.formkit-form[data-uid="8d653b97b6"] ol:not([template-default]),.formkit-form[data-uid="8d653b97b6"] ul:not([template-default]){color:inherit;font-style:initial}.formkit-form[data-uid="8d653b97b6"] .ordered-list,.formkit-form[data-uid="8d653b97b6"] .unordered-list{padding-left:1em;list-style-position:outside!important}.formkit-form[data-uid="8d653b97b6"] .list-item{padding-left:0}.formkit-form[data-uid="8d653b97b6"][data-format=modal],.formkit-form[data-uid="8d653b97b6"][data-format=slide\ in],.formkit-form[data-uid="8d653b97b6"][data-format=sticky\ bar]{display:none}.formkit-sticky-bar .formkit-form[data-uid="8d653b97b6"][data-format=sticky\ bar]{display:block}.formkit-form[data-uid="8d653b97b6"] .formkit-input,.formkit-form[data-uid="8d653b97b6"] .formkit-select,.formkit-form[data-uid="8d653b97b6"] .formkit-checkboxes{width:100%}.formkit-form[data-uid="8d653b97b6"] .formkit-button,.formkit-form[data-uid="8d653b97b6"] .formkit-submit{color:#fff;cursor:pointer;text-align:center;cursor:pointer;vertical-align:middle;border:0;border-radius:5px;margin-bottom:15px;padding:0;font-size:15px;font-weight:500;display:inline-block;position:relative;overflow:hidden}.formkit-form[data-uid="8d653b97b6"] .formkit-button:hover,.formkit-form[data-uid="8d653b97b6"] .formkit-submit:hover,.formkit-form[data-uid="8d653b97b6"] .formkit-button:focus,.formkit-form[data-uid="8d653b97b6"] .formkit-submit:focus{outline:none}.formkit-form[data-uid="8d653b97b6"] .formkit-button:hover>span,.formkit-form[data-uid="8d653b97b6"] .formkit-submit:hover>span,.formkit-form[data-uid="8d653b97b6"] .formkit-button:focus>span,.formkit-form[data-uid="8d653b97b6"] .formkit-submit:focus>span{background-color:#0000001a}.formkit-form[data-uid="8d653b97b6"] .formkit-button>span,.formkit-form[data-uid="8d653b97b6"] .formkit-submit>span{padding:12px 24px;-webkit-transition:all .3s ease-in-out;transition:all .3s ease-in-out;display:block}.formkit-form[data-uid="8d653b97b6"] .formkit-input{background:#fff;border:1px solid #e3e3e3;-webkit-flex:1 0 auto;-ms-flex:1 0 auto;flex:1 0 auto;margin:0;padding:12px;font-size:15px;line-height:1.4;-webkit-transition:border-color .3s ease-out;transition:border-color .3s ease-out}.formkit-form[data-uid="8d653b97b6"] .formkit-input:focus{border-color:#1677be;outline:none;-webkit-transition:border-color .3s;transition:border-color .3s}.formkit-form[data-uid="8d653b97b6"] .formkit-input::-webkit-input-placeholder{color:inherit;opacity:.8}.formkit-form[data-uid="8d653b97b6"] .formkit-input::placeholder{color:inherit;opacity:.8}.formkit-form[data-uid="8d653b97b6"] .formkit-input:-ms-placeholder-shown{color:inherit;opacity:.8}.formkit-form[data-uid="8d653b97b6"] .formkit-input::placeholder{color:inherit;opacity:.8}.formkit-form[data-uid="8d653b97b6"] [data-group=dropdown]{width:100%;display:inline-block;position:relative}.formkit-form[data-uid="8d653b97b6"] [data-group=dropdown]:before{content:"";pointer-events:none;z-index:999;border:6px solid #0000;border-top-color:#4f4f4f;border-bottom-width:0;width:0;height:0;position:absolute;top:calc(50% - 2.5px);right:10px}.formkit-form[data-uid="8d653b97b6"] [data-group=dropdown] select{cursor:pointer;color:#333;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#fff;border:1px solid #e3e3e3;width:100%;height:auto;margin-bottom:0;padding:12px 25px 12px 12px;font-size:15px;line-height:1.4}.formkit-form[data-uid="8d653b97b6"] [data-group=dropdown] select:focus{outline:none}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes]{text-align:left;margin:0}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox]{margin-bottom:10px}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] *{cursor:pointer}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox]:last-of-type{margin-bottom:0}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] input[type=checkbox]{display:none}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] input[type=checkbox]+label:after{content:none}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] input[type=checkbox]:checked+label:after{content:"";border-color:#fff}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] input[type=checkbox]:checked+label:before{background:#10bf7a;border-color:#10bf7a}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] label{padding-left:28px;display:inline-block;position:relative}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] label:before,.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] label:after{content:"";display:inline-block;position:absolute}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] label:before{background:#fff;border:1px solid #e3e3e3;width:16px;height:16px;top:3px;left:0}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] label:after{border-bottom:2px solid #4d4d4d;border-left:2px solid #4d4d4d;width:8px;height:4px;top:8px;left:4px;-webkit-transform:rotate(-45deg);-ms-transform:rotate(-45deg);transform:rotate(-45deg)}.formkit-form[data-uid="8d653b97b6"] .formkit-alert{text-align:center;background:#f9fafb;border:1px solid #e3e3e3;border-radius:5px;-webkit-flex:1 0 auto;-ms-flex:1 0 auto;flex:1 0 auto;width:100%;margin:25px auto;padding:12px;list-style:none}.formkit-form[data-uid="8d653b97b6"] .formkit-alert:empty{display:none}.formkit-form[data-uid="8d653b97b6"] .formkit-alert-success{color:#0c905c;background:#d3fbeb;border-color:#10bf7a}.formkit-form[data-uid="8d653b97b6"] .formkit-alert-error{color:#ea4110;background:#fde8e2;border-color:#f2643b}.formkit-form[data-uid="8d653b97b6"] .formkit-spinner{text-align:center;width:0;height:0;margin:0 auto;-webkit-transition:all .3s ease-in-out;transition:all .3s ease-in-out;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;position:absolute;top:0;left:0;right:0;overflow:hidden}.formkit-form[data-uid="8d653b97b6"] .formkit-spinner>div{opacity:.3;background-color:#fff;border-radius:100%;width:12px;height:12px;margin:auto;-webkit-animation:1.4s ease-in-out infinite both formkit-bouncedelay-formkit-form-data-uid-8d653b97b6-;animation:1.4s ease-in-out infinite both formkit-bouncedelay-formkit-form-data-uid-8d653b97b6-;display:inline-block}.formkit-form[data-uid="8d653b97b6"] .formkit-spinner>div:first-child{-webkit-animation-delay:-.32s;animation-delay:-.32s}.formkit-form[data-uid="8d653b97b6"] .formkit-spinner>div:nth-child(2){-webkit-animation-delay:-.16s;animation-delay:-.16s}.formkit-form[data-uid="8d653b97b6"] .formkit-submit[data-active] .formkit-spinner{opacity:1;width:50px;height:100%}.formkit-form[data-uid="8d653b97b6"] .formkit-submit[data-active] .formkit-spinner~span{opacity:0}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by[data-active=false]{opacity:.35}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit-container{z-index:5;width:100%;margin:10px 0;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;position:relative}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit-container[data-active=false]{opacity:.35}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit{color:#373f45;cursor:pointer;opacity:.95;text-indent:100%;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-color:#fff;background-image:url("data:image/svg+xml;charset=utf8,%3Csvg width='162' height='20' viewBox='0 0 162 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M83.0561 15.2457C86.675 15.2457 89.4722 12.5154 89.4722 9.14749C89.4722 5.99211 86.8443 4.06563 85.1038 4.06563C82.6801 4.06563 80.7373 5.76407 80.4605 8.28551C80.4092 8.75244 80.0387 9.14403 79.5686 9.14069C78.7871 9.13509 77.6507 9.12841 76.9314 9.13092C76.6217 9.13199 76.3658 8.88106 76.381 8.57196C76.4895 6.38513 77.2218 4.3404 78.618 2.76974C80.1695 1.02445 82.4289 0 85.1038 0C89.5979 0 93.8406 4.07791 93.8406 9.14749C93.8406 14.7608 89.1832 19.3113 83.1517 19.3113C78.8502 19.3113 74.5179 16.5041 73.0053 12.5795C72.9999 12.565 72.9986 12.5492 73.0015 12.534C73.0218 12.4179 73.0617 12.3118 73.1011 12.2074C73.1583 12.0555 73.2143 11.907 73.2062 11.7359L73.18 11.1892C73.174 11.0569 73.2075 10.9258 73.2764 10.8127C73.3452 10.6995 73.4463 10.6094 73.5666 10.554L73.7852 10.4523C73.9077 10.3957 74.0148 10.3105 74.0976 10.204C74.1803 10.0974 74.2363 9.97252 74.2608 9.83983C74.3341 9.43894 74.6865 9.14749 75.0979 9.14749C75.7404 9.14749 76.299 9.57412 76.5088 10.1806C77.5188 13.1 79.1245 15.2457 83.0561 15.2457Z' fill='%23373F45'/%3E%3Cpath d='M155.758 6.91365C155.028 6.91365 154.804 6.47916 154.804 5.98857C154.804 5.46997 154.986 5.06348 155.758 5.06348C156.53 5.06348 156.712 5.46997 156.712 5.98857C156.712 6.47905 156.516 6.91365 155.758 6.91365ZM142.441 12.9304V9.32833L141.415 9.32323V8.90392C141.415 8.44719 141.786 8.07758 142.244 8.07986L142.441 8.08095V6.55306L144.082 6.09057V8.08073H145.569V8.50416C145.569 8.61242 145.548 8.71961 145.506 8.81961C145.465 8.91961 145.404 9.01047 145.328 9.08699C145.251 9.16351 145.16 9.2242 145.06 9.26559C144.96 9.30698 144.853 9.32826 144.745 9.32822H144.082V12.7201C144.082 13.2423 144.378 13.4256 144.76 13.4887C145.209 13.5629 145.583 13.888 145.583 14.343V14.9626C144.029 14.9626 142.441 14.8942 142.441 12.9304Z' fill='%23373F45'/%3E%3Cpath d='M110.058 7.92554C108.417 7.88344 106.396 8.92062 106.396 11.5137C106.396 14.0646 108.417 15.0738 110.058 15.0318C111.742 15.0738 113.748 14.0646 113.748 11.5137C113.748 8.92062 111.742 7.88344 110.058 7.92554ZM110.07 13.7586C108.878 13.7586 108.032 12.8905 108.032 11.461C108.032 10.1013 108.878 9.20569 110.071 9.20569C111.263 9.20569 112.101 10.0995 112.101 11.459C112.101 12.8887 111.263 13.7586 110.07 13.7586Z' fill='%23373F45'/%3E%3Cpath d='M118.06 7.94098C119.491 7.94098 120.978 8.33337 120.978 11.1366V14.893H120.063C119.608 14.893 119.238 14.524 119.238 14.0689V10.9965C119.238 9.66506 118.747 9.16047 117.891 9.16047C117.414 9.16047 116.797 9.52486 116.502 9.81915V14.069C116.502 14.1773 116.481 14.2845 116.44 14.3845C116.398 14.4845 116.337 14.5753 116.261 14.6519C116.184 14.7284 116.093 14.7891 115.993 14.8305C115.893 14.8719 115.786 14.8931 115.678 14.8931H114.847V8.10918H115.773C115.932 8.10914 116.087 8.16315 116.212 8.26242C116.337 8.36168 116.424 8.50033 116.46 8.65577C116.881 8.19328 117.428 7.94098 118.06 7.94098ZM122.854 8.09713C123.024 8.09708 123.19 8.1496 123.329 8.2475C123.468 8.34541 123.574 8.48391 123.631 8.64405L125.133 12.8486L126.635 8.64415C126.692 8.48402 126.798 8.34551 126.937 8.2476C127.076 8.1497 127.242 8.09718 127.412 8.09724H128.598L126.152 14.3567C126.091 14.5112 125.986 14.6439 125.849 14.7374C125.711 14.831 125.549 14.881 125.383 14.8809H124.333L121.668 8.09713H122.854Z' fill='%23373F45'/%3E%3Cpath d='M135.085 14.5514C134.566 14.7616 133.513 15.0416 132.418 15.0416C130.496 15.0416 129.024 13.9345 129.024 11.4396C129.024 9.19701 130.451 7.99792 132.191 7.99792C134.338 7.99792 135.254 9.4378 135.158 11.3979C135.139 11.8029 134.786 12.0983 134.38 12.0983H130.679C130.763 13.1916 131.562 13.7662 132.615 13.7662C133.028 13.7662 133.462 13.7452 133.983 13.6481C134.535 13.545 135.085 13.9375 135.085 14.4985V14.5514ZM133.673 10.949C133.785 9.87621 133.061 9.28752 132.191 9.28752C131.321 9.28752 130.734 9.93979 130.679 10.9489L133.673 10.949Z' fill='%23373F45'/%3E%3Cpath d='M137.345 8.11122C137.497 8.11118 137.645 8.16229 137.765 8.25635C137.884 8.35041 137.969 8.48197 138.005 8.62993C138.566 8.20932 139.268 7.94303 139.759 7.94303C139.801 7.94303 140.068 7.94303 140.489 7.99913V8.7265C140.489 9.11748 140.15 9.4147 139.759 9.4147C139.31 9.4147 138.651 9.5829 138.131 9.8773V14.8951H136.462V8.11112L137.345 8.11122ZM156.6 14.0508V8.09104H155.769C155.314 8.09104 154.944 8.45999 154.944 8.9151V14.8748H155.775C156.23 14.8748 156.6 14.5058 156.6 14.0508ZM158.857 12.9447V9.34254H157.749V8.91912C157.749 8.46401 158.118 8.09506 158.574 8.09506H158.857V6.56739L160.499 6.10479V8.09506H161.986V8.51848C161.986 8.97359 161.617 9.34254 161.161 9.34254H160.499V12.7345C160.499 13.2566 160.795 13.44 161.177 13.503C161.626 13.5774 162 13.9024 162 14.3574V14.977C160.446 14.977 158.857 14.9086 158.857 12.9447ZM98.1929 10.1124C98.2033 6.94046 100.598 5.16809 102.895 5.16809C104.171 5.16809 105.342 5.44285 106.304 6.12953L105.914 6.6631C105.654 7.02011 105.16 7.16194 104.749 6.99949C104.169 6.7702 103.622 6.7218 103.215 6.7218C101.335 6.7218 99.9169 7.92849 99.9068 10.1123C99.9169 12.2959 101.335 13.5201 103.215 13.5201C103.622 13.5201 104.169 13.4717 104.749 13.2424C105.16 13.0799 105.654 13.2046 105.914 13.5615L106.304 14.0952C105.342 14.7819 104.171 15.0566 102.895 15.0566C100.598 15.0566 98.2033 13.2842 98.1929 10.1124ZM147.619 5.21768C148.074 5.21768 148.444 5.58663 148.444 6.04174V9.81968L151.82 5.58131C151.897 5.47733 151.997 5.39282 152.112 5.3346C152.227 5.27638 152.355 5.24607 152.484 5.24611H153.984L150.166 10.0615L153.984 14.8749H152.484C152.355 14.8749 152.227 14.8446 152.112 14.7864C151.997 14.7281 151.897 14.6436 151.82 14.5397L148.444 10.3025V14.0508C148.444 14.5059 148.074 14.8749 147.619 14.8749H146.746V5.21768H147.619Z' fill='%23373F45'/%3E%3Cpath d='M0.773438 6.5752H2.68066C3.56543 6.5752 4.2041 6.7041 4.59668 6.96191C4.99219 7.21973 5.18994 7.62695 5.18994 8.18359C5.18994 8.55859 5.09326 8.87061 4.8999 9.11963C4.70654 9.36865 4.42822 9.52539 4.06494 9.58984V9.63379C4.51611 9.71875 4.84717 9.88721 5.05811 10.1392C5.27197 10.3882 5.37891 10.7266 5.37891 11.1543C5.37891 11.7314 5.17676 12.1841 4.77246 12.5122C4.37109 12.8374 3.81152 13 3.09375 13H0.773438V6.5752ZM1.82373 9.22949H2.83447C3.27393 9.22949 3.59473 9.16064 3.79688 9.02295C3.99902 8.88232 4.1001 8.64502 4.1001 8.31104C4.1001 8.00928 3.99023 7.79102 3.77051 7.65625C3.55371 7.52148 3.20801 7.4541 2.7334 7.4541H1.82373V9.22949ZM1.82373 10.082V12.1167H2.93994C3.37939 12.1167 3.71045 12.0332 3.93311 11.8662C4.15869 11.6963 4.27148 11.4297 4.27148 11.0664C4.27148 10.7324 4.15723 10.4849 3.92871 10.3237C3.7002 10.1626 3.35303 10.082 2.88721 10.082H1.82373Z' fill='%23373F45'/%3E%3Cpath d='M13.011 6.5752V10.7324C13.011 11.207 12.9084 11.623 12.7034 11.9805C12.5012 12.335 12.2068 12.6089 11.8201 12.8022C11.4363 12.9927 10.9763 13.0879 10.4402 13.0879C9.6433 13.0879 9.02368 12.877 8.5813 12.4551C8.13892 12.0332 7.91772 11.4531 7.91772 10.7148V6.5752H8.9724V10.6401C8.9724 11.1704 9.09546 11.5615 9.34155 11.8135C9.58765 12.0654 9.96557 12.1914 10.4753 12.1914C11.4656 12.1914 11.9607 11.6714 11.9607 10.6313V6.5752H13.011Z' fill='%23373F45'/%3E%3Cpath d='M15.9146 13V6.5752H16.9649V13H15.9146Z' fill='%23373F45'/%3E%3Cpath d='M19.9255 13V6.5752H20.9758V12.0991H23.696V13H19.9255Z' fill='%23373F45'/%3E%3Cpath d='M28.2828 13H27.2325V7.47607H25.3428V6.5752H30.1724V7.47607H28.2828V13Z' fill='%23373F45'/%3E%3Cpath d='M41.9472 13H40.8046L39.7148 9.16796C39.6679 9.00097 39.6093 8.76074 39.539 8.44727C39.4687 8.13086 39.4262 7.91113 39.4116 7.78809C39.3823 7.97559 39.3339 8.21875 39.2665 8.51758C39.2021 8.81641 39.1479 9.03905 39.1039 9.18554L38.0405 13H36.8979L36.0673 9.7832L35.2236 6.5752H36.2958L37.2143 10.3193C37.3578 10.9199 37.4604 11.4502 37.5219 11.9102C37.5541 11.6611 37.6025 11.3828 37.6669 11.0752C37.7314 10.7676 37.79 10.5186 37.8427 10.3281L38.8886 6.5752H39.9301L41.0024 10.3457C41.1049 10.6943 41.2133 11.2158 41.3276 11.9102C41.3715 11.4912 41.477 10.958 41.644 10.3105L42.558 6.5752H43.6215L41.9472 13Z' fill='%23373F45'/%3E%3Cpath d='M45.7957 13V6.5752H46.846V13H45.7957Z' fill='%23373F45'/%3E%3Cpath d='M52.0258 13H50.9755V7.47607H49.0859V6.5752H53.9155V7.47607H52.0258V13Z' fill='%23373F45'/%3E%3Cpath d='M61.2312 13H60.1765V10.104H57.2146V13H56.1643V6.5752H57.2146V9.20312H60.1765V6.5752H61.2312V13Z' fill='%23373F45'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;border:1px solid #dde2e7;border-radius:4px;align-items:center;width:190px;height:36px;margin:0 auto;padding:0;-webkit-text-decoration:none;text-decoration:none;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out;display:block;overflow:hidden}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit:hover,.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit:focus{opacity:1;background-color:#fff;-webkit-transform:scale(1.025)perspective(1px);-ms-transform:scale(1.025)perspective(1px);transform:scale(1.025)perspective(1px)}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit[data-variant=dark],.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit[data-variant=light]{background-color:#0000;border-color:#0000;width:166px}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit[data-variant=light]{color:#fff;background-image:url("data:image/svg+xml;charset=utf8,%3Csvg width='162' height='20' viewBox='0 0 162 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M83.0561 15.2457C86.675 15.2457 89.4722 12.5154 89.4722 9.14749C89.4722 5.99211 86.8443 4.06563 85.1038 4.06563C82.6801 4.06563 80.7373 5.76407 80.4605 8.28551C80.4092 8.75244 80.0387 9.14403 79.5686 9.14069C78.7871 9.13509 77.6507 9.12841 76.9314 9.13092C76.6217 9.13199 76.3658 8.88106 76.381 8.57196C76.4895 6.38513 77.2218 4.3404 78.618 2.76974C80.1695 1.02445 82.4289 0 85.1038 0C89.5979 0 93.8406 4.07791 93.8406 9.14749C93.8406 14.7608 89.1832 19.3113 83.1517 19.3113C78.8502 19.3113 74.5179 16.5041 73.0053 12.5795C72.9999 12.565 72.9986 12.5492 73.0015 12.534C73.0218 12.4179 73.0617 12.3118 73.1011 12.2074C73.1583 12.0555 73.2143 11.907 73.2062 11.7359L73.18 11.1892C73.174 11.0569 73.2075 10.9258 73.2764 10.8127C73.3452 10.6995 73.4463 10.6094 73.5666 10.554L73.7852 10.4523C73.9077 10.3957 74.0148 10.3105 74.0976 10.204C74.1803 10.0974 74.2363 9.97252 74.2608 9.83983C74.3341 9.43894 74.6865 9.14749 75.0979 9.14749C75.7404 9.14749 76.299 9.57412 76.5088 10.1806C77.5188 13.1 79.1245 15.2457 83.0561 15.2457Z' fill='white'/%3E%3Cpath d='M155.758 6.91365C155.028 6.91365 154.804 6.47916 154.804 5.98857C154.804 5.46997 154.986 5.06348 155.758 5.06348C156.53 5.06348 156.712 5.46997 156.712 5.98857C156.712 6.47905 156.516 6.91365 155.758 6.91365ZM142.441 12.9304V9.32833L141.415 9.32323V8.90392C141.415 8.44719 141.786 8.07758 142.244 8.07986L142.441 8.08095V6.55306L144.082 6.09057V8.08073H145.569V8.50416C145.569 8.61242 145.548 8.71961 145.506 8.81961C145.465 8.91961 145.404 9.01047 145.328 9.08699C145.251 9.16351 145.16 9.2242 145.06 9.26559C144.96 9.30698 144.853 9.32826 144.745 9.32822H144.082V12.7201C144.082 13.2423 144.378 13.4256 144.76 13.4887C145.209 13.5629 145.583 13.888 145.583 14.343V14.9626C144.029 14.9626 142.441 14.8942 142.441 12.9304Z' fill='white'/%3E%3Cpath d='M110.058 7.92554C108.417 7.88344 106.396 8.92062 106.396 11.5137C106.396 14.0646 108.417 15.0738 110.058 15.0318C111.742 15.0738 113.748 14.0646 113.748 11.5137C113.748 8.92062 111.742 7.88344 110.058 7.92554ZM110.07 13.7586C108.878 13.7586 108.032 12.8905 108.032 11.461C108.032 10.1013 108.878 9.20569 110.071 9.20569C111.263 9.20569 112.101 10.0995 112.101 11.459C112.101 12.8887 111.263 13.7586 110.07 13.7586Z' fill='white'/%3E%3Cpath d='M118.06 7.94098C119.491 7.94098 120.978 8.33337 120.978 11.1366V14.893H120.063C119.608 14.893 119.238 14.524 119.238 14.0689V10.9965C119.238 9.66506 118.747 9.16047 117.891 9.16047C117.414 9.16047 116.797 9.52486 116.502 9.81915V14.069C116.502 14.1773 116.481 14.2845 116.44 14.3845C116.398 14.4845 116.337 14.5753 116.261 14.6519C116.184 14.7284 116.093 14.7891 115.993 14.8305C115.893 14.8719 115.786 14.8931 115.678 14.8931H114.847V8.10918H115.773C115.932 8.10914 116.087 8.16315 116.212 8.26242C116.337 8.36168 116.424 8.50033 116.46 8.65577C116.881 8.19328 117.428 7.94098 118.06 7.94098ZM122.854 8.09713C123.024 8.09708 123.19 8.1496 123.329 8.2475C123.468 8.34541 123.574 8.48391 123.631 8.64405L125.133 12.8486L126.635 8.64415C126.692 8.48402 126.798 8.34551 126.937 8.2476C127.076 8.1497 127.242 8.09718 127.412 8.09724H128.598L126.152 14.3567C126.091 14.5112 125.986 14.6439 125.849 14.7374C125.711 14.831 125.549 14.881 125.383 14.8809H124.333L121.668 8.09713H122.854Z' fill='white'/%3E%3Cpath d='M135.085 14.5514C134.566 14.7616 133.513 15.0416 132.418 15.0416C130.496 15.0416 129.024 13.9345 129.024 11.4396C129.024 9.19701 130.451 7.99792 132.191 7.99792C134.338 7.99792 135.254 9.4378 135.158 11.3979C135.139 11.8029 134.786 12.0983 134.38 12.0983H130.679C130.763 13.1916 131.562 13.7662 132.615 13.7662C133.028 13.7662 133.462 13.7452 133.983 13.6481C134.535 13.545 135.085 13.9375 135.085 14.4985V14.5514ZM133.673 10.949C133.785 9.87621 133.061 9.28752 132.191 9.28752C131.321 9.28752 130.734 9.93979 130.679 10.9489L133.673 10.949Z' fill='white'/%3E%3Cpath d='M137.345 8.11122C137.497 8.11118 137.645 8.16229 137.765 8.25635C137.884 8.35041 137.969 8.48197 138.005 8.62993C138.566 8.20932 139.268 7.94303 139.759 7.94303C139.801 7.94303 140.068 7.94303 140.489 7.99913V8.7265C140.489 9.11748 140.15 9.4147 139.759 9.4147C139.31 9.4147 138.651 9.5829 138.131 9.8773V14.8951H136.462V8.11112L137.345 8.11122ZM156.6 14.0508V8.09104H155.769C155.314 8.09104 154.944 8.45999 154.944 8.9151V14.8748H155.775C156.23 14.8748 156.6 14.5058 156.6 14.0508ZM158.857 12.9447V9.34254H157.749V8.91912C157.749 8.46401 158.118 8.09506 158.574 8.09506H158.857V6.56739L160.499 6.10479V8.09506H161.986V8.51848C161.986 8.97359 161.617 9.34254 161.161 9.34254H160.499V12.7345C160.499 13.2566 160.795 13.44 161.177 13.503C161.626 13.5774 162 13.9024 162 14.3574V14.977C160.446 14.977 158.857 14.9086 158.857 12.9447ZM98.1929 10.1124C98.2033 6.94046 100.598 5.16809 102.895 5.16809C104.171 5.16809 105.342 5.44285 106.304 6.12953L105.914 6.6631C105.654 7.02011 105.16 7.16194 104.749 6.99949C104.169 6.7702 103.622 6.7218 103.215 6.7218C101.335 6.7218 99.9169 7.92849 99.9068 10.1123C99.9169 12.2959 101.335 13.5201 103.215 13.5201C103.622 13.5201 104.169 13.4717 104.749 13.2424C105.16 13.0799 105.654 13.2046 105.914 13.5615L106.304 14.0952C105.342 14.7819 104.171 15.0566 102.895 15.0566C100.598 15.0566 98.2033 13.2842 98.1929 10.1124ZM147.619 5.21768C148.074 5.21768 148.444 5.58663 148.444 6.04174V9.81968L151.82 5.58131C151.897 5.47733 151.997 5.39282 152.112 5.3346C152.227 5.27638 152.355 5.24607 152.484 5.24611H153.984L150.166 10.0615L153.984 14.8749H152.484C152.355 14.8749 152.227 14.8446 152.112 14.7864C151.997 14.7281 151.897 14.6436 151.82 14.5397L148.444 10.3025V14.0508C148.444 14.5059 148.074 14.8749 147.619 14.8749H146.746V5.21768H147.619Z' fill='white'/%3E%3Cpath d='M0.773438 6.5752H2.68066C3.56543 6.5752 4.2041 6.7041 4.59668 6.96191C4.99219 7.21973 5.18994 7.62695 5.18994 8.18359C5.18994 8.55859 5.09326 8.87061 4.8999 9.11963C4.70654 9.36865 4.42822 9.52539 4.06494 9.58984V9.63379C4.51611 9.71875 4.84717 9.88721 5.05811 10.1392C5.27197 10.3882 5.37891 10.7266 5.37891 11.1543C5.37891 11.7314 5.17676 12.1841 4.77246 12.5122C4.37109 12.8374 3.81152 13 3.09375 13H0.773438V6.5752ZM1.82373 9.22949H2.83447C3.27393 9.22949 3.59473 9.16064 3.79688 9.02295C3.99902 8.88232 4.1001 8.64502 4.1001 8.31104C4.1001 8.00928 3.99023 7.79102 3.77051 7.65625C3.55371 7.52148 3.20801 7.4541 2.7334 7.4541H1.82373V9.22949ZM1.82373 10.082V12.1167H2.93994C3.37939 12.1167 3.71045 12.0332 3.93311 11.8662C4.15869 11.6963 4.27148 11.4297 4.27148 11.0664C4.27148 10.7324 4.15723 10.4849 3.92871 10.3237C3.7002 10.1626 3.35303 10.082 2.88721 10.082H1.82373Z' fill='white'/%3E%3Cpath d='M13.011 6.5752V10.7324C13.011 11.207 12.9084 11.623 12.7034 11.9805C12.5012 12.335 12.2068 12.6089 11.8201 12.8022C11.4363 12.9927 10.9763 13.0879 10.4402 13.0879C9.6433 13.0879 9.02368 12.877 8.5813 12.4551C8.13892 12.0332 7.91772 11.4531 7.91772 10.7148V6.5752H8.9724V10.6401C8.9724 11.1704 9.09546 11.5615 9.34155 11.8135C9.58765 12.0654 9.96557 12.1914 10.4753 12.1914C11.4656 12.1914 11.9607 11.6714 11.9607 10.6313V6.5752H13.011Z' fill='white'/%3E%3Cpath d='M15.9146 13V6.5752H16.9649V13H15.9146Z' fill='white'/%3E%3Cpath d='M19.9255 13V6.5752H20.9758V12.0991H23.696V13H19.9255Z' fill='white'/%3E%3Cpath d='M28.2828 13H27.2325V7.47607H25.3428V6.5752H30.1724V7.47607H28.2828V13Z' fill='white'/%3E%3Cpath d='M41.9472 13H40.8046L39.7148 9.16796C39.6679 9.00097 39.6093 8.76074 39.539 8.44727C39.4687 8.13086 39.4262 7.91113 39.4116 7.78809C39.3823 7.97559 39.3339 8.21875 39.2665 8.51758C39.2021 8.81641 39.1479 9.03905 39.1039 9.18554L38.0405 13H36.8979L36.0673 9.7832L35.2236 6.5752H36.2958L37.2143 10.3193C37.3578 10.9199 37.4604 11.4502 37.5219 11.9102C37.5541 11.6611 37.6025 11.3828 37.6669 11.0752C37.7314 10.7676 37.79 10.5186 37.8427 10.3281L38.8886 6.5752H39.9301L41.0024 10.3457C41.1049 10.6943 41.2133 11.2158 41.3276 11.9102C41.3715 11.4912 41.477 10.958 41.644 10.3105L42.558 6.5752H43.6215L41.9472 13Z' fill='white'/%3E%3Cpath d='M45.7957 13V6.5752H46.846V13H45.7957Z' fill='white'/%3E%3Cpath d='M52.0258 13H50.9755V7.47607H49.0859V6.5752H53.9155V7.47607H52.0258V13Z' fill='white'/%3E%3Cpath d='M61.2312 13H60.1765V10.104H57.2146V13H56.1643V6.5752H57.2146V9.20312H60.1765V6.5752H61.2312V13Z' fill='white'/%3E%3C/svg%3E")}@-webkit-keyframes formkit-bouncedelay-formkit-form-data-uid-8d653b97b6-{0%,80%,to{-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0)}40%{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}@keyframes formkit-bouncedelay-formkit-form-data-uid-8d653b97b6-{0%,80%,to{-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0)}40%{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}.formkit-form[data-uid="8d653b97b6"] blockquote{border-left:5px solid #e1e1e1;margin:0 0 20px;padding:10px 20px}.formkit-form[data-uid="8d653b97b6"] .seva-custom-content{color:#fff;mix-blend-mode:difference;padding:15px;font-size:16px}.formkit-form[data-uid="8d653b97b6"]{max-width:700px}.formkit-form[data-uid="8d653b97b6"] [data-style=clean]{width:100%}.formkit-form[data-uid="8d653b97b6"] .formkit-fields{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;margin:0 auto;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.formkit-form[data-uid="8d653b97b6"] .formkit-field,.formkit-form[data-uid="8d653b97b6"] .formkit-submit{-webkit-flex:1 0 100%;-ms-flex:1 0 100%;flex:1 0 100%;margin:0 0 15px}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit-container{margin:0}.formkit-form[data-uid="8d653b97b6"] .formkit-submit{position:static}.formkit-form[data-uid="8d653b97b6"][min-width~="700"] [data-style=clean],.formkit-form[data-uid="8d653b97b6"][min-width~="800"] [data-style=clean]{padding:10px}.formkit-form[data-uid="8d653b97b6"][min-width~="700"] .formkit-fields[data-stacked=false],.formkit-form[data-uid="8d653b97b6"][min-width~="800"] .formkit-fields[data-stacked=false]{margin-left:-5px;margin-right:-5px}.formkit-form[data-uid="8d653b97b6"][min-width~="700"] .formkit-fields[data-stacked=false] .formkit-field,.formkit-form[data-uid="8d653b97b6"][min-width~="800"] .formkit-fields[data-stacked=false] .formkit-field,.formkit-form[data-uid="8d653b97b6"][min-width~="700"] .formkit-fields[data-stacked=false] .formkit-submit,.formkit-form[data-uid="8d653b97b6"][min-width~="800"] .formkit-fields[data-stacked=false] .formkit-submit{margin:0 5px 15px}.formkit-form[data-uid="8d653b97b6"][min-width~="700"] .formkit-fields[data-stacked=false] .formkit-field,.formkit-form[data-uid="8d653b97b6"][min-width~="800"] .formkit-fields[data-stacked=false] .formkit-field{-webkit-flex:100 auto;-ms-flex:100 auto;flex:100 auto}.formkit-form[data-uid="8d653b97b6"][min-width~="700"] .formkit-fields[data-stacked=false] .formkit-submit,.formkit-form[data-uid="8d653b97b6"][min-width~="800"] .formkit-fields[data-stacked=false] .formkit-submit{-webkit-flex:auto;-ms-flex:auto;flex:auto}</style></form>
</div><div><div class="quoteContainer_Karu"><figure class="tweetQuote_h8Rz"><blockquote><a href="https://twitter.com/wcandillon/status/1263825118557593600" target="_blank" rel="noreferrer nofollow">If you are not signed-up, you are missing out</a></blockquote><figcaption><a href="https://twitter.com/wcandillon" target="_blank" rel="noreferrer nofollow"><div class="avatar"><img alt="William Candillon" class="avatar__photo shadow--md avatarImg_b51M" src="https://unavatar.io/twitter/wcandillon?fallback=https://github.com/wcandillon.png"><div class="avatar__intro"><strong class="avatar__name"><cite>William Candillon</cite></strong><small class="avatar__subtitle" itemprop="description">React-Native animations expert - Youtuber</small></div></div></a></figcaption></figure></div></div></div>
<div role="separator" style="text-align:center;margin:10px 0"><img class="separator" src="https://thisweekinreact.com/emails/separators/christmas.png" width="600" height="64" style="width:100%;max-width:600px;margin:0 auto;object-fit:contain"></div>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="sponsor2">💸 Sponsor<a href="https://thisweekinreact.com/newsletter/276#sponsor2" class="hash-link" aria-label="Direct link to 💸 Sponsor" title="Direct link to 💸 Sponsor">​</a></h2>
<p><a href="https://wallabyjs.com/?referrer=ThisWeekInReact8Apr26" target="_blank" rel="noopener noreferrer"><img decoding="async" loading="lazy" src="https://thisweekinreact.com/emails/issues/276/wallaby.jpg" alt="No breakpoints, no console.log — just AI &amp; time travel" class="img_SS3x"></a></p>
<p><strong><a href="https://wallabyjs.com/?referrer=ThisWeekInReact8Apr26" target="_blank" rel="noopener noreferrer">No breakpoints, no console.log — just AI &amp; time travel</a></strong></p>
<p>15x faster TypeScript and JavaScript debugging than with breakpoints and <code>console.log</code>, while upgrading your AI agent into an expert debugger with real-time context.</p>
<p>Wallaby.js runs your tests as you type, feeding your AI assistant live runtime values, code coverage, error details, and execution paths — all right next to your code. With <a href="https://wallabyjs.com/blog/wallaby-v3.html?referrer=ThisWeekInReact8Apr26" target="_blank" rel="noopener noreferrer">Wallaby v3’s new engine</a> 🚀, tests start instantly with cached results, prioritize active files, and stream updates in real time.</p>
<p>Built for testing, Wallaby includes a <strong>Time Travel Debugger</strong>, the ability to run only opened files, full-context AI integration, smart test runs, and more.</p>
<p><a href="https://wallabyjs.com/?referrer=ThisWeekInReact8Apr26" target="_blank" rel="noopener noreferrer">➡️ Learn More</a></p>
<div role="separator" style="text-align:center;margin:10px 0"><img class="separator" src="https://thisweekinreact.com/emails/separators/christmas.png" width="600" height="64" style="width:100%;max-width:600px;margin:0 auto;object-fit:contain"></div>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="react-native">📱 React-Native<a href="https://thisweekinreact.com/newsletter/276#react-native" class="hash-link" aria-label="Direct link to 📱 React-Native" title="Direct link to 📱 React-Native">​</a></h2>
<p><a href="https://reactnative.dev/blog/2026/04/07/react-native-0.85" target="_blank" rel="noopener noreferrer"><img decoding="async" loading="lazy" src="https://thisweekinreact.com/emails/issues/276/rn.jpg" alt="React Native 0.85" class="img_SS3x"></a></p>
<p><strong><a href="https://reactnative.dev/blog/2026/04/07/react-native-0.85" target="_blank" rel="noopener noreferrer">React Native 0.85</a></strong></p>
<p>React Native 0.85 notably ships with a new Shared Animation Backend built in collaboration with Software Mansion, alongside a few other improvements and breaking changes:</p>
<ul>
<li><strong>Shared Animation Backend</strong>: This new internal engine will soon be enabled in React Native 0.85.1 and power both Animated and Reanimated. It enables performance benefits for Reanimated, and the core Animated API will finally animate layout props through the native driver!</li>
<li><strong>DevTools Improvements</strong>: Multiple simultaneous CDP connections allow you to debug with DevTools, VS Code, and AI agents simultaneously without sessions dropping.</li>
<li><strong>Metro TLS Support</strong>: HTTPS and WSS during development for testing secure APIs.</li>
<li><strong>Breaking Changes</strong>: Jest preset moved to <code>@react-native/jest-preset</code>, dropped EOL Node versions, and removed <code>StyleSheet.absoluteFillObject</code>.</li>
</ul>
<div role="separator" style="text-align:center;margin:10px 0"><img class="separator" src="https://thisweekinreact.com/emails/separators/christmas.png" width="600" height="64" style="width:100%;max-width:600px;margin:0 auto;object-fit:contain"></div>
<ul>
<li>💸 <a href="https://go.posthog.com/twir-apr8" target="_blank" rel="noopener noreferrer">Product for Engineers - What we wish we knew about building AI agents</a></li>
<li>👀 <a href="https://github.com/facebook/react/pull/35764" target="_blank" rel="noopener noreferrer">React PR - ViewTransition support for React Native Fabric</a> - Behind a flag, not ready for prime time, but this is one of many PRs showing that <code>&lt;ViewTransition&gt;</code> for React Native is being actively worked on!</li>
<li>👀 <a href="https://github.com/Shopify/react-native-skia/pull/3813" target="_blank" rel="noopener noreferrer">React Native Skia - First Graphite pre-release</a>- Google's next-gen Skia renderer (Vulkan/Metal/Dawn) comes to RN Skia, now available in the <code>@next</code> distribution channel.</li>
<li>📜 <a href="https://expo.dev/blog/expo-brownfield-how-to-add-expo-to-your-existing-native-app-without-a-rewrite" target="_blank" rel="noopener noreferrer">Expo brownfield: How to add Expo to your existing native app without a rewrite</a> - SDK 55 introduced a new “isolated” approach to integrate Expo in an existing native app. The Expo app is built ahead of time and distributed as a native binary artifact</li>
<li>📜 <a href="https://heartit.tech/react-native-jsi-deep-dive-part-1-the-runtime-you-never-see/" target="_blank" rel="noopener noreferrer">React Native JSI Deep Dive Series</a> - Comprehensive 12-part series covering JSI internals, from C++ architecture to TurboModule integration.</li>
<li>📜 <a href="https://www.callstack.com/blog/how-we-optimized-agent-device-for-mobile-app-automation" target="_blank" rel="noopener noreferrer">How We Optimized Agent Device for Mobile App Automation</a> - Deep dive on reducing LLM token usage by 50% for AI-driven mobile testing through accessibility snapshots and smarter context management.</li>
<li>📦 <a href="https://devblogs.microsoft.com/react-native/%F0%9F%9A%80react-native-windows-v0-82-is-here/" target="_blank" rel="noopener noreferrer">RN Windows 0.82 - Fabric-only, XAML UI Hosting</a> - Community modules can now embed native XAML controls directly in Fabric. New accessibility override API gives third-party modules fine-grained control over screen reader behavior.</li>
<li>📦 <a href="https://github.com/callstack/react-native-builder-bob/releases/tag/create-react-native-library%400.60.0" target="_blank" rel="noopener noreferrer">Create React Native Library 0.60 - Experimental C++ TurboModule, Vite web support for examples</a> - New templates can now scaffold experimental C++ TurboModules for native development. You can now test both native and web support without custom configuration.</li>
<li>📦 <a href="https://maestro.dev/blog/maestro-cli-2-4-0" target="_blank" rel="noopener noreferrer">Maestro CLI 2.4 - iOS 26 support, new <code>list-device</code> commands for easier device selection</a></li>
<li>📦 <a href="https://sheet.lodev09.com/blog/release-3-10" target="_blank" rel="noopener noreferrer">True Sheet 3.10 - iOS 26 scroll edge effects, grabber accessibility</a></li>
<li>📦 <a href="https://nitroplayer.riteshshukla.in/" target="_blank" rel="noopener noreferrer">Nitro Player 1.0 - Audio player with playlist management, playback controls, and support for Android Auto and CarPlay</a></li>
<li>📦 <a href="https://github.com/Shopify/react-native-skia/releases/tag/v2.6.0" target="_blank" rel="noopener noreferrer">Skia 2.6 - New immutable Path API</a></li>
<li>📦 <a href="https://github.com/software-mansion/react-native-gesture-handler/releases/tag/v2.31.0" target="_blank" rel="noopener noreferrer">Gesture Handler 2.31 - Various bug fixes, fix unresponsive handlers</a></li>
</ul>
<div role="separator" style="text-align:center;margin:10px 0"><img class="separator" src="https://thisweekinreact.com/emails/separators/christmas.png" width="600" height="64" style="width:100%;max-width:600px;margin:0 auto;object-fit:contain"></div>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="other">🔀 Other<a href="https://thisweekinreact.com/newsletter/276#other" class="hash-link" aria-label="Direct link to 🔀 Other" title="Direct link to 🔀 Other">​</a></h2>
<ul>
<li>👀 <a href="https://discourse.llvm.org/t/rfc-jsir-a-high-level-ir-for-javascript/90456" target="_blank" rel="noopener noreferrer">JSIR - A High-Level IR for JavaScript (RFC)</a> - Google's new JavaScript IR (Intermediate Representation) proposal for static analysis. Already used internally for code analysis and deobfuscation, notably decompiling Hermes bytecode.</li>
<li>📜 <a href="https://socket.dev/blog/hidden-blast-radius-of-the-axios-compromise" target="_blank" rel="noopener noreferrer">The Hidden Blast Radius of the Axios Compromise</a> - Last week, the popular <code>axios</code> library got compromised through a <a href="https://socket.dev/blog/axios-maintainer-confirms-social-engineering-behind-npm-compromise" target="_blank" rel="noopener noreferrer">sophisticated social engineering attack</a>. Even if your app doesn’t depend on the library, you may still be affected through transitive dependencies or using <code>npx</code> in critical CI workflows.</li>
<li>📜 <a href="https://frontendmasters.com/blog/what-to-know-in-javascript-2026-edition/" target="_blank" rel="noopener noreferrer">What To Know in JavaScript (2026 Edition)</a> - Comprehensive roundup covering ES2025/2026 features, framework updates, runtime landscape, and build tools.</li>
<li>📜 <a href="https://polypane.app/blog/the-intl-api-the-best-browser-api-youre-not-using/" target="_blank" rel="noopener noreferrer">The Intl API: The best browser API you're not using</a></li>
<li>📦 <a href="https://www.bram.us/2026/04/02/view-transitions-toolkit/" target="_blank" rel="noopener noreferrer">View Transitions Toolkit - Utility functions for View Transitions</a> - Filling in gaps for advanced View Transitions patterns. Feature detection, animation optimization, playback control, and automatic navigation types.</li>
<li>📦 <a href="https://eslint.org/blog/2026/04/eslint-v10.2.0-released/" target="_blank" rel="noopener noreferrer">ESLint 10.2 - Language-aware rules, Temporal support</a></li>
<li>📦 <a href="https://github.com/evanw/esbuild/releases/tag/v0.28.0" target="_blank" rel="noopener noreferrer">esbuild 0.28 - Import Text proposal, integrity checks</a></li>
<li>📦 <a href="https://github.com/sindresorhus/ky/releases/tag/v2.0.0" target="_blank" rel="noopener noreferrer">Ky 2.0 - JavaScript HTTP client based on the Fetch API</a></li>
</ul>
<div role="separator" style="text-align:center;margin:10px 0"><img class="separator" src="https://thisweekinreact.com/emails/separators/christmas.png" width="600" height="64" style="width:100%;max-width:600px;margin:0 auto;object-fit:contain"></div>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="fun">🤭 Fun<a href="https://thisweekinreact.com/newsletter/276#fun" class="hash-link" aria-label="Direct link to 🤭 Fun" title="Direct link to 🤭 Fun">​</a></h2>
<p><a href="https://x.com/DavidKPiano/status/2041818750337348040" target="_blank" rel="noopener noreferrer"><img decoding="async" loading="lazy" src="https://thisweekinreact.com/emails/issues/276/meme.jpg" alt="alt" class="img_SS3x"></a></p>
<p><a href="https://x.com/sebastienlorber/status/2041927591288852595" target="_blank" rel="noopener noreferrer"><img decoding="async" loading="lazy" src="https://thisweekinreact.com/emails/issues/276/meme2.jpg" alt="alt" class="img_SS3x"></a></p>
<p>See ya! 👋</p>]]></content>
        <author>
            <name>Sébastien Lorber</name>
            <uri>https://sebastienlorber.com</uri>
        </author>
        <author>
            <name>Jan Jaworski</name>
            <uri>https://x.com/jaworek3211</uri>
        </author>
    </entry>
    <entry>
        <title type="html"><![CDATA[This Week In React #275: ⚛️ Next.js, TanStack RSC, React Compiler, Inertia, Astro, Trusted Types, Signals | 📱 ExecuTorch, Unistyles, RN.run, Preflight, Confetti, AI, Lynx | 🔀 Pretext, Axios, Node, Playwright, Turborepo]]></title>
        <id>https://thisweekinreact.com/newsletter/275</id>
        <link href="https://thisweekinreact.com/newsletter/275"/>
        <updated>2026-04-01T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Hi everyone, Seb and Jan here 👋\!]]></summary>
        <content type="html"><![CDATA[<p>Hi everyone, <a href="https://x.com/sebastienlorber" target="_blank" rel="noopener noreferrer">Seb</a> and <a href="https://x.com/jaworek3211" target="_blank" rel="noopener noreferrer">Jan</a> here 👋!</p>
<p>This week, we have news about popular React meta-frameworks. Next.js Adapters API should help host it anywhere without compromise. TanStack Start unveils a preview of its React Server Components. The React Compiler port to Rust is being actively worked on.</p>
<p>No major announcement in the React Native world, but still many interesting releases. React Native v0.85 should be released next week.</p>
<p>Axios has been compromised in a major supply chain attack. Stay safe and make sure to adopt security best practices!</p>
<p>Let's dive in!</p>
<!-- -->
<p>As always, thanks for supporting us on your favorite platform:</p>
<ul>
<li>🦋 <a href="https://slo.im/last/b" target="_blank" rel="noopener noreferrer">Bluesky</a></li>
<li>✖️ <a href="https://slo.im/last/x" target="_blank" rel="noopener noreferrer">X / Twitter</a></li>
<li>👔 <a href="https://slo.im/last/l" target="_blank" rel="noopener noreferrer">LinkedIn</a></li>
<li>👽 <a href="https://slo.im/last/r" target="_blank" rel="noopener noreferrer">Reddit</a></li>
</ul>
<div class="card subscribeFormEmbed_aAcT"><p><strong>Don't miss the next email!</strong></p><div class="">
<script src="https://f.convertkit.com/ckjs/ck.5.js"></script>
      <form action="https://app.convertkit.com/forms/3472133/subscriptions" class="seva-form formkit-form" method="post" data-sv-form="3472133" data-uid="8d653b97b6" data-format="inline" data-version="5" data-options="{&quot;settings&quot;:{&quot;after_subscribe&quot;:{&quot;action&quot;:&quot;redirect&quot;,&quot;success_message&quot;:&quot;Success! Now check your email to confirm your subscription.&quot;,&quot;redirect_url&quot;:&quot;https://thisweekinreact.com/workflow/confirm-your-email&quot;},&quot;analytics&quot;:{&quot;google&quot;:null,&quot;fathom&quot;:null,&quot;facebook&quot;:null,&quot;segment&quot;:null,&quot;pinterest&quot;:null,&quot;sparkloop&quot;:null,&quot;googletagmanager&quot;:null},&quot;modal&quot;:{&quot;trigger&quot;:&quot;timer&quot;,&quot;scroll_percentage&quot;:null,&quot;timer&quot;:5,&quot;devices&quot;:&quot;all&quot;,&quot;show_once_every&quot;:15},&quot;powered_by&quot;:{&quot;show&quot;:false,&quot;url&quot;:&quot;https://convertkit.com/features/forms?lmref=d0748g&amp;utm_campaign=poweredby&amp;utm_content=form&amp;utm_medium=referral&amp;utm_source=dynamic&quot;},&quot;recaptcha&quot;:{&quot;enabled&quot;:false},&quot;return_visitor&quot;:{&quot;action&quot;:&quot;show&quot;,&quot;custom_content&quot;:&quot;&quot;},&quot;slide_in&quot;:{&quot;display_in&quot;:&quot;bottom_right&quot;,&quot;trigger&quot;:&quot;timer&quot;,&quot;scroll_percentage&quot;:null,&quot;timer&quot;:5,&quot;devices&quot;:&quot;all&quot;,&quot;show_once_every&quot;:15},&quot;sticky_bar&quot;:{&quot;display_in&quot;:&quot;top&quot;,&quot;trigger&quot;:&quot;timer&quot;,&quot;scroll_percentage&quot;:null,&quot;timer&quot;:5,&quot;devices&quot;:&quot;all&quot;,&quot;show_once_every&quot;:15}},&quot;version&quot;:&quot;5&quot;}" min-width="400 500 600 700 800"><div data-style="clean"><ul class="formkit-alert formkit-alert-error" data-element="errors" data-group="alert"></ul><div data-element="fields" data-stacked="false" class="seva-fields formkit-fields"><div class="formkit-field"><input class="formkit-input" name="email_address" aria-label="Email Address" placeholder="Email Address" required="" type="email" style="color: rgb(0, 0, 0); border-color: rgb(227, 227, 227); border-radius: 4px; font-weight: 700;"></div><button data-element="submit" class="formkit-submit formkit-submit" style="color: rgb(255, 255, 255); background-color: rgb(0, 54, 92); border-radius: 4px; font-weight: 700;"><div class="formkit-spinner"><div></div><div></div><div></div></div><span class="">Subscribe now!</span></button></div></div><style>.formkit-form[data-uid="8d653b97b6"] *{box-sizing:border-box}.formkit-form[data-uid="8d653b97b6"]{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.formkit-form[data-uid="8d653b97b6"] legend{font-size:inherit;border:none;margin-bottom:10px;padding:0;display:table;position:relative}.formkit-form[data-uid="8d653b97b6"] fieldset{border:0;min-width:0;margin:0;padding:.01em 0 0}.formkit-form[data-uid="8d653b97b6"] body:not(:-moz-handler-blocked) fieldset{display:table-cell}.formkit-form[data-uid="8d653b97b6"] h1,.formkit-form[data-uid="8d653b97b6"] h2,.formkit-form[data-uid="8d653b97b6"] h3,.formkit-form[data-uid="8d653b97b6"] h4,.formkit-form[data-uid="8d653b97b6"] h5,.formkit-form[data-uid="8d653b97b6"] h6{color:inherit;font-size:inherit;font-weight:inherit}.formkit-form[data-uid="8d653b97b6"] h2{margin:1em 0;font-size:1.5em}.formkit-form[data-uid="8d653b97b6"] h3{margin:1em 0;font-size:1.17em}.formkit-form[data-uid="8d653b97b6"] p{color:inherit;font-size:inherit;font-weight:inherit}.formkit-form[data-uid="8d653b97b6"] ol:not([template-default]),.formkit-form[data-uid="8d653b97b6"] ul:not([template-default]),.formkit-form[data-uid="8d653b97b6"] blockquote:not([template-default]){text-align:left}.formkit-form[data-uid="8d653b97b6"] p:not([template-default]),.formkit-form[data-uid="8d653b97b6"] hr:not([template-default]),.formkit-form[data-uid="8d653b97b6"] blockquote:not([template-default]),.formkit-form[data-uid="8d653b97b6"] ol:not([template-default]),.formkit-form[data-uid="8d653b97b6"] ul:not([template-default]){color:inherit;font-style:initial}.formkit-form[data-uid="8d653b97b6"] .ordered-list,.formkit-form[data-uid="8d653b97b6"] .unordered-list{padding-left:1em;list-style-position:outside!important}.formkit-form[data-uid="8d653b97b6"] .list-item{padding-left:0}.formkit-form[data-uid="8d653b97b6"][data-format=modal],.formkit-form[data-uid="8d653b97b6"][data-format=slide\ in],.formkit-form[data-uid="8d653b97b6"][data-format=sticky\ bar]{display:none}.formkit-sticky-bar .formkit-form[data-uid="8d653b97b6"][data-format=sticky\ bar]{display:block}.formkit-form[data-uid="8d653b97b6"] .formkit-input,.formkit-form[data-uid="8d653b97b6"] .formkit-select,.formkit-form[data-uid="8d653b97b6"] .formkit-checkboxes{width:100%}.formkit-form[data-uid="8d653b97b6"] .formkit-button,.formkit-form[data-uid="8d653b97b6"] .formkit-submit{color:#fff;cursor:pointer;text-align:center;cursor:pointer;vertical-align:middle;border:0;border-radius:5px;margin-bottom:15px;padding:0;font-size:15px;font-weight:500;display:inline-block;position:relative;overflow:hidden}.formkit-form[data-uid="8d653b97b6"] .formkit-button:hover,.formkit-form[data-uid="8d653b97b6"] .formkit-submit:hover,.formkit-form[data-uid="8d653b97b6"] .formkit-button:focus,.formkit-form[data-uid="8d653b97b6"] .formkit-submit:focus{outline:none}.formkit-form[data-uid="8d653b97b6"] .formkit-button:hover>span,.formkit-form[data-uid="8d653b97b6"] .formkit-submit:hover>span,.formkit-form[data-uid="8d653b97b6"] .formkit-button:focus>span,.formkit-form[data-uid="8d653b97b6"] .formkit-submit:focus>span{background-color:#0000001a}.formkit-form[data-uid="8d653b97b6"] .formkit-button>span,.formkit-form[data-uid="8d653b97b6"] .formkit-submit>span{padding:12px 24px;-webkit-transition:all .3s ease-in-out;transition:all .3s ease-in-out;display:block}.formkit-form[data-uid="8d653b97b6"] .formkit-input{background:#fff;border:1px solid #e3e3e3;-webkit-flex:1 0 auto;-ms-flex:1 0 auto;flex:1 0 auto;margin:0;padding:12px;font-size:15px;line-height:1.4;-webkit-transition:border-color .3s ease-out;transition:border-color .3s ease-out}.formkit-form[data-uid="8d653b97b6"] .formkit-input:focus{border-color:#1677be;outline:none;-webkit-transition:border-color .3s;transition:border-color .3s}.formkit-form[data-uid="8d653b97b6"] .formkit-input::-webkit-input-placeholder{color:inherit;opacity:.8}.formkit-form[data-uid="8d653b97b6"] .formkit-input::placeholder{color:inherit;opacity:.8}.formkit-form[data-uid="8d653b97b6"] .formkit-input:-ms-placeholder-shown{color:inherit;opacity:.8}.formkit-form[data-uid="8d653b97b6"] .formkit-input::placeholder{color:inherit;opacity:.8}.formkit-form[data-uid="8d653b97b6"] [data-group=dropdown]{width:100%;display:inline-block;position:relative}.formkit-form[data-uid="8d653b97b6"] [data-group=dropdown]:before{content:"";pointer-events:none;z-index:999;border:6px solid #0000;border-top-color:#4f4f4f;border-bottom-width:0;width:0;height:0;position:absolute;top:calc(50% - 2.5px);right:10px}.formkit-form[data-uid="8d653b97b6"] [data-group=dropdown] select{cursor:pointer;color:#333;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#fff;border:1px solid #e3e3e3;width:100%;height:auto;margin-bottom:0;padding:12px 25px 12px 12px;font-size:15px;line-height:1.4}.formkit-form[data-uid="8d653b97b6"] [data-group=dropdown] select:focus{outline:none}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes]{text-align:left;margin:0}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox]{margin-bottom:10px}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] *{cursor:pointer}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox]:last-of-type{margin-bottom:0}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] input[type=checkbox]{display:none}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] input[type=checkbox]+label:after{content:none}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] input[type=checkbox]:checked+label:after{content:"";border-color:#fff}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] input[type=checkbox]:checked+label:before{background:#10bf7a;border-color:#10bf7a}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] label{padding-left:28px;display:inline-block;position:relative}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] label:before,.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] label:after{content:"";display:inline-block;position:absolute}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] label:before{background:#fff;border:1px solid #e3e3e3;width:16px;height:16px;top:3px;left:0}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] label:after{border-bottom:2px solid #4d4d4d;border-left:2px solid #4d4d4d;width:8px;height:4px;top:8px;left:4px;-webkit-transform:rotate(-45deg);-ms-transform:rotate(-45deg);transform:rotate(-45deg)}.formkit-form[data-uid="8d653b97b6"] .formkit-alert{text-align:center;background:#f9fafb;border:1px solid #e3e3e3;border-radius:5px;-webkit-flex:1 0 auto;-ms-flex:1 0 auto;flex:1 0 auto;width:100%;margin:25px auto;padding:12px;list-style:none}.formkit-form[data-uid="8d653b97b6"] .formkit-alert:empty{display:none}.formkit-form[data-uid="8d653b97b6"] .formkit-alert-success{color:#0c905c;background:#d3fbeb;border-color:#10bf7a}.formkit-form[data-uid="8d653b97b6"] .formkit-alert-error{color:#ea4110;background:#fde8e2;border-color:#f2643b}.formkit-form[data-uid="8d653b97b6"] .formkit-spinner{text-align:center;width:0;height:0;margin:0 auto;-webkit-transition:all .3s ease-in-out;transition:all .3s ease-in-out;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;position:absolute;top:0;left:0;right:0;overflow:hidden}.formkit-form[data-uid="8d653b97b6"] .formkit-spinner>div{opacity:.3;background-color:#fff;border-radius:100%;width:12px;height:12px;margin:auto;-webkit-animation:1.4s ease-in-out infinite both formkit-bouncedelay-formkit-form-data-uid-8d653b97b6-;animation:1.4s ease-in-out infinite both formkit-bouncedelay-formkit-form-data-uid-8d653b97b6-;display:inline-block}.formkit-form[data-uid="8d653b97b6"] .formkit-spinner>div:first-child{-webkit-animation-delay:-.32s;animation-delay:-.32s}.formkit-form[data-uid="8d653b97b6"] .formkit-spinner>div:nth-child(2){-webkit-animation-delay:-.16s;animation-delay:-.16s}.formkit-form[data-uid="8d653b97b6"] .formkit-submit[data-active] .formkit-spinner{opacity:1;width:50px;height:100%}.formkit-form[data-uid="8d653b97b6"] .formkit-submit[data-active] .formkit-spinner~span{opacity:0}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by[data-active=false]{opacity:.35}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit-container{z-index:5;width:100%;margin:10px 0;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;position:relative}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit-container[data-active=false]{opacity:.35}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit{color:#373f45;cursor:pointer;opacity:.95;text-indent:100%;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-color:#fff;background-image:url("data:image/svg+xml;charset=utf8,%3Csvg width='162' height='20' viewBox='0 0 162 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M83.0561 15.2457C86.675 15.2457 89.4722 12.5154 89.4722 9.14749C89.4722 5.99211 86.8443 4.06563 85.1038 4.06563C82.6801 4.06563 80.7373 5.76407 80.4605 8.28551C80.4092 8.75244 80.0387 9.14403 79.5686 9.14069C78.7871 9.13509 77.6507 9.12841 76.9314 9.13092C76.6217 9.13199 76.3658 8.88106 76.381 8.57196C76.4895 6.38513 77.2218 4.3404 78.618 2.76974C80.1695 1.02445 82.4289 0 85.1038 0C89.5979 0 93.8406 4.07791 93.8406 9.14749C93.8406 14.7608 89.1832 19.3113 83.1517 19.3113C78.8502 19.3113 74.5179 16.5041 73.0053 12.5795C72.9999 12.565 72.9986 12.5492 73.0015 12.534C73.0218 12.4179 73.0617 12.3118 73.1011 12.2074C73.1583 12.0555 73.2143 11.907 73.2062 11.7359L73.18 11.1892C73.174 11.0569 73.2075 10.9258 73.2764 10.8127C73.3452 10.6995 73.4463 10.6094 73.5666 10.554L73.7852 10.4523C73.9077 10.3957 74.0148 10.3105 74.0976 10.204C74.1803 10.0974 74.2363 9.97252 74.2608 9.83983C74.3341 9.43894 74.6865 9.14749 75.0979 9.14749C75.7404 9.14749 76.299 9.57412 76.5088 10.1806C77.5188 13.1 79.1245 15.2457 83.0561 15.2457Z' fill='%23373F45'/%3E%3Cpath d='M155.758 6.91365C155.028 6.91365 154.804 6.47916 154.804 5.98857C154.804 5.46997 154.986 5.06348 155.758 5.06348C156.53 5.06348 156.712 5.46997 156.712 5.98857C156.712 6.47905 156.516 6.91365 155.758 6.91365ZM142.441 12.9304V9.32833L141.415 9.32323V8.90392C141.415 8.44719 141.786 8.07758 142.244 8.07986L142.441 8.08095V6.55306L144.082 6.09057V8.08073H145.569V8.50416C145.569 8.61242 145.548 8.71961 145.506 8.81961C145.465 8.91961 145.404 9.01047 145.328 9.08699C145.251 9.16351 145.16 9.2242 145.06 9.26559C144.96 9.30698 144.853 9.32826 144.745 9.32822H144.082V12.7201C144.082 13.2423 144.378 13.4256 144.76 13.4887C145.209 13.5629 145.583 13.888 145.583 14.343V14.9626C144.029 14.9626 142.441 14.8942 142.441 12.9304Z' fill='%23373F45'/%3E%3Cpath d='M110.058 7.92554C108.417 7.88344 106.396 8.92062 106.396 11.5137C106.396 14.0646 108.417 15.0738 110.058 15.0318C111.742 15.0738 113.748 14.0646 113.748 11.5137C113.748 8.92062 111.742 7.88344 110.058 7.92554ZM110.07 13.7586C108.878 13.7586 108.032 12.8905 108.032 11.461C108.032 10.1013 108.878 9.20569 110.071 9.20569C111.263 9.20569 112.101 10.0995 112.101 11.459C112.101 12.8887 111.263 13.7586 110.07 13.7586Z' fill='%23373F45'/%3E%3Cpath d='M118.06 7.94098C119.491 7.94098 120.978 8.33337 120.978 11.1366V14.893H120.063C119.608 14.893 119.238 14.524 119.238 14.0689V10.9965C119.238 9.66506 118.747 9.16047 117.891 9.16047C117.414 9.16047 116.797 9.52486 116.502 9.81915V14.069C116.502 14.1773 116.481 14.2845 116.44 14.3845C116.398 14.4845 116.337 14.5753 116.261 14.6519C116.184 14.7284 116.093 14.7891 115.993 14.8305C115.893 14.8719 115.786 14.8931 115.678 14.8931H114.847V8.10918H115.773C115.932 8.10914 116.087 8.16315 116.212 8.26242C116.337 8.36168 116.424 8.50033 116.46 8.65577C116.881 8.19328 117.428 7.94098 118.06 7.94098ZM122.854 8.09713C123.024 8.09708 123.19 8.1496 123.329 8.2475C123.468 8.34541 123.574 8.48391 123.631 8.64405L125.133 12.8486L126.635 8.64415C126.692 8.48402 126.798 8.34551 126.937 8.2476C127.076 8.1497 127.242 8.09718 127.412 8.09724H128.598L126.152 14.3567C126.091 14.5112 125.986 14.6439 125.849 14.7374C125.711 14.831 125.549 14.881 125.383 14.8809H124.333L121.668 8.09713H122.854Z' fill='%23373F45'/%3E%3Cpath d='M135.085 14.5514C134.566 14.7616 133.513 15.0416 132.418 15.0416C130.496 15.0416 129.024 13.9345 129.024 11.4396C129.024 9.19701 130.451 7.99792 132.191 7.99792C134.338 7.99792 135.254 9.4378 135.158 11.3979C135.139 11.8029 134.786 12.0983 134.38 12.0983H130.679C130.763 13.1916 131.562 13.7662 132.615 13.7662C133.028 13.7662 133.462 13.7452 133.983 13.6481C134.535 13.545 135.085 13.9375 135.085 14.4985V14.5514ZM133.673 10.949C133.785 9.87621 133.061 9.28752 132.191 9.28752C131.321 9.28752 130.734 9.93979 130.679 10.9489L133.673 10.949Z' fill='%23373F45'/%3E%3Cpath d='M137.345 8.11122C137.497 8.11118 137.645 8.16229 137.765 8.25635C137.884 8.35041 137.969 8.48197 138.005 8.62993C138.566 8.20932 139.268 7.94303 139.759 7.94303C139.801 7.94303 140.068 7.94303 140.489 7.99913V8.7265C140.489 9.11748 140.15 9.4147 139.759 9.4147C139.31 9.4147 138.651 9.5829 138.131 9.8773V14.8951H136.462V8.11112L137.345 8.11122ZM156.6 14.0508V8.09104H155.769C155.314 8.09104 154.944 8.45999 154.944 8.9151V14.8748H155.775C156.23 14.8748 156.6 14.5058 156.6 14.0508ZM158.857 12.9447V9.34254H157.749V8.91912C157.749 8.46401 158.118 8.09506 158.574 8.09506H158.857V6.56739L160.499 6.10479V8.09506H161.986V8.51848C161.986 8.97359 161.617 9.34254 161.161 9.34254H160.499V12.7345C160.499 13.2566 160.795 13.44 161.177 13.503C161.626 13.5774 162 13.9024 162 14.3574V14.977C160.446 14.977 158.857 14.9086 158.857 12.9447ZM98.1929 10.1124C98.2033 6.94046 100.598 5.16809 102.895 5.16809C104.171 5.16809 105.342 5.44285 106.304 6.12953L105.914 6.6631C105.654 7.02011 105.16 7.16194 104.749 6.99949C104.169 6.7702 103.622 6.7218 103.215 6.7218C101.335 6.7218 99.9169 7.92849 99.9068 10.1123C99.9169 12.2959 101.335 13.5201 103.215 13.5201C103.622 13.5201 104.169 13.4717 104.749 13.2424C105.16 13.0799 105.654 13.2046 105.914 13.5615L106.304 14.0952C105.342 14.7819 104.171 15.0566 102.895 15.0566C100.598 15.0566 98.2033 13.2842 98.1929 10.1124ZM147.619 5.21768C148.074 5.21768 148.444 5.58663 148.444 6.04174V9.81968L151.82 5.58131C151.897 5.47733 151.997 5.39282 152.112 5.3346C152.227 5.27638 152.355 5.24607 152.484 5.24611H153.984L150.166 10.0615L153.984 14.8749H152.484C152.355 14.8749 152.227 14.8446 152.112 14.7864C151.997 14.7281 151.897 14.6436 151.82 14.5397L148.444 10.3025V14.0508C148.444 14.5059 148.074 14.8749 147.619 14.8749H146.746V5.21768H147.619Z' fill='%23373F45'/%3E%3Cpath d='M0.773438 6.5752H2.68066C3.56543 6.5752 4.2041 6.7041 4.59668 6.96191C4.99219 7.21973 5.18994 7.62695 5.18994 8.18359C5.18994 8.55859 5.09326 8.87061 4.8999 9.11963C4.70654 9.36865 4.42822 9.52539 4.06494 9.58984V9.63379C4.51611 9.71875 4.84717 9.88721 5.05811 10.1392C5.27197 10.3882 5.37891 10.7266 5.37891 11.1543C5.37891 11.7314 5.17676 12.1841 4.77246 12.5122C4.37109 12.8374 3.81152 13 3.09375 13H0.773438V6.5752ZM1.82373 9.22949H2.83447C3.27393 9.22949 3.59473 9.16064 3.79688 9.02295C3.99902 8.88232 4.1001 8.64502 4.1001 8.31104C4.1001 8.00928 3.99023 7.79102 3.77051 7.65625C3.55371 7.52148 3.20801 7.4541 2.7334 7.4541H1.82373V9.22949ZM1.82373 10.082V12.1167H2.93994C3.37939 12.1167 3.71045 12.0332 3.93311 11.8662C4.15869 11.6963 4.27148 11.4297 4.27148 11.0664C4.27148 10.7324 4.15723 10.4849 3.92871 10.3237C3.7002 10.1626 3.35303 10.082 2.88721 10.082H1.82373Z' fill='%23373F45'/%3E%3Cpath d='M13.011 6.5752V10.7324C13.011 11.207 12.9084 11.623 12.7034 11.9805C12.5012 12.335 12.2068 12.6089 11.8201 12.8022C11.4363 12.9927 10.9763 13.0879 10.4402 13.0879C9.6433 13.0879 9.02368 12.877 8.5813 12.4551C8.13892 12.0332 7.91772 11.4531 7.91772 10.7148V6.5752H8.9724V10.6401C8.9724 11.1704 9.09546 11.5615 9.34155 11.8135C9.58765 12.0654 9.96557 12.1914 10.4753 12.1914C11.4656 12.1914 11.9607 11.6714 11.9607 10.6313V6.5752H13.011Z' fill='%23373F45'/%3E%3Cpath d='M15.9146 13V6.5752H16.9649V13H15.9146Z' fill='%23373F45'/%3E%3Cpath d='M19.9255 13V6.5752H20.9758V12.0991H23.696V13H19.9255Z' fill='%23373F45'/%3E%3Cpath d='M28.2828 13H27.2325V7.47607H25.3428V6.5752H30.1724V7.47607H28.2828V13Z' fill='%23373F45'/%3E%3Cpath d='M41.9472 13H40.8046L39.7148 9.16796C39.6679 9.00097 39.6093 8.76074 39.539 8.44727C39.4687 8.13086 39.4262 7.91113 39.4116 7.78809C39.3823 7.97559 39.3339 8.21875 39.2665 8.51758C39.2021 8.81641 39.1479 9.03905 39.1039 9.18554L38.0405 13H36.8979L36.0673 9.7832L35.2236 6.5752H36.2958L37.2143 10.3193C37.3578 10.9199 37.4604 11.4502 37.5219 11.9102C37.5541 11.6611 37.6025 11.3828 37.6669 11.0752C37.7314 10.7676 37.79 10.5186 37.8427 10.3281L38.8886 6.5752H39.9301L41.0024 10.3457C41.1049 10.6943 41.2133 11.2158 41.3276 11.9102C41.3715 11.4912 41.477 10.958 41.644 10.3105L42.558 6.5752H43.6215L41.9472 13Z' fill='%23373F45'/%3E%3Cpath d='M45.7957 13V6.5752H46.846V13H45.7957Z' fill='%23373F45'/%3E%3Cpath d='M52.0258 13H50.9755V7.47607H49.0859V6.5752H53.9155V7.47607H52.0258V13Z' fill='%23373F45'/%3E%3Cpath d='M61.2312 13H60.1765V10.104H57.2146V13H56.1643V6.5752H57.2146V9.20312H60.1765V6.5752H61.2312V13Z' fill='%23373F45'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;border:1px solid #dde2e7;border-radius:4px;align-items:center;width:190px;height:36px;margin:0 auto;padding:0;-webkit-text-decoration:none;text-decoration:none;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out;display:block;overflow:hidden}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit:hover,.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit:focus{opacity:1;background-color:#fff;-webkit-transform:scale(1.025)perspective(1px);-ms-transform:scale(1.025)perspective(1px);transform:scale(1.025)perspective(1px)}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit[data-variant=dark],.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit[data-variant=light]{background-color:#0000;border-color:#0000;width:166px}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit[data-variant=light]{color:#fff;background-image:url("data:image/svg+xml;charset=utf8,%3Csvg width='162' height='20' viewBox='0 0 162 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M83.0561 15.2457C86.675 15.2457 89.4722 12.5154 89.4722 9.14749C89.4722 5.99211 86.8443 4.06563 85.1038 4.06563C82.6801 4.06563 80.7373 5.76407 80.4605 8.28551C80.4092 8.75244 80.0387 9.14403 79.5686 9.14069C78.7871 9.13509 77.6507 9.12841 76.9314 9.13092C76.6217 9.13199 76.3658 8.88106 76.381 8.57196C76.4895 6.38513 77.2218 4.3404 78.618 2.76974C80.1695 1.02445 82.4289 0 85.1038 0C89.5979 0 93.8406 4.07791 93.8406 9.14749C93.8406 14.7608 89.1832 19.3113 83.1517 19.3113C78.8502 19.3113 74.5179 16.5041 73.0053 12.5795C72.9999 12.565 72.9986 12.5492 73.0015 12.534C73.0218 12.4179 73.0617 12.3118 73.1011 12.2074C73.1583 12.0555 73.2143 11.907 73.2062 11.7359L73.18 11.1892C73.174 11.0569 73.2075 10.9258 73.2764 10.8127C73.3452 10.6995 73.4463 10.6094 73.5666 10.554L73.7852 10.4523C73.9077 10.3957 74.0148 10.3105 74.0976 10.204C74.1803 10.0974 74.2363 9.97252 74.2608 9.83983C74.3341 9.43894 74.6865 9.14749 75.0979 9.14749C75.7404 9.14749 76.299 9.57412 76.5088 10.1806C77.5188 13.1 79.1245 15.2457 83.0561 15.2457Z' fill='white'/%3E%3Cpath d='M155.758 6.91365C155.028 6.91365 154.804 6.47916 154.804 5.98857C154.804 5.46997 154.986 5.06348 155.758 5.06348C156.53 5.06348 156.712 5.46997 156.712 5.98857C156.712 6.47905 156.516 6.91365 155.758 6.91365ZM142.441 12.9304V9.32833L141.415 9.32323V8.90392C141.415 8.44719 141.786 8.07758 142.244 8.07986L142.441 8.08095V6.55306L144.082 6.09057V8.08073H145.569V8.50416C145.569 8.61242 145.548 8.71961 145.506 8.81961C145.465 8.91961 145.404 9.01047 145.328 9.08699C145.251 9.16351 145.16 9.2242 145.06 9.26559C144.96 9.30698 144.853 9.32826 144.745 9.32822H144.082V12.7201C144.082 13.2423 144.378 13.4256 144.76 13.4887C145.209 13.5629 145.583 13.888 145.583 14.343V14.9626C144.029 14.9626 142.441 14.8942 142.441 12.9304Z' fill='white'/%3E%3Cpath d='M110.058 7.92554C108.417 7.88344 106.396 8.92062 106.396 11.5137C106.396 14.0646 108.417 15.0738 110.058 15.0318C111.742 15.0738 113.748 14.0646 113.748 11.5137C113.748 8.92062 111.742 7.88344 110.058 7.92554ZM110.07 13.7586C108.878 13.7586 108.032 12.8905 108.032 11.461C108.032 10.1013 108.878 9.20569 110.071 9.20569C111.263 9.20569 112.101 10.0995 112.101 11.459C112.101 12.8887 111.263 13.7586 110.07 13.7586Z' fill='white'/%3E%3Cpath d='M118.06 7.94098C119.491 7.94098 120.978 8.33337 120.978 11.1366V14.893H120.063C119.608 14.893 119.238 14.524 119.238 14.0689V10.9965C119.238 9.66506 118.747 9.16047 117.891 9.16047C117.414 9.16047 116.797 9.52486 116.502 9.81915V14.069C116.502 14.1773 116.481 14.2845 116.44 14.3845C116.398 14.4845 116.337 14.5753 116.261 14.6519C116.184 14.7284 116.093 14.7891 115.993 14.8305C115.893 14.8719 115.786 14.8931 115.678 14.8931H114.847V8.10918H115.773C115.932 8.10914 116.087 8.16315 116.212 8.26242C116.337 8.36168 116.424 8.50033 116.46 8.65577C116.881 8.19328 117.428 7.94098 118.06 7.94098ZM122.854 8.09713C123.024 8.09708 123.19 8.1496 123.329 8.2475C123.468 8.34541 123.574 8.48391 123.631 8.64405L125.133 12.8486L126.635 8.64415C126.692 8.48402 126.798 8.34551 126.937 8.2476C127.076 8.1497 127.242 8.09718 127.412 8.09724H128.598L126.152 14.3567C126.091 14.5112 125.986 14.6439 125.849 14.7374C125.711 14.831 125.549 14.881 125.383 14.8809H124.333L121.668 8.09713H122.854Z' fill='white'/%3E%3Cpath d='M135.085 14.5514C134.566 14.7616 133.513 15.0416 132.418 15.0416C130.496 15.0416 129.024 13.9345 129.024 11.4396C129.024 9.19701 130.451 7.99792 132.191 7.99792C134.338 7.99792 135.254 9.4378 135.158 11.3979C135.139 11.8029 134.786 12.0983 134.38 12.0983H130.679C130.763 13.1916 131.562 13.7662 132.615 13.7662C133.028 13.7662 133.462 13.7452 133.983 13.6481C134.535 13.545 135.085 13.9375 135.085 14.4985V14.5514ZM133.673 10.949C133.785 9.87621 133.061 9.28752 132.191 9.28752C131.321 9.28752 130.734 9.93979 130.679 10.9489L133.673 10.949Z' fill='white'/%3E%3Cpath d='M137.345 8.11122C137.497 8.11118 137.645 8.16229 137.765 8.25635C137.884 8.35041 137.969 8.48197 138.005 8.62993C138.566 8.20932 139.268 7.94303 139.759 7.94303C139.801 7.94303 140.068 7.94303 140.489 7.99913V8.7265C140.489 9.11748 140.15 9.4147 139.759 9.4147C139.31 9.4147 138.651 9.5829 138.131 9.8773V14.8951H136.462V8.11112L137.345 8.11122ZM156.6 14.0508V8.09104H155.769C155.314 8.09104 154.944 8.45999 154.944 8.9151V14.8748H155.775C156.23 14.8748 156.6 14.5058 156.6 14.0508ZM158.857 12.9447V9.34254H157.749V8.91912C157.749 8.46401 158.118 8.09506 158.574 8.09506H158.857V6.56739L160.499 6.10479V8.09506H161.986V8.51848C161.986 8.97359 161.617 9.34254 161.161 9.34254H160.499V12.7345C160.499 13.2566 160.795 13.44 161.177 13.503C161.626 13.5774 162 13.9024 162 14.3574V14.977C160.446 14.977 158.857 14.9086 158.857 12.9447ZM98.1929 10.1124C98.2033 6.94046 100.598 5.16809 102.895 5.16809C104.171 5.16809 105.342 5.44285 106.304 6.12953L105.914 6.6631C105.654 7.02011 105.16 7.16194 104.749 6.99949C104.169 6.7702 103.622 6.7218 103.215 6.7218C101.335 6.7218 99.9169 7.92849 99.9068 10.1123C99.9169 12.2959 101.335 13.5201 103.215 13.5201C103.622 13.5201 104.169 13.4717 104.749 13.2424C105.16 13.0799 105.654 13.2046 105.914 13.5615L106.304 14.0952C105.342 14.7819 104.171 15.0566 102.895 15.0566C100.598 15.0566 98.2033 13.2842 98.1929 10.1124ZM147.619 5.21768C148.074 5.21768 148.444 5.58663 148.444 6.04174V9.81968L151.82 5.58131C151.897 5.47733 151.997 5.39282 152.112 5.3346C152.227 5.27638 152.355 5.24607 152.484 5.24611H153.984L150.166 10.0615L153.984 14.8749H152.484C152.355 14.8749 152.227 14.8446 152.112 14.7864C151.997 14.7281 151.897 14.6436 151.82 14.5397L148.444 10.3025V14.0508C148.444 14.5059 148.074 14.8749 147.619 14.8749H146.746V5.21768H147.619Z' fill='white'/%3E%3Cpath d='M0.773438 6.5752H2.68066C3.56543 6.5752 4.2041 6.7041 4.59668 6.96191C4.99219 7.21973 5.18994 7.62695 5.18994 8.18359C5.18994 8.55859 5.09326 8.87061 4.8999 9.11963C4.70654 9.36865 4.42822 9.52539 4.06494 9.58984V9.63379C4.51611 9.71875 4.84717 9.88721 5.05811 10.1392C5.27197 10.3882 5.37891 10.7266 5.37891 11.1543C5.37891 11.7314 5.17676 12.1841 4.77246 12.5122C4.37109 12.8374 3.81152 13 3.09375 13H0.773438V6.5752ZM1.82373 9.22949H2.83447C3.27393 9.22949 3.59473 9.16064 3.79688 9.02295C3.99902 8.88232 4.1001 8.64502 4.1001 8.31104C4.1001 8.00928 3.99023 7.79102 3.77051 7.65625C3.55371 7.52148 3.20801 7.4541 2.7334 7.4541H1.82373V9.22949ZM1.82373 10.082V12.1167H2.93994C3.37939 12.1167 3.71045 12.0332 3.93311 11.8662C4.15869 11.6963 4.27148 11.4297 4.27148 11.0664C4.27148 10.7324 4.15723 10.4849 3.92871 10.3237C3.7002 10.1626 3.35303 10.082 2.88721 10.082H1.82373Z' fill='white'/%3E%3Cpath d='M13.011 6.5752V10.7324C13.011 11.207 12.9084 11.623 12.7034 11.9805C12.5012 12.335 12.2068 12.6089 11.8201 12.8022C11.4363 12.9927 10.9763 13.0879 10.4402 13.0879C9.6433 13.0879 9.02368 12.877 8.5813 12.4551C8.13892 12.0332 7.91772 11.4531 7.91772 10.7148V6.5752H8.9724V10.6401C8.9724 11.1704 9.09546 11.5615 9.34155 11.8135C9.58765 12.0654 9.96557 12.1914 10.4753 12.1914C11.4656 12.1914 11.9607 11.6714 11.9607 10.6313V6.5752H13.011Z' fill='white'/%3E%3Cpath d='M15.9146 13V6.5752H16.9649V13H15.9146Z' fill='white'/%3E%3Cpath d='M19.9255 13V6.5752H20.9758V12.0991H23.696V13H19.9255Z' fill='white'/%3E%3Cpath d='M28.2828 13H27.2325V7.47607H25.3428V6.5752H30.1724V7.47607H28.2828V13Z' fill='white'/%3E%3Cpath d='M41.9472 13H40.8046L39.7148 9.16796C39.6679 9.00097 39.6093 8.76074 39.539 8.44727C39.4687 8.13086 39.4262 7.91113 39.4116 7.78809C39.3823 7.97559 39.3339 8.21875 39.2665 8.51758C39.2021 8.81641 39.1479 9.03905 39.1039 9.18554L38.0405 13H36.8979L36.0673 9.7832L35.2236 6.5752H36.2958L37.2143 10.3193C37.3578 10.9199 37.4604 11.4502 37.5219 11.9102C37.5541 11.6611 37.6025 11.3828 37.6669 11.0752C37.7314 10.7676 37.79 10.5186 37.8427 10.3281L38.8886 6.5752H39.9301L41.0024 10.3457C41.1049 10.6943 41.2133 11.2158 41.3276 11.9102C41.3715 11.4912 41.477 10.958 41.644 10.3105L42.558 6.5752H43.6215L41.9472 13Z' fill='white'/%3E%3Cpath d='M45.7957 13V6.5752H46.846V13H45.7957Z' fill='white'/%3E%3Cpath d='M52.0258 13H50.9755V7.47607H49.0859V6.5752H53.9155V7.47607H52.0258V13Z' fill='white'/%3E%3Cpath d='M61.2312 13H60.1765V10.104H57.2146V13H56.1643V6.5752H57.2146V9.20312H60.1765V6.5752H61.2312V13Z' fill='white'/%3E%3C/svg%3E")}@-webkit-keyframes formkit-bouncedelay-formkit-form-data-uid-8d653b97b6-{0%,80%,to{-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0)}40%{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}@keyframes formkit-bouncedelay-formkit-form-data-uid-8d653b97b6-{0%,80%,to{-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0)}40%{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}.formkit-form[data-uid="8d653b97b6"] blockquote{border-left:5px solid #e1e1e1;margin:0 0 20px;padding:10px 20px}.formkit-form[data-uid="8d653b97b6"] .seva-custom-content{color:#fff;mix-blend-mode:difference;padding:15px;font-size:16px}.formkit-form[data-uid="8d653b97b6"]{max-width:700px}.formkit-form[data-uid="8d653b97b6"] [data-style=clean]{width:100%}.formkit-form[data-uid="8d653b97b6"] .formkit-fields{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;margin:0 auto;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.formkit-form[data-uid="8d653b97b6"] .formkit-field,.formkit-form[data-uid="8d653b97b6"] .formkit-submit{-webkit-flex:1 0 100%;-ms-flex:1 0 100%;flex:1 0 100%;margin:0 0 15px}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit-container{margin:0}.formkit-form[data-uid="8d653b97b6"] .formkit-submit{position:static}.formkit-form[data-uid="8d653b97b6"][min-width~="700"] [data-style=clean],.formkit-form[data-uid="8d653b97b6"][min-width~="800"] [data-style=clean]{padding:10px}.formkit-form[data-uid="8d653b97b6"][min-width~="700"] .formkit-fields[data-stacked=false],.formkit-form[data-uid="8d653b97b6"][min-width~="800"] .formkit-fields[data-stacked=false]{margin-left:-5px;margin-right:-5px}.formkit-form[data-uid="8d653b97b6"][min-width~="700"] .formkit-fields[data-stacked=false] .formkit-field,.formkit-form[data-uid="8d653b97b6"][min-width~="800"] .formkit-fields[data-stacked=false] .formkit-field,.formkit-form[data-uid="8d653b97b6"][min-width~="700"] .formkit-fields[data-stacked=false] .formkit-submit,.formkit-form[data-uid="8d653b97b6"][min-width~="800"] .formkit-fields[data-stacked=false] .formkit-submit{margin:0 5px 15px}.formkit-form[data-uid="8d653b97b6"][min-width~="700"] .formkit-fields[data-stacked=false] .formkit-field,.formkit-form[data-uid="8d653b97b6"][min-width~="800"] .formkit-fields[data-stacked=false] .formkit-field{-webkit-flex:100 auto;-ms-flex:100 auto;flex:100 auto}.formkit-form[data-uid="8d653b97b6"][min-width~="700"] .formkit-fields[data-stacked=false] .formkit-submit,.formkit-form[data-uid="8d653b97b6"][min-width~="800"] .formkit-fields[data-stacked=false] .formkit-submit{-webkit-flex:auto;-ms-flex:auto;flex:auto}</style></form>
</div><div><div class="quoteContainer_Karu"><figure class="tweetQuote_h8Rz"><blockquote><a href="https://twitter.com/Baconbrix/status/1622655092657688576" target="_blank" rel="noreferrer nofollow">My favorite resource for keeping up with the React community!</a></blockquote><figcaption><a href="https://twitter.com/Baconbrix" target="_blank" rel="noreferrer nofollow"><div class="avatar"><img alt="Evan Bacon" class="avatar__photo shadow--md avatarImg_b51M" src="https://unavatar.io/twitter/Baconbrix?fallback=https://github.com/EvanBacon.png"><div class="avatar__intro"><strong class="avatar__name"><cite>Evan Bacon</cite></strong><small class="avatar__subtitle" itemprop="description">Engineering Manager - Expo</small></div></div></a></figcaption></figure></div></div></div>
<div role="separator" style="text-align:center;margin:10px 0"><img class="separator" src="https://thisweekinreact.com/emails/separators/christmas.png" width="600" height="64" style="width:100%;max-width:600px;margin:0 auto;object-fit:contain"></div>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="sponsor1">💸 Sponsor<a href="https://thisweekinreact.com/newsletter/275#sponsor1" class="hash-link" aria-label="Direct link to 💸 Sponsor" title="Direct link to 💸 Sponsor">​</a></h2>
<p><a href="https://www.meticulous.ai/?utm_source=thisweekinreact&amp;utm_medium=newsletter&amp;utm_campaign=11march&amp;utm_content=1st" target="_blank" rel="noopener noreferrer"><img decoding="async" loading="lazy" src="https://thisweekinreact.com/emails/issues/270/meticulous.jpg" alt="Still writing tests manually?" class="img_SS3x"></a></p>
<p><strong><a href="https://www.meticulous.ai/?utm_source=thisweekinreact&amp;utm_medium=newsletter&amp;utm_campaign=11march&amp;utm_content=1st" target="_blank" rel="noopener noreferrer">Still writing tests manually?</a></strong></p>
<p>Notion, Dropbox and LaunchDarkly&nbsp;have found a new testing paradigm - and they can't imagine working without it.&nbsp;Built by <a href="https://www.meticulous.ai/?utm_source=thisweekinreact&amp;utm_medium=newsletter&amp;utm_campaign=11march&amp;utm_content=2nd" target="_blank" rel="noopener noreferrer">ex-Palantir engineers</a>, Meticulous autonomously creates a continuously evolving suite of E2E UI tests that delivers <a href="https://www.meticulous.ai/?utm_source=thisweekinreact&amp;utm_medium=newsletter&amp;utm_campaign=11march&amp;utm_content=2nd" target="_blank" rel="noopener noreferrer">near-exhaustive coverage</a> with <em>zero developer effort</em> - impossible to deliver by any other means.&nbsp;</p>
<p>It works like magic in the background:</p>
<ul>
<li>Near-exhaustive coverage on every test run</li>
<li>No test creation</li>
<li><strong>No maintenance (seriously)</strong></li>
<li>Zero flakes (built on a deterministic browser)</li>
</ul>
<p><strong>🤨</strong> Curious? <a href="https://www.meticulous.ai/?utm_source=thisweekinreact&amp;utm_medium=newsletter&amp;utm_campaign=11march&amp;utm_content=2nd" target="_blank" rel="noopener noreferrer">Book in a time to learn more</a></p>
<div role="separator" style="text-align:center;margin:10px 0"><img class="separator" src="https://thisweekinreact.com/emails/separators/christmas.png" width="600" height="64" style="width:100%;max-width:600px;margin:0 auto;object-fit:contain"></div>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="react">⚛️ React<a href="https://thisweekinreact.com/newsletter/275#react" class="hash-link" aria-label="Direct link to ⚛️ React" title="Direct link to ⚛️ React">​</a></h2>
<p><a href="https://nextjs.org/blog/nextjs-across-platforms" target="_blank" rel="noopener noreferrer"><img decoding="async" loading="lazy" src="https://thisweekinreact.com/emails/issues/275/nextjs.jpg" alt="Next.js Across Platforms: Adapters, OpenNext, and Our Commitments" class="img_SS3x"></a></p>
<p><strong><a href="https://nextjs.org/blog/nextjs-across-platforms" target="_blank" rel="noopener noreferrer">Next.js Across Platforms: Adapters, OpenNext, and Our Commitments</a></strong></p>
<p>Next.js 16.2 now ships with a stable, typed, versioned Adapter API. It was built in collaboration with many partners: OpenNext, Netlify, Cloudflare, AWS Amplify, and Google Cloud. This helps ensure Next.js works well on every platform across all its features. There’s now a public test suite to verify your adapter, and Vercel also relies on it.</p>
<p>The <a href="https://nextjs.org/ecosystem-working-group" target="_blank" rel="noopener noreferrer">Next.js Ecosystem Working Group</a> explains Vercel’s commitment. Partners will not participate in Next.js design decisions and roadmap, but can still impact it through feedback. They will be kept in the loop early, have time to adapt, and get direct support to fix adapter breakage.</p>
<div role="separator" style="text-align:center;margin:10px 0"><img class="separator" src="https://thisweekinreact.com/emails/separators/christmas.png" width="600" height="64" style="width:100%;max-width:600px;margin:0 auto;object-fit:contain"></div>
<p><a href="https://youtu.be/8XGcc-FRPuo?si=VnH91DpiPI35PFB4&amp;t=1167" target="_blank" rel="noopener noreferrer"><img decoding="async" loading="lazy" src="https://thisweekinreact.com/emails/issues/275/tanstack.jpg" alt="TanStart Start RSC preview" class="img_SS3x"></a></p>
<p>🎥 <strong><a href="https://youtu.be/8XGcc-FRPuo?si=VnH91DpiPI35PFB4&amp;t=1167" target="_blank" rel="noopener noreferrer">TanStart Start RSC preview</a></strong></p>
<p>Tanner Linsley gave a talk at React Paris last week. The 2nd part unveils for the first time what React Server Components will look like in TanStack Start, to be released very soon.</p>
<p>My highlights:</p>
<ul>
<li><strong>Primitives</strong>: You have full flexibility to decide how to compose these RSC APIs, and can adopt them incrementally. RSC flight payloads are just streams of text; you can sync/cache/persist/manipulate these on your own terms.</li>
<li><strong>Composite Components</strong>: You don’t need <code>’use client’</code> directives, although they are supported. This new concept creates an explicit boundary between the server and the client. I assume it should be possible to co-locate client/server components in the same file.</li>
<li><strong>No Server Actions</strong>: A design decision for security reasons, but you can use server functions with validation.</li>
</ul>
<p>What strikes me is just how different this is from Next.js. It feels more like a library than a framework, and it seems more in sync with the philosophy that initially attracted me to React: you make your own decisions, even though sometimes more flexibility means more glue code and ways to shoot yourself in the foot. In any case, I agree with Tanner: we deserve another React meta-framework—one that’s less opinionated and innovates in a different direction.</p>
<div role="separator" style="text-align:center;margin:10px 0"><img class="separator" src="https://thisweekinreact.com/emails/separators/christmas.png" width="600" height="64" style="width:100%;max-width:600px;margin:0 auto;object-fit:contain"></div>
<ul>
<li>💸 <a href="https://crowdin.info/AII2d2o" target="_blank" rel="noopener noreferrer">Lingui - Lightweight, developer-first i18n tooling for modern product teams</a></li>
<li>👀 <a href="https://github.com/facebook/react/pull/36173" target="_blank" rel="noopener noreferrer">React Compiler PR - WIP port of React Compiler to Rust</a> - As previously announced, the React Compiler is being ported to Rust through AI. The algorithm is the same, based on a Rust-based Babel AST, already passing 100% of the Babel integration fixture tests. The goal is to integrate nicely with Babel, SWC, and OXC.</li>
<li>👀 <a href="https://github.com/facebook/react/pull/35816" target="_blank" rel="noopener noreferrer">React PR - Enable Trusted Types integration</a> - The browser Trusted Types API is now Baseline Newly Available, and React now integrates with it to prevent XSS and force you to sanitize unsafe inputs. For example, with <code>dangerouslySetInnerHTML={{__html: policy.createHTML(text)}}</code>.</li>
<li>👀 <a href="https://github.com/vercel/next.js/pull/92012" target="_blank" rel="noopener noreferrer">Next.js PR - <code>experimental.useOffline with retries + hook to show offline indicator</code></a></li>
<li>👀 <a href="https://github.com/TanStack/query/pull/10359" target="_blank" rel="noopener noreferrer">TanStack Query ESLint PR - Add <code>prefer-query-options</code> rule</a></li>
<li>🗓️ <a href="https://www.dotjs.io/?utm_source=twir&amp;utm_medium=newsletter&amp;utm_campaign=EB" target="_blank" rel="noopener noreferrer">dotJS 2026</a>&nbsp;-&nbsp;&nbsp;🇫🇷 Paris - 18 September - Early bird tickets are available until April 14th 6 PM CET, save 100€ on the next price. dotJS comes with dotAI on September&nbsp;17, book now your early bird ticket for each conference, or a combo to attend both.</li>
<li>📜 <a href="https://tanstack.com/blog/tanstack-router-signal-graph" target="_blank" rel="noopener noreferrer">TanStack Router's New Reactive Core: A Signal Graph</a> - They refactored the router state store, splitting it into many small stores using signals, leading to more efficient fine-grained subscriptions. The original <code>router.state</code> is still a public API, but now derived from the smaller store.</li>
<li>📜 <a href="https://tigerabrodi.blog/when-do-you-really-need-starttransition" target="_blank" rel="noopener noreferrer">When Do You Really Need startTransition?</a> - When an update triggers expensive rendering.</li>
<li>📜 <a href="https://julesblom.com/writing/colocated-svg-defs" target="_blank" rel="noopener noreferrer">Hoistable SVG Defs in React</a> - How to colocate SVG <code>&lt;defs&gt;</code> with components instead of centralizing them.</li>
<li>📜 <a href="https://handlewithcare.dev/blog/making_react_prosemirror_really_really_fast/" target="_blank" rel="noopener noreferrer">Making React ProseMirror really, really fast</a></li>
<li>📜 <a href="https://neciudan.dev/lets-build-dynamic-shimmer-skeletons" target="_blank" rel="noopener noreferrer">Build your own shimmer skeleton that never goes out of sync</a></li>
<li>📜 <a href="https://inside-react.vercel.app/blog/how-does-react-fiber-render-your-ui" target="_blank" rel="noopener noreferrer">How Does React Fiber Render Your UI</a></li>
<li>💸 <a href="https://go.posthog.com/twir-apr1" target="_blank" rel="noopener noreferrer">Product for Engineers - WTF does a product manager do? (and why engineers should care)</a></li>
<li>📦 <a href="https://laravel.com/blog/inertia-v3-whats-changed-since-the-first-beta" target="_blank" rel="noopener noreferrer">Inertia 3.0 - Build React/modern SPAs with server-based routers</a> - This solution to integrate React and other frontend frameworks with traditional backends (optimized for Laravel) now comes with a Vite 8 plugin, SSR in dev, optimistic updates, and more.</li>
<li>📦 <a href="https://tanstack.com/blog/tanstack-db-0.6-app-ready-with-persistence-and-includes" target="_blank" rel="noopener noreferrer">TanStack DB 0.6 - Persistence, Offline Support, and Hierarchical Data</a></li>
<li>📦 <a href="https://astro.build/blog/astro-610/" target="_blank" rel="noopener noreferrer">Astro 6.1 - Improved image optimization, markdown config, expose i18n fallback routes</a></li>
</ul>
<div class="card subscribeFormEmbed_aAcT"><p><strong>Don't miss the next email!</strong></p><div class="">
<script src="https://f.convertkit.com/ckjs/ck.5.js"></script>
      <form action="https://app.convertkit.com/forms/3472133/subscriptions" class="seva-form formkit-form" method="post" data-sv-form="3472133" data-uid="8d653b97b6" data-format="inline" data-version="5" data-options="{&quot;settings&quot;:{&quot;after_subscribe&quot;:{&quot;action&quot;:&quot;redirect&quot;,&quot;success_message&quot;:&quot;Success! Now check your email to confirm your subscription.&quot;,&quot;redirect_url&quot;:&quot;https://thisweekinreact.com/workflow/confirm-your-email&quot;},&quot;analytics&quot;:{&quot;google&quot;:null,&quot;fathom&quot;:null,&quot;facebook&quot;:null,&quot;segment&quot;:null,&quot;pinterest&quot;:null,&quot;sparkloop&quot;:null,&quot;googletagmanager&quot;:null},&quot;modal&quot;:{&quot;trigger&quot;:&quot;timer&quot;,&quot;scroll_percentage&quot;:null,&quot;timer&quot;:5,&quot;devices&quot;:&quot;all&quot;,&quot;show_once_every&quot;:15},&quot;powered_by&quot;:{&quot;show&quot;:false,&quot;url&quot;:&quot;https://convertkit.com/features/forms?lmref=d0748g&amp;utm_campaign=poweredby&amp;utm_content=form&amp;utm_medium=referral&amp;utm_source=dynamic&quot;},&quot;recaptcha&quot;:{&quot;enabled&quot;:false},&quot;return_visitor&quot;:{&quot;action&quot;:&quot;show&quot;,&quot;custom_content&quot;:&quot;&quot;},&quot;slide_in&quot;:{&quot;display_in&quot;:&quot;bottom_right&quot;,&quot;trigger&quot;:&quot;timer&quot;,&quot;scroll_percentage&quot;:null,&quot;timer&quot;:5,&quot;devices&quot;:&quot;all&quot;,&quot;show_once_every&quot;:15},&quot;sticky_bar&quot;:{&quot;display_in&quot;:&quot;top&quot;,&quot;trigger&quot;:&quot;timer&quot;,&quot;scroll_percentage&quot;:null,&quot;timer&quot;:5,&quot;devices&quot;:&quot;all&quot;,&quot;show_once_every&quot;:15}},&quot;version&quot;:&quot;5&quot;}" min-width="400 500 600 700 800"><div data-style="clean"><ul class="formkit-alert formkit-alert-error" data-element="errors" data-group="alert"></ul><div data-element="fields" data-stacked="false" class="seva-fields formkit-fields"><div class="formkit-field"><input class="formkit-input" name="email_address" aria-label="Email Address" placeholder="Email Address" required="" type="email" style="color: rgb(0, 0, 0); border-color: rgb(227, 227, 227); border-radius: 4px; font-weight: 700;"></div><button data-element="submit" class="formkit-submit formkit-submit" style="color: rgb(255, 255, 255); background-color: rgb(0, 54, 92); border-radius: 4px; font-weight: 700;"><div class="formkit-spinner"><div></div><div></div><div></div></div><span class="">Subscribe now!</span></button></div></div><style>.formkit-form[data-uid="8d653b97b6"] *{box-sizing:border-box}.formkit-form[data-uid="8d653b97b6"]{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.formkit-form[data-uid="8d653b97b6"] legend{font-size:inherit;border:none;margin-bottom:10px;padding:0;display:table;position:relative}.formkit-form[data-uid="8d653b97b6"] fieldset{border:0;min-width:0;margin:0;padding:.01em 0 0}.formkit-form[data-uid="8d653b97b6"] body:not(:-moz-handler-blocked) fieldset{display:table-cell}.formkit-form[data-uid="8d653b97b6"] h1,.formkit-form[data-uid="8d653b97b6"] h2,.formkit-form[data-uid="8d653b97b6"] h3,.formkit-form[data-uid="8d653b97b6"] h4,.formkit-form[data-uid="8d653b97b6"] h5,.formkit-form[data-uid="8d653b97b6"] h6{color:inherit;font-size:inherit;font-weight:inherit}.formkit-form[data-uid="8d653b97b6"] h2{margin:1em 0;font-size:1.5em}.formkit-form[data-uid="8d653b97b6"] h3{margin:1em 0;font-size:1.17em}.formkit-form[data-uid="8d653b97b6"] p{color:inherit;font-size:inherit;font-weight:inherit}.formkit-form[data-uid="8d653b97b6"] ol:not([template-default]),.formkit-form[data-uid="8d653b97b6"] ul:not([template-default]),.formkit-form[data-uid="8d653b97b6"] blockquote:not([template-default]){text-align:left}.formkit-form[data-uid="8d653b97b6"] p:not([template-default]),.formkit-form[data-uid="8d653b97b6"] hr:not([template-default]),.formkit-form[data-uid="8d653b97b6"] blockquote:not([template-default]),.formkit-form[data-uid="8d653b97b6"] ol:not([template-default]),.formkit-form[data-uid="8d653b97b6"] ul:not([template-default]){color:inherit;font-style:initial}.formkit-form[data-uid="8d653b97b6"] .ordered-list,.formkit-form[data-uid="8d653b97b6"] .unordered-list{padding-left:1em;list-style-position:outside!important}.formkit-form[data-uid="8d653b97b6"] .list-item{padding-left:0}.formkit-form[data-uid="8d653b97b6"][data-format=modal],.formkit-form[data-uid="8d653b97b6"][data-format=slide\ in],.formkit-form[data-uid="8d653b97b6"][data-format=sticky\ bar]{display:none}.formkit-sticky-bar .formkit-form[data-uid="8d653b97b6"][data-format=sticky\ bar]{display:block}.formkit-form[data-uid="8d653b97b6"] .formkit-input,.formkit-form[data-uid="8d653b97b6"] .formkit-select,.formkit-form[data-uid="8d653b97b6"] .formkit-checkboxes{width:100%}.formkit-form[data-uid="8d653b97b6"] .formkit-button,.formkit-form[data-uid="8d653b97b6"] .formkit-submit{color:#fff;cursor:pointer;text-align:center;cursor:pointer;vertical-align:middle;border:0;border-radius:5px;margin-bottom:15px;padding:0;font-size:15px;font-weight:500;display:inline-block;position:relative;overflow:hidden}.formkit-form[data-uid="8d653b97b6"] .formkit-button:hover,.formkit-form[data-uid="8d653b97b6"] .formkit-submit:hover,.formkit-form[data-uid="8d653b97b6"] .formkit-button:focus,.formkit-form[data-uid="8d653b97b6"] .formkit-submit:focus{outline:none}.formkit-form[data-uid="8d653b97b6"] .formkit-button:hover>span,.formkit-form[data-uid="8d653b97b6"] .formkit-submit:hover>span,.formkit-form[data-uid="8d653b97b6"] .formkit-button:focus>span,.formkit-form[data-uid="8d653b97b6"] .formkit-submit:focus>span{background-color:#0000001a}.formkit-form[data-uid="8d653b97b6"] .formkit-button>span,.formkit-form[data-uid="8d653b97b6"] .formkit-submit>span{padding:12px 24px;-webkit-transition:all .3s ease-in-out;transition:all .3s ease-in-out;display:block}.formkit-form[data-uid="8d653b97b6"] .formkit-input{background:#fff;border:1px solid #e3e3e3;-webkit-flex:1 0 auto;-ms-flex:1 0 auto;flex:1 0 auto;margin:0;padding:12px;font-size:15px;line-height:1.4;-webkit-transition:border-color .3s ease-out;transition:border-color .3s ease-out}.formkit-form[data-uid="8d653b97b6"] .formkit-input:focus{border-color:#1677be;outline:none;-webkit-transition:border-color .3s;transition:border-color .3s}.formkit-form[data-uid="8d653b97b6"] .formkit-input::-webkit-input-placeholder{color:inherit;opacity:.8}.formkit-form[data-uid="8d653b97b6"] .formkit-input::placeholder{color:inherit;opacity:.8}.formkit-form[data-uid="8d653b97b6"] .formkit-input:-ms-placeholder-shown{color:inherit;opacity:.8}.formkit-form[data-uid="8d653b97b6"] .formkit-input::placeholder{color:inherit;opacity:.8}.formkit-form[data-uid="8d653b97b6"] [data-group=dropdown]{width:100%;display:inline-block;position:relative}.formkit-form[data-uid="8d653b97b6"] [data-group=dropdown]:before{content:"";pointer-events:none;z-index:999;border:6px solid #0000;border-top-color:#4f4f4f;border-bottom-width:0;width:0;height:0;position:absolute;top:calc(50% - 2.5px);right:10px}.formkit-form[data-uid="8d653b97b6"] [data-group=dropdown] select{cursor:pointer;color:#333;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#fff;border:1px solid #e3e3e3;width:100%;height:auto;margin-bottom:0;padding:12px 25px 12px 12px;font-size:15px;line-height:1.4}.formkit-form[data-uid="8d653b97b6"] [data-group=dropdown] select:focus{outline:none}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes]{text-align:left;margin:0}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox]{margin-bottom:10px}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] *{cursor:pointer}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox]:last-of-type{margin-bottom:0}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] input[type=checkbox]{display:none}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] input[type=checkbox]+label:after{content:none}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] input[type=checkbox]:checked+label:after{content:"";border-color:#fff}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] input[type=checkbox]:checked+label:before{background:#10bf7a;border-color:#10bf7a}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] label{padding-left:28px;display:inline-block;position:relative}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] label:before,.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] label:after{content:"";display:inline-block;position:absolute}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] label:before{background:#fff;border:1px solid #e3e3e3;width:16px;height:16px;top:3px;left:0}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] label:after{border-bottom:2px solid #4d4d4d;border-left:2px solid #4d4d4d;width:8px;height:4px;top:8px;left:4px;-webkit-transform:rotate(-45deg);-ms-transform:rotate(-45deg);transform:rotate(-45deg)}.formkit-form[data-uid="8d653b97b6"] .formkit-alert{text-align:center;background:#f9fafb;border:1px solid #e3e3e3;border-radius:5px;-webkit-flex:1 0 auto;-ms-flex:1 0 auto;flex:1 0 auto;width:100%;margin:25px auto;padding:12px;list-style:none}.formkit-form[data-uid="8d653b97b6"] .formkit-alert:empty{display:none}.formkit-form[data-uid="8d653b97b6"] .formkit-alert-success{color:#0c905c;background:#d3fbeb;border-color:#10bf7a}.formkit-form[data-uid="8d653b97b6"] .formkit-alert-error{color:#ea4110;background:#fde8e2;border-color:#f2643b}.formkit-form[data-uid="8d653b97b6"] .formkit-spinner{text-align:center;width:0;height:0;margin:0 auto;-webkit-transition:all .3s ease-in-out;transition:all .3s ease-in-out;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;position:absolute;top:0;left:0;right:0;overflow:hidden}.formkit-form[data-uid="8d653b97b6"] .formkit-spinner>div{opacity:.3;background-color:#fff;border-radius:100%;width:12px;height:12px;margin:auto;-webkit-animation:1.4s ease-in-out infinite both formkit-bouncedelay-formkit-form-data-uid-8d653b97b6-;animation:1.4s ease-in-out infinite both formkit-bouncedelay-formkit-form-data-uid-8d653b97b6-;display:inline-block}.formkit-form[data-uid="8d653b97b6"] .formkit-spinner>div:first-child{-webkit-animation-delay:-.32s;animation-delay:-.32s}.formkit-form[data-uid="8d653b97b6"] .formkit-spinner>div:nth-child(2){-webkit-animation-delay:-.16s;animation-delay:-.16s}.formkit-form[data-uid="8d653b97b6"] .formkit-submit[data-active] .formkit-spinner{opacity:1;width:50px;height:100%}.formkit-form[data-uid="8d653b97b6"] .formkit-submit[data-active] .formkit-spinner~span{opacity:0}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by[data-active=false]{opacity:.35}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit-container{z-index:5;width:100%;margin:10px 0;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;position:relative}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit-container[data-active=false]{opacity:.35}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit{color:#373f45;cursor:pointer;opacity:.95;text-indent:100%;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-color:#fff;background-image:url("data:image/svg+xml;charset=utf8,%3Csvg width='162' height='20' viewBox='0 0 162 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M83.0561 15.2457C86.675 15.2457 89.4722 12.5154 89.4722 9.14749C89.4722 5.99211 86.8443 4.06563 85.1038 4.06563C82.6801 4.06563 80.7373 5.76407 80.4605 8.28551C80.4092 8.75244 80.0387 9.14403 79.5686 9.14069C78.7871 9.13509 77.6507 9.12841 76.9314 9.13092C76.6217 9.13199 76.3658 8.88106 76.381 8.57196C76.4895 6.38513 77.2218 4.3404 78.618 2.76974C80.1695 1.02445 82.4289 0 85.1038 0C89.5979 0 93.8406 4.07791 93.8406 9.14749C93.8406 14.7608 89.1832 19.3113 83.1517 19.3113C78.8502 19.3113 74.5179 16.5041 73.0053 12.5795C72.9999 12.565 72.9986 12.5492 73.0015 12.534C73.0218 12.4179 73.0617 12.3118 73.1011 12.2074C73.1583 12.0555 73.2143 11.907 73.2062 11.7359L73.18 11.1892C73.174 11.0569 73.2075 10.9258 73.2764 10.8127C73.3452 10.6995 73.4463 10.6094 73.5666 10.554L73.7852 10.4523C73.9077 10.3957 74.0148 10.3105 74.0976 10.204C74.1803 10.0974 74.2363 9.97252 74.2608 9.83983C74.3341 9.43894 74.6865 9.14749 75.0979 9.14749C75.7404 9.14749 76.299 9.57412 76.5088 10.1806C77.5188 13.1 79.1245 15.2457 83.0561 15.2457Z' fill='%23373F45'/%3E%3Cpath d='M155.758 6.91365C155.028 6.91365 154.804 6.47916 154.804 5.98857C154.804 5.46997 154.986 5.06348 155.758 5.06348C156.53 5.06348 156.712 5.46997 156.712 5.98857C156.712 6.47905 156.516 6.91365 155.758 6.91365ZM142.441 12.9304V9.32833L141.415 9.32323V8.90392C141.415 8.44719 141.786 8.07758 142.244 8.07986L142.441 8.08095V6.55306L144.082 6.09057V8.08073H145.569V8.50416C145.569 8.61242 145.548 8.71961 145.506 8.81961C145.465 8.91961 145.404 9.01047 145.328 9.08699C145.251 9.16351 145.16 9.2242 145.06 9.26559C144.96 9.30698 144.853 9.32826 144.745 9.32822H144.082V12.7201C144.082 13.2423 144.378 13.4256 144.76 13.4887C145.209 13.5629 145.583 13.888 145.583 14.343V14.9626C144.029 14.9626 142.441 14.8942 142.441 12.9304Z' fill='%23373F45'/%3E%3Cpath d='M110.058 7.92554C108.417 7.88344 106.396 8.92062 106.396 11.5137C106.396 14.0646 108.417 15.0738 110.058 15.0318C111.742 15.0738 113.748 14.0646 113.748 11.5137C113.748 8.92062 111.742 7.88344 110.058 7.92554ZM110.07 13.7586C108.878 13.7586 108.032 12.8905 108.032 11.461C108.032 10.1013 108.878 9.20569 110.071 9.20569C111.263 9.20569 112.101 10.0995 112.101 11.459C112.101 12.8887 111.263 13.7586 110.07 13.7586Z' fill='%23373F45'/%3E%3Cpath d='M118.06 7.94098C119.491 7.94098 120.978 8.33337 120.978 11.1366V14.893H120.063C119.608 14.893 119.238 14.524 119.238 14.0689V10.9965C119.238 9.66506 118.747 9.16047 117.891 9.16047C117.414 9.16047 116.797 9.52486 116.502 9.81915V14.069C116.502 14.1773 116.481 14.2845 116.44 14.3845C116.398 14.4845 116.337 14.5753 116.261 14.6519C116.184 14.7284 116.093 14.7891 115.993 14.8305C115.893 14.8719 115.786 14.8931 115.678 14.8931H114.847V8.10918H115.773C115.932 8.10914 116.087 8.16315 116.212 8.26242C116.337 8.36168 116.424 8.50033 116.46 8.65577C116.881 8.19328 117.428 7.94098 118.06 7.94098ZM122.854 8.09713C123.024 8.09708 123.19 8.1496 123.329 8.2475C123.468 8.34541 123.574 8.48391 123.631 8.64405L125.133 12.8486L126.635 8.64415C126.692 8.48402 126.798 8.34551 126.937 8.2476C127.076 8.1497 127.242 8.09718 127.412 8.09724H128.598L126.152 14.3567C126.091 14.5112 125.986 14.6439 125.849 14.7374C125.711 14.831 125.549 14.881 125.383 14.8809H124.333L121.668 8.09713H122.854Z' fill='%23373F45'/%3E%3Cpath d='M135.085 14.5514C134.566 14.7616 133.513 15.0416 132.418 15.0416C130.496 15.0416 129.024 13.9345 129.024 11.4396C129.024 9.19701 130.451 7.99792 132.191 7.99792C134.338 7.99792 135.254 9.4378 135.158 11.3979C135.139 11.8029 134.786 12.0983 134.38 12.0983H130.679C130.763 13.1916 131.562 13.7662 132.615 13.7662C133.028 13.7662 133.462 13.7452 133.983 13.6481C134.535 13.545 135.085 13.9375 135.085 14.4985V14.5514ZM133.673 10.949C133.785 9.87621 133.061 9.28752 132.191 9.28752C131.321 9.28752 130.734 9.93979 130.679 10.9489L133.673 10.949Z' fill='%23373F45'/%3E%3Cpath d='M137.345 8.11122C137.497 8.11118 137.645 8.16229 137.765 8.25635C137.884 8.35041 137.969 8.48197 138.005 8.62993C138.566 8.20932 139.268 7.94303 139.759 7.94303C139.801 7.94303 140.068 7.94303 140.489 7.99913V8.7265C140.489 9.11748 140.15 9.4147 139.759 9.4147C139.31 9.4147 138.651 9.5829 138.131 9.8773V14.8951H136.462V8.11112L137.345 8.11122ZM156.6 14.0508V8.09104H155.769C155.314 8.09104 154.944 8.45999 154.944 8.9151V14.8748H155.775C156.23 14.8748 156.6 14.5058 156.6 14.0508ZM158.857 12.9447V9.34254H157.749V8.91912C157.749 8.46401 158.118 8.09506 158.574 8.09506H158.857V6.56739L160.499 6.10479V8.09506H161.986V8.51848C161.986 8.97359 161.617 9.34254 161.161 9.34254H160.499V12.7345C160.499 13.2566 160.795 13.44 161.177 13.503C161.626 13.5774 162 13.9024 162 14.3574V14.977C160.446 14.977 158.857 14.9086 158.857 12.9447ZM98.1929 10.1124C98.2033 6.94046 100.598 5.16809 102.895 5.16809C104.171 5.16809 105.342 5.44285 106.304 6.12953L105.914 6.6631C105.654 7.02011 105.16 7.16194 104.749 6.99949C104.169 6.7702 103.622 6.7218 103.215 6.7218C101.335 6.7218 99.9169 7.92849 99.9068 10.1123C99.9169 12.2959 101.335 13.5201 103.215 13.5201C103.622 13.5201 104.169 13.4717 104.749 13.2424C105.16 13.0799 105.654 13.2046 105.914 13.5615L106.304 14.0952C105.342 14.7819 104.171 15.0566 102.895 15.0566C100.598 15.0566 98.2033 13.2842 98.1929 10.1124ZM147.619 5.21768C148.074 5.21768 148.444 5.58663 148.444 6.04174V9.81968L151.82 5.58131C151.897 5.47733 151.997 5.39282 152.112 5.3346C152.227 5.27638 152.355 5.24607 152.484 5.24611H153.984L150.166 10.0615L153.984 14.8749H152.484C152.355 14.8749 152.227 14.8446 152.112 14.7864C151.997 14.7281 151.897 14.6436 151.82 14.5397L148.444 10.3025V14.0508C148.444 14.5059 148.074 14.8749 147.619 14.8749H146.746V5.21768H147.619Z' fill='%23373F45'/%3E%3Cpath d='M0.773438 6.5752H2.68066C3.56543 6.5752 4.2041 6.7041 4.59668 6.96191C4.99219 7.21973 5.18994 7.62695 5.18994 8.18359C5.18994 8.55859 5.09326 8.87061 4.8999 9.11963C4.70654 9.36865 4.42822 9.52539 4.06494 9.58984V9.63379C4.51611 9.71875 4.84717 9.88721 5.05811 10.1392C5.27197 10.3882 5.37891 10.7266 5.37891 11.1543C5.37891 11.7314 5.17676 12.1841 4.77246 12.5122C4.37109 12.8374 3.81152 13 3.09375 13H0.773438V6.5752ZM1.82373 9.22949H2.83447C3.27393 9.22949 3.59473 9.16064 3.79688 9.02295C3.99902 8.88232 4.1001 8.64502 4.1001 8.31104C4.1001 8.00928 3.99023 7.79102 3.77051 7.65625C3.55371 7.52148 3.20801 7.4541 2.7334 7.4541H1.82373V9.22949ZM1.82373 10.082V12.1167H2.93994C3.37939 12.1167 3.71045 12.0332 3.93311 11.8662C4.15869 11.6963 4.27148 11.4297 4.27148 11.0664C4.27148 10.7324 4.15723 10.4849 3.92871 10.3237C3.7002 10.1626 3.35303 10.082 2.88721 10.082H1.82373Z' fill='%23373F45'/%3E%3Cpath d='M13.011 6.5752V10.7324C13.011 11.207 12.9084 11.623 12.7034 11.9805C12.5012 12.335 12.2068 12.6089 11.8201 12.8022C11.4363 12.9927 10.9763 13.0879 10.4402 13.0879C9.6433 13.0879 9.02368 12.877 8.5813 12.4551C8.13892 12.0332 7.91772 11.4531 7.91772 10.7148V6.5752H8.9724V10.6401C8.9724 11.1704 9.09546 11.5615 9.34155 11.8135C9.58765 12.0654 9.96557 12.1914 10.4753 12.1914C11.4656 12.1914 11.9607 11.6714 11.9607 10.6313V6.5752H13.011Z' fill='%23373F45'/%3E%3Cpath d='M15.9146 13V6.5752H16.9649V13H15.9146Z' fill='%23373F45'/%3E%3Cpath d='M19.9255 13V6.5752H20.9758V12.0991H23.696V13H19.9255Z' fill='%23373F45'/%3E%3Cpath d='M28.2828 13H27.2325V7.47607H25.3428V6.5752H30.1724V7.47607H28.2828V13Z' fill='%23373F45'/%3E%3Cpath d='M41.9472 13H40.8046L39.7148 9.16796C39.6679 9.00097 39.6093 8.76074 39.539 8.44727C39.4687 8.13086 39.4262 7.91113 39.4116 7.78809C39.3823 7.97559 39.3339 8.21875 39.2665 8.51758C39.2021 8.81641 39.1479 9.03905 39.1039 9.18554L38.0405 13H36.8979L36.0673 9.7832L35.2236 6.5752H36.2958L37.2143 10.3193C37.3578 10.9199 37.4604 11.4502 37.5219 11.9102C37.5541 11.6611 37.6025 11.3828 37.6669 11.0752C37.7314 10.7676 37.79 10.5186 37.8427 10.3281L38.8886 6.5752H39.9301L41.0024 10.3457C41.1049 10.6943 41.2133 11.2158 41.3276 11.9102C41.3715 11.4912 41.477 10.958 41.644 10.3105L42.558 6.5752H43.6215L41.9472 13Z' fill='%23373F45'/%3E%3Cpath d='M45.7957 13V6.5752H46.846V13H45.7957Z' fill='%23373F45'/%3E%3Cpath d='M52.0258 13H50.9755V7.47607H49.0859V6.5752H53.9155V7.47607H52.0258V13Z' fill='%23373F45'/%3E%3Cpath d='M61.2312 13H60.1765V10.104H57.2146V13H56.1643V6.5752H57.2146V9.20312H60.1765V6.5752H61.2312V13Z' fill='%23373F45'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;border:1px solid #dde2e7;border-radius:4px;align-items:center;width:190px;height:36px;margin:0 auto;padding:0;-webkit-text-decoration:none;text-decoration:none;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out;display:block;overflow:hidden}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit:hover,.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit:focus{opacity:1;background-color:#fff;-webkit-transform:scale(1.025)perspective(1px);-ms-transform:scale(1.025)perspective(1px);transform:scale(1.025)perspective(1px)}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit[data-variant=dark],.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit[data-variant=light]{background-color:#0000;border-color:#0000;width:166px}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit[data-variant=light]{color:#fff;background-image:url("data:image/svg+xml;charset=utf8,%3Csvg width='162' height='20' viewBox='0 0 162 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M83.0561 15.2457C86.675 15.2457 89.4722 12.5154 89.4722 9.14749C89.4722 5.99211 86.8443 4.06563 85.1038 4.06563C82.6801 4.06563 80.7373 5.76407 80.4605 8.28551C80.4092 8.75244 80.0387 9.14403 79.5686 9.14069C78.7871 9.13509 77.6507 9.12841 76.9314 9.13092C76.6217 9.13199 76.3658 8.88106 76.381 8.57196C76.4895 6.38513 77.2218 4.3404 78.618 2.76974C80.1695 1.02445 82.4289 0 85.1038 0C89.5979 0 93.8406 4.07791 93.8406 9.14749C93.8406 14.7608 89.1832 19.3113 83.1517 19.3113C78.8502 19.3113 74.5179 16.5041 73.0053 12.5795C72.9999 12.565 72.9986 12.5492 73.0015 12.534C73.0218 12.4179 73.0617 12.3118 73.1011 12.2074C73.1583 12.0555 73.2143 11.907 73.2062 11.7359L73.18 11.1892C73.174 11.0569 73.2075 10.9258 73.2764 10.8127C73.3452 10.6995 73.4463 10.6094 73.5666 10.554L73.7852 10.4523C73.9077 10.3957 74.0148 10.3105 74.0976 10.204C74.1803 10.0974 74.2363 9.97252 74.2608 9.83983C74.3341 9.43894 74.6865 9.14749 75.0979 9.14749C75.7404 9.14749 76.299 9.57412 76.5088 10.1806C77.5188 13.1 79.1245 15.2457 83.0561 15.2457Z' fill='white'/%3E%3Cpath d='M155.758 6.91365C155.028 6.91365 154.804 6.47916 154.804 5.98857C154.804 5.46997 154.986 5.06348 155.758 5.06348C156.53 5.06348 156.712 5.46997 156.712 5.98857C156.712 6.47905 156.516 6.91365 155.758 6.91365ZM142.441 12.9304V9.32833L141.415 9.32323V8.90392C141.415 8.44719 141.786 8.07758 142.244 8.07986L142.441 8.08095V6.55306L144.082 6.09057V8.08073H145.569V8.50416C145.569 8.61242 145.548 8.71961 145.506 8.81961C145.465 8.91961 145.404 9.01047 145.328 9.08699C145.251 9.16351 145.16 9.2242 145.06 9.26559C144.96 9.30698 144.853 9.32826 144.745 9.32822H144.082V12.7201C144.082 13.2423 144.378 13.4256 144.76 13.4887C145.209 13.5629 145.583 13.888 145.583 14.343V14.9626C144.029 14.9626 142.441 14.8942 142.441 12.9304Z' fill='white'/%3E%3Cpath d='M110.058 7.92554C108.417 7.88344 106.396 8.92062 106.396 11.5137C106.396 14.0646 108.417 15.0738 110.058 15.0318C111.742 15.0738 113.748 14.0646 113.748 11.5137C113.748 8.92062 111.742 7.88344 110.058 7.92554ZM110.07 13.7586C108.878 13.7586 108.032 12.8905 108.032 11.461C108.032 10.1013 108.878 9.20569 110.071 9.20569C111.263 9.20569 112.101 10.0995 112.101 11.459C112.101 12.8887 111.263 13.7586 110.07 13.7586Z' fill='white'/%3E%3Cpath d='M118.06 7.94098C119.491 7.94098 120.978 8.33337 120.978 11.1366V14.893H120.063C119.608 14.893 119.238 14.524 119.238 14.0689V10.9965C119.238 9.66506 118.747 9.16047 117.891 9.16047C117.414 9.16047 116.797 9.52486 116.502 9.81915V14.069C116.502 14.1773 116.481 14.2845 116.44 14.3845C116.398 14.4845 116.337 14.5753 116.261 14.6519C116.184 14.7284 116.093 14.7891 115.993 14.8305C115.893 14.8719 115.786 14.8931 115.678 14.8931H114.847V8.10918H115.773C115.932 8.10914 116.087 8.16315 116.212 8.26242C116.337 8.36168 116.424 8.50033 116.46 8.65577C116.881 8.19328 117.428 7.94098 118.06 7.94098ZM122.854 8.09713C123.024 8.09708 123.19 8.1496 123.329 8.2475C123.468 8.34541 123.574 8.48391 123.631 8.64405L125.133 12.8486L126.635 8.64415C126.692 8.48402 126.798 8.34551 126.937 8.2476C127.076 8.1497 127.242 8.09718 127.412 8.09724H128.598L126.152 14.3567C126.091 14.5112 125.986 14.6439 125.849 14.7374C125.711 14.831 125.549 14.881 125.383 14.8809H124.333L121.668 8.09713H122.854Z' fill='white'/%3E%3Cpath d='M135.085 14.5514C134.566 14.7616 133.513 15.0416 132.418 15.0416C130.496 15.0416 129.024 13.9345 129.024 11.4396C129.024 9.19701 130.451 7.99792 132.191 7.99792C134.338 7.99792 135.254 9.4378 135.158 11.3979C135.139 11.8029 134.786 12.0983 134.38 12.0983H130.679C130.763 13.1916 131.562 13.7662 132.615 13.7662C133.028 13.7662 133.462 13.7452 133.983 13.6481C134.535 13.545 135.085 13.9375 135.085 14.4985V14.5514ZM133.673 10.949C133.785 9.87621 133.061 9.28752 132.191 9.28752C131.321 9.28752 130.734 9.93979 130.679 10.9489L133.673 10.949Z' fill='white'/%3E%3Cpath d='M137.345 8.11122C137.497 8.11118 137.645 8.16229 137.765 8.25635C137.884 8.35041 137.969 8.48197 138.005 8.62993C138.566 8.20932 139.268 7.94303 139.759 7.94303C139.801 7.94303 140.068 7.94303 140.489 7.99913V8.7265C140.489 9.11748 140.15 9.4147 139.759 9.4147C139.31 9.4147 138.651 9.5829 138.131 9.8773V14.8951H136.462V8.11112L137.345 8.11122ZM156.6 14.0508V8.09104H155.769C155.314 8.09104 154.944 8.45999 154.944 8.9151V14.8748H155.775C156.23 14.8748 156.6 14.5058 156.6 14.0508ZM158.857 12.9447V9.34254H157.749V8.91912C157.749 8.46401 158.118 8.09506 158.574 8.09506H158.857V6.56739L160.499 6.10479V8.09506H161.986V8.51848C161.986 8.97359 161.617 9.34254 161.161 9.34254H160.499V12.7345C160.499 13.2566 160.795 13.44 161.177 13.503C161.626 13.5774 162 13.9024 162 14.3574V14.977C160.446 14.977 158.857 14.9086 158.857 12.9447ZM98.1929 10.1124C98.2033 6.94046 100.598 5.16809 102.895 5.16809C104.171 5.16809 105.342 5.44285 106.304 6.12953L105.914 6.6631C105.654 7.02011 105.16 7.16194 104.749 6.99949C104.169 6.7702 103.622 6.7218 103.215 6.7218C101.335 6.7218 99.9169 7.92849 99.9068 10.1123C99.9169 12.2959 101.335 13.5201 103.215 13.5201C103.622 13.5201 104.169 13.4717 104.749 13.2424C105.16 13.0799 105.654 13.2046 105.914 13.5615L106.304 14.0952C105.342 14.7819 104.171 15.0566 102.895 15.0566C100.598 15.0566 98.2033 13.2842 98.1929 10.1124ZM147.619 5.21768C148.074 5.21768 148.444 5.58663 148.444 6.04174V9.81968L151.82 5.58131C151.897 5.47733 151.997 5.39282 152.112 5.3346C152.227 5.27638 152.355 5.24607 152.484 5.24611H153.984L150.166 10.0615L153.984 14.8749H152.484C152.355 14.8749 152.227 14.8446 152.112 14.7864C151.997 14.7281 151.897 14.6436 151.82 14.5397L148.444 10.3025V14.0508C148.444 14.5059 148.074 14.8749 147.619 14.8749H146.746V5.21768H147.619Z' fill='white'/%3E%3Cpath d='M0.773438 6.5752H2.68066C3.56543 6.5752 4.2041 6.7041 4.59668 6.96191C4.99219 7.21973 5.18994 7.62695 5.18994 8.18359C5.18994 8.55859 5.09326 8.87061 4.8999 9.11963C4.70654 9.36865 4.42822 9.52539 4.06494 9.58984V9.63379C4.51611 9.71875 4.84717 9.88721 5.05811 10.1392C5.27197 10.3882 5.37891 10.7266 5.37891 11.1543C5.37891 11.7314 5.17676 12.1841 4.77246 12.5122C4.37109 12.8374 3.81152 13 3.09375 13H0.773438V6.5752ZM1.82373 9.22949H2.83447C3.27393 9.22949 3.59473 9.16064 3.79688 9.02295C3.99902 8.88232 4.1001 8.64502 4.1001 8.31104C4.1001 8.00928 3.99023 7.79102 3.77051 7.65625C3.55371 7.52148 3.20801 7.4541 2.7334 7.4541H1.82373V9.22949ZM1.82373 10.082V12.1167H2.93994C3.37939 12.1167 3.71045 12.0332 3.93311 11.8662C4.15869 11.6963 4.27148 11.4297 4.27148 11.0664C4.27148 10.7324 4.15723 10.4849 3.92871 10.3237C3.7002 10.1626 3.35303 10.082 2.88721 10.082H1.82373Z' fill='white'/%3E%3Cpath d='M13.011 6.5752V10.7324C13.011 11.207 12.9084 11.623 12.7034 11.9805C12.5012 12.335 12.2068 12.6089 11.8201 12.8022C11.4363 12.9927 10.9763 13.0879 10.4402 13.0879C9.6433 13.0879 9.02368 12.877 8.5813 12.4551C8.13892 12.0332 7.91772 11.4531 7.91772 10.7148V6.5752H8.9724V10.6401C8.9724 11.1704 9.09546 11.5615 9.34155 11.8135C9.58765 12.0654 9.96557 12.1914 10.4753 12.1914C11.4656 12.1914 11.9607 11.6714 11.9607 10.6313V6.5752H13.011Z' fill='white'/%3E%3Cpath d='M15.9146 13V6.5752H16.9649V13H15.9146Z' fill='white'/%3E%3Cpath d='M19.9255 13V6.5752H20.9758V12.0991H23.696V13H19.9255Z' fill='white'/%3E%3Cpath d='M28.2828 13H27.2325V7.47607H25.3428V6.5752H30.1724V7.47607H28.2828V13Z' fill='white'/%3E%3Cpath d='M41.9472 13H40.8046L39.7148 9.16796C39.6679 9.00097 39.6093 8.76074 39.539 8.44727C39.4687 8.13086 39.4262 7.91113 39.4116 7.78809C39.3823 7.97559 39.3339 8.21875 39.2665 8.51758C39.2021 8.81641 39.1479 9.03905 39.1039 9.18554L38.0405 13H36.8979L36.0673 9.7832L35.2236 6.5752H36.2958L37.2143 10.3193C37.3578 10.9199 37.4604 11.4502 37.5219 11.9102C37.5541 11.6611 37.6025 11.3828 37.6669 11.0752C37.7314 10.7676 37.79 10.5186 37.8427 10.3281L38.8886 6.5752H39.9301L41.0024 10.3457C41.1049 10.6943 41.2133 11.2158 41.3276 11.9102C41.3715 11.4912 41.477 10.958 41.644 10.3105L42.558 6.5752H43.6215L41.9472 13Z' fill='white'/%3E%3Cpath d='M45.7957 13V6.5752H46.846V13H45.7957Z' fill='white'/%3E%3Cpath d='M52.0258 13H50.9755V7.47607H49.0859V6.5752H53.9155V7.47607H52.0258V13Z' fill='white'/%3E%3Cpath d='M61.2312 13H60.1765V10.104H57.2146V13H56.1643V6.5752H57.2146V9.20312H60.1765V6.5752H61.2312V13Z' fill='white'/%3E%3C/svg%3E")}@-webkit-keyframes formkit-bouncedelay-formkit-form-data-uid-8d653b97b6-{0%,80%,to{-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0)}40%{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}@keyframes formkit-bouncedelay-formkit-form-data-uid-8d653b97b6-{0%,80%,to{-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0)}40%{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}.formkit-form[data-uid="8d653b97b6"] blockquote{border-left:5px solid #e1e1e1;margin:0 0 20px;padding:10px 20px}.formkit-form[data-uid="8d653b97b6"] .seva-custom-content{color:#fff;mix-blend-mode:difference;padding:15px;font-size:16px}.formkit-form[data-uid="8d653b97b6"]{max-width:700px}.formkit-form[data-uid="8d653b97b6"] [data-style=clean]{width:100%}.formkit-form[data-uid="8d653b97b6"] .formkit-fields{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;margin:0 auto;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.formkit-form[data-uid="8d653b97b6"] .formkit-field,.formkit-form[data-uid="8d653b97b6"] .formkit-submit{-webkit-flex:1 0 100%;-ms-flex:1 0 100%;flex:1 0 100%;margin:0 0 15px}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit-container{margin:0}.formkit-form[data-uid="8d653b97b6"] .formkit-submit{position:static}.formkit-form[data-uid="8d653b97b6"][min-width~="700"] [data-style=clean],.formkit-form[data-uid="8d653b97b6"][min-width~="800"] [data-style=clean]{padding:10px}.formkit-form[data-uid="8d653b97b6"][min-width~="700"] .formkit-fields[data-stacked=false],.formkit-form[data-uid="8d653b97b6"][min-width~="800"] .formkit-fields[data-stacked=false]{margin-left:-5px;margin-right:-5px}.formkit-form[data-uid="8d653b97b6"][min-width~="700"] .formkit-fields[data-stacked=false] .formkit-field,.formkit-form[data-uid="8d653b97b6"][min-width~="800"] .formkit-fields[data-stacked=false] .formkit-field,.formkit-form[data-uid="8d653b97b6"][min-width~="700"] .formkit-fields[data-stacked=false] .formkit-submit,.formkit-form[data-uid="8d653b97b6"][min-width~="800"] .formkit-fields[data-stacked=false] .formkit-submit{margin:0 5px 15px}.formkit-form[data-uid="8d653b97b6"][min-width~="700"] .formkit-fields[data-stacked=false] .formkit-field,.formkit-form[data-uid="8d653b97b6"][min-width~="800"] .formkit-fields[data-stacked=false] .formkit-field{-webkit-flex:100 auto;-ms-flex:100 auto;flex:100 auto}.formkit-form[data-uid="8d653b97b6"][min-width~="700"] .formkit-fields[data-stacked=false] .formkit-submit,.formkit-form[data-uid="8d653b97b6"][min-width~="800"] .formkit-fields[data-stacked=false] .formkit-submit{-webkit-flex:auto;-ms-flex:auto;flex:auto}</style></form>
</div><div><div class="quoteContainer_Karu"><figure class="tweetQuote_h8Rz"><blockquote><a href="https://x.com/grabbou/status/1829126194022715617" target="_blank" rel="noreferrer nofollow">If every newsletter was as informative, the world would be a better place!</a></blockquote><figcaption><a href="https://twitter.com/grabbou" target="_blank" rel="noreferrer nofollow"><div class="avatar"><img alt="Mike Grabowski" class="avatar__photo shadow--md avatarImg_b51M" src="https://unavatar.io/twitter/grabbou?fallback=https://github.com/grabbou.png"><div class="avatar__intro"><strong class="avatar__name"><cite>Mike Grabowski</cite></strong><small class="avatar__subtitle" itemprop="description">CTO and founder - Callstack</small></div></div></a></figcaption></figure></div></div></div>
<div role="separator" style="text-align:center;margin:10px 0"><img class="separator" src="https://thisweekinreact.com/emails/separators/christmas.png" width="600" height="64" style="width:100%;max-width:600px;margin:0 auto;object-fit:contain"></div>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="sponsor2">💸 Sponsor<a href="https://thisweekinreact.com/newsletter/275#sponsor2" class="hash-link" aria-label="Direct link to 💸 Sponsor" title="Direct link to 💸 Sponsor">​</a></h2>
<p><a href="https://github.com/marmelab/atomic-crm" target="_blank" rel="noopener noreferrer"><img decoding="async" loading="lazy" src="https://thisweekinreact.com/emails/issues/275/marmelab.jpg" alt="Atomic CRM: The Open-Source CRM Toolkit for Developers" class="img_SS3x"></a></p>
<p><strong><a href="https://github.com/marmelab/atomic-crm" target="_blank" rel="noopener noreferrer">Atomic CRM: The Open-Source CRM Toolkit for Developers</a></strong></p>
<p>Stop struggling with locked-in CRMs and expensive seats. Atomic CRM gives you the power of a professional CRM with the total freedom of open-source.</p>
<p>It’s the only toolkit that combines a high-end user experience with data sovereignty. No more lock-in, no more "renting" your contacts.</p>
<p>Everything you need is already there:</p>
<ul>
<li><strong>Native Mobile App</strong> for on-the-go access.</li>
<li><strong>Intuitive Kanban Boards</strong> for pipeline management.</li>
<li><strong>Built-in Email Tracking</strong> to stay on top of leads.</li>
<li><strong>Free SSO</strong> for seamless team integration.</li>
<li><strong>MCP Server Integration</strong> for productivity gains.</li>
</ul>
<p>Why settle for a black box SaaS when you can own the entire platform? <a href="https://marmelab.com/atomic-crm/" target="_blank" rel="noopener noreferrer">Deploy Atomic CRM</a> on your own infrastructure in minutes and regain control over your most valuable asset: your data.</p>
<div role="separator" style="text-align:center;margin:10px 0"><img class="separator" src="https://thisweekinreact.com/emails/separators/christmas.png" width="600" height="64" style="width:100%;max-width:600px;margin:0 auto;object-fit:contain"></div>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="react-native">📱 React-Native<a href="https://thisweekinreact.com/newsletter/275#react-native" class="hash-link" aria-label="Direct link to 📱 React-Native" title="Direct link to 📱 React-Native">​</a></h2>
<p><a href="https://github.com/software-mansion/react-native-executorch/releases/tag/v0.8.0" target="_blank" rel="noopener noreferrer"><img decoding="async" loading="lazy" src="https://thisweekinreact.com/emails/issues/275/executorch.jpg" alt="RN ExecuTorch 0.8" class="img_SS3x"></a></p>
<p><strong><a href="https://github.com/software-mansion/react-native-executorch/releases/tag/v0.8.0" target="_blank" rel="noopener noreferrer">RN ExecuTorch 0.8</a></strong></p>
<p>Software Mansion just dropped the biggest release to date for React Native ExecuTorch. Version 0.8 expands the library's capabilities far beyond its initial scope, introducing official support for bare React Native applications (no longer strictly tied to Expo) and deep integration with Vision Camera.</p>
<p><strong>Key callouts:</strong></p>
<ul>
<li><strong>Vision Camera Integration:</strong> You can now seamlessly run ExecuTorch models directly on camera frames in real-time.</li>
<li><strong>New Computer Vision Models:</strong> The release introduces powerful new CV hooks, such as <code>useInstanceSegmentation</code> and <code>useSemanticSegmentation</code>.</li>
<li><strong>Bare RN Support:</strong> You can now use ExecuTorch in bare React Native apps by utilizing the bare React Native resource fetcher instead of the Expo one.</li>
<li><strong>Expanded NLP:</strong> Continues to grow its Natural Language Processing suite with implementations for Speech-to-Text, Text-to-Speech, Text Embeddings, and more.</li>
</ul>
<div role="separator" style="text-align:center;margin:10px 0"><img class="separator" src="https://thisweekinreact.com/emails/separators/christmas.png" width="600" height="64" style="width:100%;max-width:600px;margin:0 auto;object-fit:contain"></div>
<ul>
<li>💸 <a href="https://frontendmasters.com/courses/react-performance-v2/?utm_source=reactweekly&amp;utm_medium=email&amp;utm_campaign=reactperf" target="_blank" rel="noopener noreferrer">Make React apps fast where it actually matters. Learn how to diagnose real bottlenecks and fix slow, janky React apps using modern React 19 patterns.</a></li>
<li>👀 <a href="https://vue.lynxjs.org/" target="_blank" rel="noopener noreferrer">Lynx Vue</a> - Vue + Lynx = Vue Native? An AI-powered attempt to bridge native development with a popular framework.</li>
<li>🗓️ <a href="https://appjs.co/?utm_source=thisweekinreact" target="_blank" rel="noopener noreferrer">App.js Conf</a> - 🇵🇱 Kraków - 27-29 May - Join Charlie Cheever, William Candillon, Jay Meistrich, Perttu Lähteenlahti, and more! Prices increase in May—secure your seat now. Get a 15% discount with code "TWIR".</li>
<li>📜 <a href="https://expo.dev/blog/how-fig-keeps-millions-eating-safely-with-a-five-engineer-team-and-expo" target="_blank" rel="noopener noreferrer">Fig case study</a> - How five engineers can scale to millions of users with Expo to provide crucial info about dietary needs.<br>
<!-- -->📦 <a href="https://github.com/RamboWasReal/react-native-preflight" target="_blank" rel="noopener noreferrer">Preflight - Simplify Maestro E2E testing for React Native</a> - deep link to any screen, inject state, compare visual regressions with reports, router agnostic.</li>
<li>📦 <a href="https://github.com/AlirezaHadjar/react-native-fast-confetti/releases/tag/v2.0.0-beta.2" target="_blank" rel="noopener noreferrer">Fast Confetti 2.0</a> - Rewritten composition API and physics engine, more customization and natural feeling animations.</li>
<li>📦 <a href="https://www.reactnative.run/" target="_blank" rel="noopener noreferrer">ReactNative.run</a> - Run React Native in a browser, Metro bundler mapped to the web. Similar concept to Expo Snack.</li>
<li>📦 <a href="https://github.com/callstackincubator/agent-device/releases/tag/v0.11.0%20" target="_blank" rel="noopener noreferrer">Agent Device 0.11</a> - iOS Simulator no longer takes focus from the current window + lots of fixes and small features</li>
<li>📦 <a href="https://www.callstack.com/blog/brownie-a-type-safe-shared-state-workflow-for-brownfield-react-native" target="_blank" rel="noopener noreferrer">Brownie 3.5 - Shared-State Workflow for Brownfield now with Android support.</a></li>
<li>📦 <a href="https://github.com/Guccio163/react-native-reshuffled" target="_blank" rel="noopener noreferrer">Reshuffled 0.2 - Nitro-powered grid layout - onDragEnd worklet callbacks</a></li>
<li>📦 <a href="https://github.com/infinitered/reactotron/releases/tag/reactotron-app%403.9.0" target="_blank" rel="noopener noreferrer">Reactotron 3.9 - MCP server integration</a></li>
<li>📦 <a href="https://github.com/pawicao/react-native-header-motion/releases/tag/v1.0.0" target="_blank" rel="noopener noreferrer">React Native Header Motion 1.0 - New context-first header API, explicit navigation bridging, better performance</a></li>
<li>📦 <a href="https://github.com/jpudysz/react-native-unistyles/releases/tag/v3.2.0" target="_blank" rel="noopener noreferrer">Unistyles 3.2 - Add support for dropShadow, Suspense trees, RTL ShadowTree updates on Android</a></li>
<li>📦 <a href="https://github.com/MeliValesca/react-native-morph-card" target="_blank" rel="noopener noreferrer">Morph Card - Native card-to-modal morph transition</a></li>
<li>🤖 <a href="https://github.com/software-mansion-labs/skills/tree/main/skills/react-native-best-practices" target="_blank" rel="noopener noreferrer">Software Mansion skills</a> - Best practices, AI skills for animations, gestures, SVG, and libraries maintained by SWM.</li>
<li>🤖 <a href="https://github.com/react-navigation/skills" target="_blank" rel="noopener noreferrer">React Navigation AI skills</a> - Official guidelines that help with migration to newer versions and static config.</li>
<li>🤖 <a href="https://www.callstack.com/blog/announcing-codex-plugins-for-react-native-development" target="_blank" rel="noopener noreferrer">Codex plugins for React Native development</a> - Build and test RN apps in Codex.</li>
<li>🎥 <a href="https://www.youtube.com/watch?v=t3rTRMDoev8" target="_blank" rel="noopener noreferrer">William Candillon - React Native WebGPU in 100 seconds</a></li>
<li>🎥 <a href="https://www.youtube.com/watch?v=EWZZ-qekCW0" target="_blank" rel="noopener noreferrer">Beto - react-i18next in React Native &amp; Expo</a></li>
<li>🎙️ <a href="https://infinite.red/react-native-radio/rnr-358-react-native-for-meta-quest-part-2-developer-friendly" target="_blank" rel="noopener noreferrer">React Native Radio 358 - React Native for Meta Quest Part 2: Developer Friendly</a></li>
</ul>
<div role="separator" style="text-align:center;margin:10px 0"><img class="separator" src="https://thisweekinreact.com/emails/separators/christmas.png" width="600" height="64" style="width:100%;max-width:600px;margin:0 auto;object-fit:contain"></div>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="other">🔀 Other<a href="https://thisweekinreact.com/newsletter/275#other" class="hash-link" aria-label="Direct link to 🔀 Other" title="Direct link to 🔀 Other">​</a></h2>
<ul>
<li>⚠️ <a href="https://www.stepsecurity.io/blog/axios-compromised-on-npm-malicious-versions-drop-remote-access-trojan" target="_blank" rel="noopener noreferrer">axios Compromised on npm - Malicious Versions Drop Remote Access Trojan</a> - <code>axios@1.14.1</code> and <code>axios@0.30.4</code> have been compromised for approximately 4 hours on 30 March, and you might have too if you installed dependencies during that time frame. Even if you don’t use it directly, it’s probably a transitive dependency in your projects. Make sure to follow the defensive measures, such as adding <code>min-release-age=7d</code> to your <code>.npmrc</code>.</li>
<li>📜 <a href="https://willybrauner.com/journal/signal-the-push-pull-based-algorithm" target="_blank" rel="noopener noreferrer">Signals, the push-pull based algorithm</a></li>
<li>📦 <a href="https://github.com/chenglou/pretext" target="_blank" rel="noopener noreferrer">Pretext - Text measurement and layout algorithm in pure TypeScript</a> - This innovative lib went viral this week, with fun/impressive but useless demos everywhere. However, the lib unlocks real new possibilities that are impossible or inefficient to achieve with DOM/CSS, as explained in this related article: <a href="https://denodell.com/blog/youre-looking-at-the-wrong-pretext-demo" target="_blank" rel="noopener noreferrer">You're Looking at the Wrong Pretext Demo</a>.</li>
<li>📦 <a href="https://developer.chrome.com/blog/element-scoped-view-transitions" target="_blank" rel="noopener noreferrer">Chrome 147 - <code>Element.startViewTransition()</code></a> - The first browser to ship element-scoped view transitions, enabling multiple view transitions to run simultaneously.</li>
<li>📦 <a href="https://github.com/microsoft/playwright/releases/tag/v1.59.0" target="_blank" rel="noopener noreferrer">Playwright 1.59 - Screencast recording, observability for agents, <code>await using</code></a> - New features that could be helpful to give feedback to AI agents, and post review videos in PRs.</li>
<li>📦 <a href="https://vercel.com/blog/making-turborepo-ninety-six-percent-faster-with-agents-sandboxes-and-humans" target="_blank" rel="noopener noreferrer">Turborepo 2.9 - 96% faster with agents, sandboxes, and humans</a></li>
<li>📦 <a href="https://github.com/huggingface/transformers.js/releases/tag/4.0.0" target="_blank" rel="noopener noreferrer">Transformers.js 4.0 - Machine Learning for the web - New WebGPU backend</a></li>
<li>📦 <a href="https://nodejs.org/en/blog/release/v25.9.0" target="_blank" rel="noopener noreferrer">Node.js 25.9 - Test runner module mocking improvements, <code>using</code> + AsyncLocalStorage, <code>stream/iter</code> API</a></li>
</ul>
<div role="separator" style="text-align:center;margin:10px 0"><img class="separator" src="https://thisweekinreact.com/emails/separators/christmas.png" width="600" height="64" style="width:100%;max-width:600px;margin:0 auto;object-fit:contain"></div>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="fun">🤭 Fun<a href="https://thisweekinreact.com/newsletter/275#fun" class="hash-link" aria-label="Direct link to 🤭 Fun" title="Direct link to 🤭 Fun">​</a></h2>
<p><a href="https://x.com/rickyfm/status/2039340328050659803" target="_blank" rel="noopener noreferrer"><img decoding="async" loading="lazy" src="https://thisweekinreact.com/emails/issues/275/meme.jpg" alt="alt" class="img_SS3x"></a></p>
<p><a href="https://x.com/tannerlinsley/status/2021633622244299131" target="_blank" rel="noopener noreferrer"><img decoding="async" loading="lazy" src="https://thisweekinreact.com/emails/issues/275/meme2.jpg" alt="alt" class="img_SS3x"></a></p>
<p>See ya! 👋</p>]]></content>
        <author>
            <name>Sébastien Lorber</name>
            <uri>https://sebastienlorber.com</uri>
        </author>
        <author>
            <name>Jan Jaworski</name>
            <uri>https://x.com/jaworek3211</uri>
        </author>
    </entry>
    <entry>
        <title type="html"><![CDATA[This Week In React #274: ⚛️ Next.js, React Router, Storybook, HeroUI, Remotion, Lucide, useEffect | 📱 Reanimated, Worklets, Nitro Fetch, Navigation, Rozenite, MMKV, Windows, Swift | 🔀 TypeScript, Signals, Zero, Valibot]]></title>
        <id>https://thisweekinreact.com/newsletter/274</id>
        <link href="https://thisweekinreact.com/newsletter/274"/>
        <updated>2026-03-25T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Hi everyone, Seb here 👋\!]]></summary>
        <content type="html"><![CDATA[<p>Hi everyone, Seb here 👋!</p>
<p>This week: a new Next.js release, a React Aria-based UI library, Remotion updates, Storybook MCP, and more.</p>
<p>On React Native, multi-threading keeps improving (Worklets, Reanimated), and React Navigation v8 looks close.</p>
<p>Sorry for the weird duplicate email last week, just a mistake 😅</p>
<!-- -->
<p>As always, thanks for supporting us on your favorite platform:</p>
<ul>
<li>🦋 <a href="https://slo.im/last/b" target="_blank" rel="noopener noreferrer">Bluesky</a></li>
<li>✖️ <a href="https://slo.im/last/x" target="_blank" rel="noopener noreferrer">X / Twitter</a></li>
<li>👔 <a href="https://slo.im/last/l" target="_blank" rel="noopener noreferrer">LinkedIn</a></li>
<li>👽 <a href="https://slo.im/last/r" target="_blank" rel="noopener noreferrer">Reddit</a></li>
</ul>
<div class="card subscribeFormEmbed_aAcT"><p><strong>Don't miss the next email!</strong></p><div class="">
<script src="https://f.convertkit.com/ckjs/ck.5.js"></script>
      <form action="https://app.convertkit.com/forms/3472133/subscriptions" class="seva-form formkit-form" method="post" data-sv-form="3472133" data-uid="8d653b97b6" data-format="inline" data-version="5" data-options="{&quot;settings&quot;:{&quot;after_subscribe&quot;:{&quot;action&quot;:&quot;redirect&quot;,&quot;success_message&quot;:&quot;Success! Now check your email to confirm your subscription.&quot;,&quot;redirect_url&quot;:&quot;https://thisweekinreact.com/workflow/confirm-your-email&quot;},&quot;analytics&quot;:{&quot;google&quot;:null,&quot;fathom&quot;:null,&quot;facebook&quot;:null,&quot;segment&quot;:null,&quot;pinterest&quot;:null,&quot;sparkloop&quot;:null,&quot;googletagmanager&quot;:null},&quot;modal&quot;:{&quot;trigger&quot;:&quot;timer&quot;,&quot;scroll_percentage&quot;:null,&quot;timer&quot;:5,&quot;devices&quot;:&quot;all&quot;,&quot;show_once_every&quot;:15},&quot;powered_by&quot;:{&quot;show&quot;:false,&quot;url&quot;:&quot;https://convertkit.com/features/forms?lmref=d0748g&amp;utm_campaign=poweredby&amp;utm_content=form&amp;utm_medium=referral&amp;utm_source=dynamic&quot;},&quot;recaptcha&quot;:{&quot;enabled&quot;:false},&quot;return_visitor&quot;:{&quot;action&quot;:&quot;show&quot;,&quot;custom_content&quot;:&quot;&quot;},&quot;slide_in&quot;:{&quot;display_in&quot;:&quot;bottom_right&quot;,&quot;trigger&quot;:&quot;timer&quot;,&quot;scroll_percentage&quot;:null,&quot;timer&quot;:5,&quot;devices&quot;:&quot;all&quot;,&quot;show_once_every&quot;:15},&quot;sticky_bar&quot;:{&quot;display_in&quot;:&quot;top&quot;,&quot;trigger&quot;:&quot;timer&quot;,&quot;scroll_percentage&quot;:null,&quot;timer&quot;:5,&quot;devices&quot;:&quot;all&quot;,&quot;show_once_every&quot;:15}},&quot;version&quot;:&quot;5&quot;}" min-width="400 500 600 700 800"><div data-style="clean"><ul class="formkit-alert formkit-alert-error" data-element="errors" data-group="alert"></ul><div data-element="fields" data-stacked="false" class="seva-fields formkit-fields"><div class="formkit-field"><input class="formkit-input" name="email_address" aria-label="Email Address" placeholder="Email Address" required="" type="email" style="color: rgb(0, 0, 0); border-color: rgb(227, 227, 227); border-radius: 4px; font-weight: 700;"></div><button data-element="submit" class="formkit-submit formkit-submit" style="color: rgb(255, 255, 255); background-color: rgb(0, 54, 92); border-radius: 4px; font-weight: 700;"><div class="formkit-spinner"><div></div><div></div><div></div></div><span class="">Subscribe now!</span></button></div></div><style>.formkit-form[data-uid="8d653b97b6"] *{box-sizing:border-box}.formkit-form[data-uid="8d653b97b6"]{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.formkit-form[data-uid="8d653b97b6"] legend{font-size:inherit;border:none;margin-bottom:10px;padding:0;display:table;position:relative}.formkit-form[data-uid="8d653b97b6"] fieldset{border:0;min-width:0;margin:0;padding:.01em 0 0}.formkit-form[data-uid="8d653b97b6"] body:not(:-moz-handler-blocked) fieldset{display:table-cell}.formkit-form[data-uid="8d653b97b6"] h1,.formkit-form[data-uid="8d653b97b6"] h2,.formkit-form[data-uid="8d653b97b6"] h3,.formkit-form[data-uid="8d653b97b6"] h4,.formkit-form[data-uid="8d653b97b6"] h5,.formkit-form[data-uid="8d653b97b6"] h6{color:inherit;font-size:inherit;font-weight:inherit}.formkit-form[data-uid="8d653b97b6"] h2{margin:1em 0;font-size:1.5em}.formkit-form[data-uid="8d653b97b6"] h3{margin:1em 0;font-size:1.17em}.formkit-form[data-uid="8d653b97b6"] p{color:inherit;font-size:inherit;font-weight:inherit}.formkit-form[data-uid="8d653b97b6"] ol:not([template-default]),.formkit-form[data-uid="8d653b97b6"] ul:not([template-default]),.formkit-form[data-uid="8d653b97b6"] blockquote:not([template-default]){text-align:left}.formkit-form[data-uid="8d653b97b6"] p:not([template-default]),.formkit-form[data-uid="8d653b97b6"] hr:not([template-default]),.formkit-form[data-uid="8d653b97b6"] blockquote:not([template-default]),.formkit-form[data-uid="8d653b97b6"] ol:not([template-default]),.formkit-form[data-uid="8d653b97b6"] ul:not([template-default]){color:inherit;font-style:initial}.formkit-form[data-uid="8d653b97b6"] .ordered-list,.formkit-form[data-uid="8d653b97b6"] .unordered-list{padding-left:1em;list-style-position:outside!important}.formkit-form[data-uid="8d653b97b6"] .list-item{padding-left:0}.formkit-form[data-uid="8d653b97b6"][data-format=modal],.formkit-form[data-uid="8d653b97b6"][data-format=slide\ in],.formkit-form[data-uid="8d653b97b6"][data-format=sticky\ bar]{display:none}.formkit-sticky-bar .formkit-form[data-uid="8d653b97b6"][data-format=sticky\ bar]{display:block}.formkit-form[data-uid="8d653b97b6"] .formkit-input,.formkit-form[data-uid="8d653b97b6"] .formkit-select,.formkit-form[data-uid="8d653b97b6"] .formkit-checkboxes{width:100%}.formkit-form[data-uid="8d653b97b6"] .formkit-button,.formkit-form[data-uid="8d653b97b6"] .formkit-submit{color:#fff;cursor:pointer;text-align:center;cursor:pointer;vertical-align:middle;border:0;border-radius:5px;margin-bottom:15px;padding:0;font-size:15px;font-weight:500;display:inline-block;position:relative;overflow:hidden}.formkit-form[data-uid="8d653b97b6"] .formkit-button:hover,.formkit-form[data-uid="8d653b97b6"] .formkit-submit:hover,.formkit-form[data-uid="8d653b97b6"] .formkit-button:focus,.formkit-form[data-uid="8d653b97b6"] .formkit-submit:focus{outline:none}.formkit-form[data-uid="8d653b97b6"] .formkit-button:hover>span,.formkit-form[data-uid="8d653b97b6"] .formkit-submit:hover>span,.formkit-form[data-uid="8d653b97b6"] .formkit-button:focus>span,.formkit-form[data-uid="8d653b97b6"] .formkit-submit:focus>span{background-color:#0000001a}.formkit-form[data-uid="8d653b97b6"] .formkit-button>span,.formkit-form[data-uid="8d653b97b6"] .formkit-submit>span{padding:12px 24px;-webkit-transition:all .3s ease-in-out;transition:all .3s ease-in-out;display:block}.formkit-form[data-uid="8d653b97b6"] .formkit-input{background:#fff;border:1px solid #e3e3e3;-webkit-flex:1 0 auto;-ms-flex:1 0 auto;flex:1 0 auto;margin:0;padding:12px;font-size:15px;line-height:1.4;-webkit-transition:border-color .3s ease-out;transition:border-color .3s ease-out}.formkit-form[data-uid="8d653b97b6"] .formkit-input:focus{border-color:#1677be;outline:none;-webkit-transition:border-color .3s;transition:border-color .3s}.formkit-form[data-uid="8d653b97b6"] .formkit-input::-webkit-input-placeholder{color:inherit;opacity:.8}.formkit-form[data-uid="8d653b97b6"] .formkit-input::placeholder{color:inherit;opacity:.8}.formkit-form[data-uid="8d653b97b6"] .formkit-input:-ms-placeholder-shown{color:inherit;opacity:.8}.formkit-form[data-uid="8d653b97b6"] .formkit-input::placeholder{color:inherit;opacity:.8}.formkit-form[data-uid="8d653b97b6"] [data-group=dropdown]{width:100%;display:inline-block;position:relative}.formkit-form[data-uid="8d653b97b6"] [data-group=dropdown]:before{content:"";pointer-events:none;z-index:999;border:6px solid #0000;border-top-color:#4f4f4f;border-bottom-width:0;width:0;height:0;position:absolute;top:calc(50% - 2.5px);right:10px}.formkit-form[data-uid="8d653b97b6"] [data-group=dropdown] select{cursor:pointer;color:#333;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#fff;border:1px solid #e3e3e3;width:100%;height:auto;margin-bottom:0;padding:12px 25px 12px 12px;font-size:15px;line-height:1.4}.formkit-form[data-uid="8d653b97b6"] [data-group=dropdown] select:focus{outline:none}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes]{text-align:left;margin:0}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox]{margin-bottom:10px}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] *{cursor:pointer}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox]:last-of-type{margin-bottom:0}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] input[type=checkbox]{display:none}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] input[type=checkbox]+label:after{content:none}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] input[type=checkbox]:checked+label:after{content:"";border-color:#fff}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] input[type=checkbox]:checked+label:before{background:#10bf7a;border-color:#10bf7a}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] label{padding-left:28px;display:inline-block;position:relative}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] label:before,.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] label:after{content:"";display:inline-block;position:absolute}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] label:before{background:#fff;border:1px solid #e3e3e3;width:16px;height:16px;top:3px;left:0}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] label:after{border-bottom:2px solid #4d4d4d;border-left:2px solid #4d4d4d;width:8px;height:4px;top:8px;left:4px;-webkit-transform:rotate(-45deg);-ms-transform:rotate(-45deg);transform:rotate(-45deg)}.formkit-form[data-uid="8d653b97b6"] .formkit-alert{text-align:center;background:#f9fafb;border:1px solid #e3e3e3;border-radius:5px;-webkit-flex:1 0 auto;-ms-flex:1 0 auto;flex:1 0 auto;width:100%;margin:25px auto;padding:12px;list-style:none}.formkit-form[data-uid="8d653b97b6"] .formkit-alert:empty{display:none}.formkit-form[data-uid="8d653b97b6"] .formkit-alert-success{color:#0c905c;background:#d3fbeb;border-color:#10bf7a}.formkit-form[data-uid="8d653b97b6"] .formkit-alert-error{color:#ea4110;background:#fde8e2;border-color:#f2643b}.formkit-form[data-uid="8d653b97b6"] .formkit-spinner{text-align:center;width:0;height:0;margin:0 auto;-webkit-transition:all .3s ease-in-out;transition:all .3s ease-in-out;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;position:absolute;top:0;left:0;right:0;overflow:hidden}.formkit-form[data-uid="8d653b97b6"] .formkit-spinner>div{opacity:.3;background-color:#fff;border-radius:100%;width:12px;height:12px;margin:auto;-webkit-animation:1.4s ease-in-out infinite both formkit-bouncedelay-formkit-form-data-uid-8d653b97b6-;animation:1.4s ease-in-out infinite both formkit-bouncedelay-formkit-form-data-uid-8d653b97b6-;display:inline-block}.formkit-form[data-uid="8d653b97b6"] .formkit-spinner>div:first-child{-webkit-animation-delay:-.32s;animation-delay:-.32s}.formkit-form[data-uid="8d653b97b6"] .formkit-spinner>div:nth-child(2){-webkit-animation-delay:-.16s;animation-delay:-.16s}.formkit-form[data-uid="8d653b97b6"] .formkit-submit[data-active] .formkit-spinner{opacity:1;width:50px;height:100%}.formkit-form[data-uid="8d653b97b6"] .formkit-submit[data-active] .formkit-spinner~span{opacity:0}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by[data-active=false]{opacity:.35}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit-container{z-index:5;width:100%;margin:10px 0;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;position:relative}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit-container[data-active=false]{opacity:.35}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit{color:#373f45;cursor:pointer;opacity:.95;text-indent:100%;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-color:#fff;background-image:url("data:image/svg+xml;charset=utf8,%3Csvg width='162' height='20' viewBox='0 0 162 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M83.0561 15.2457C86.675 15.2457 89.4722 12.5154 89.4722 9.14749C89.4722 5.99211 86.8443 4.06563 85.1038 4.06563C82.6801 4.06563 80.7373 5.76407 80.4605 8.28551C80.4092 8.75244 80.0387 9.14403 79.5686 9.14069C78.7871 9.13509 77.6507 9.12841 76.9314 9.13092C76.6217 9.13199 76.3658 8.88106 76.381 8.57196C76.4895 6.38513 77.2218 4.3404 78.618 2.76974C80.1695 1.02445 82.4289 0 85.1038 0C89.5979 0 93.8406 4.07791 93.8406 9.14749C93.8406 14.7608 89.1832 19.3113 83.1517 19.3113C78.8502 19.3113 74.5179 16.5041 73.0053 12.5795C72.9999 12.565 72.9986 12.5492 73.0015 12.534C73.0218 12.4179 73.0617 12.3118 73.1011 12.2074C73.1583 12.0555 73.2143 11.907 73.2062 11.7359L73.18 11.1892C73.174 11.0569 73.2075 10.9258 73.2764 10.8127C73.3452 10.6995 73.4463 10.6094 73.5666 10.554L73.7852 10.4523C73.9077 10.3957 74.0148 10.3105 74.0976 10.204C74.1803 10.0974 74.2363 9.97252 74.2608 9.83983C74.3341 9.43894 74.6865 9.14749 75.0979 9.14749C75.7404 9.14749 76.299 9.57412 76.5088 10.1806C77.5188 13.1 79.1245 15.2457 83.0561 15.2457Z' fill='%23373F45'/%3E%3Cpath d='M155.758 6.91365C155.028 6.91365 154.804 6.47916 154.804 5.98857C154.804 5.46997 154.986 5.06348 155.758 5.06348C156.53 5.06348 156.712 5.46997 156.712 5.98857C156.712 6.47905 156.516 6.91365 155.758 6.91365ZM142.441 12.9304V9.32833L141.415 9.32323V8.90392C141.415 8.44719 141.786 8.07758 142.244 8.07986L142.441 8.08095V6.55306L144.082 6.09057V8.08073H145.569V8.50416C145.569 8.61242 145.548 8.71961 145.506 8.81961C145.465 8.91961 145.404 9.01047 145.328 9.08699C145.251 9.16351 145.16 9.2242 145.06 9.26559C144.96 9.30698 144.853 9.32826 144.745 9.32822H144.082V12.7201C144.082 13.2423 144.378 13.4256 144.76 13.4887C145.209 13.5629 145.583 13.888 145.583 14.343V14.9626C144.029 14.9626 142.441 14.8942 142.441 12.9304Z' fill='%23373F45'/%3E%3Cpath d='M110.058 7.92554C108.417 7.88344 106.396 8.92062 106.396 11.5137C106.396 14.0646 108.417 15.0738 110.058 15.0318C111.742 15.0738 113.748 14.0646 113.748 11.5137C113.748 8.92062 111.742 7.88344 110.058 7.92554ZM110.07 13.7586C108.878 13.7586 108.032 12.8905 108.032 11.461C108.032 10.1013 108.878 9.20569 110.071 9.20569C111.263 9.20569 112.101 10.0995 112.101 11.459C112.101 12.8887 111.263 13.7586 110.07 13.7586Z' fill='%23373F45'/%3E%3Cpath d='M118.06 7.94098C119.491 7.94098 120.978 8.33337 120.978 11.1366V14.893H120.063C119.608 14.893 119.238 14.524 119.238 14.0689V10.9965C119.238 9.66506 118.747 9.16047 117.891 9.16047C117.414 9.16047 116.797 9.52486 116.502 9.81915V14.069C116.502 14.1773 116.481 14.2845 116.44 14.3845C116.398 14.4845 116.337 14.5753 116.261 14.6519C116.184 14.7284 116.093 14.7891 115.993 14.8305C115.893 14.8719 115.786 14.8931 115.678 14.8931H114.847V8.10918H115.773C115.932 8.10914 116.087 8.16315 116.212 8.26242C116.337 8.36168 116.424 8.50033 116.46 8.65577C116.881 8.19328 117.428 7.94098 118.06 7.94098ZM122.854 8.09713C123.024 8.09708 123.19 8.1496 123.329 8.2475C123.468 8.34541 123.574 8.48391 123.631 8.64405L125.133 12.8486L126.635 8.64415C126.692 8.48402 126.798 8.34551 126.937 8.2476C127.076 8.1497 127.242 8.09718 127.412 8.09724H128.598L126.152 14.3567C126.091 14.5112 125.986 14.6439 125.849 14.7374C125.711 14.831 125.549 14.881 125.383 14.8809H124.333L121.668 8.09713H122.854Z' fill='%23373F45'/%3E%3Cpath d='M135.085 14.5514C134.566 14.7616 133.513 15.0416 132.418 15.0416C130.496 15.0416 129.024 13.9345 129.024 11.4396C129.024 9.19701 130.451 7.99792 132.191 7.99792C134.338 7.99792 135.254 9.4378 135.158 11.3979C135.139 11.8029 134.786 12.0983 134.38 12.0983H130.679C130.763 13.1916 131.562 13.7662 132.615 13.7662C133.028 13.7662 133.462 13.7452 133.983 13.6481C134.535 13.545 135.085 13.9375 135.085 14.4985V14.5514ZM133.673 10.949C133.785 9.87621 133.061 9.28752 132.191 9.28752C131.321 9.28752 130.734 9.93979 130.679 10.9489L133.673 10.949Z' fill='%23373F45'/%3E%3Cpath d='M137.345 8.11122C137.497 8.11118 137.645 8.16229 137.765 8.25635C137.884 8.35041 137.969 8.48197 138.005 8.62993C138.566 8.20932 139.268 7.94303 139.759 7.94303C139.801 7.94303 140.068 7.94303 140.489 7.99913V8.7265C140.489 9.11748 140.15 9.4147 139.759 9.4147C139.31 9.4147 138.651 9.5829 138.131 9.8773V14.8951H136.462V8.11112L137.345 8.11122ZM156.6 14.0508V8.09104H155.769C155.314 8.09104 154.944 8.45999 154.944 8.9151V14.8748H155.775C156.23 14.8748 156.6 14.5058 156.6 14.0508ZM158.857 12.9447V9.34254H157.749V8.91912C157.749 8.46401 158.118 8.09506 158.574 8.09506H158.857V6.56739L160.499 6.10479V8.09506H161.986V8.51848C161.986 8.97359 161.617 9.34254 161.161 9.34254H160.499V12.7345C160.499 13.2566 160.795 13.44 161.177 13.503C161.626 13.5774 162 13.9024 162 14.3574V14.977C160.446 14.977 158.857 14.9086 158.857 12.9447ZM98.1929 10.1124C98.2033 6.94046 100.598 5.16809 102.895 5.16809C104.171 5.16809 105.342 5.44285 106.304 6.12953L105.914 6.6631C105.654 7.02011 105.16 7.16194 104.749 6.99949C104.169 6.7702 103.622 6.7218 103.215 6.7218C101.335 6.7218 99.9169 7.92849 99.9068 10.1123C99.9169 12.2959 101.335 13.5201 103.215 13.5201C103.622 13.5201 104.169 13.4717 104.749 13.2424C105.16 13.0799 105.654 13.2046 105.914 13.5615L106.304 14.0952C105.342 14.7819 104.171 15.0566 102.895 15.0566C100.598 15.0566 98.2033 13.2842 98.1929 10.1124ZM147.619 5.21768C148.074 5.21768 148.444 5.58663 148.444 6.04174V9.81968L151.82 5.58131C151.897 5.47733 151.997 5.39282 152.112 5.3346C152.227 5.27638 152.355 5.24607 152.484 5.24611H153.984L150.166 10.0615L153.984 14.8749H152.484C152.355 14.8749 152.227 14.8446 152.112 14.7864C151.997 14.7281 151.897 14.6436 151.82 14.5397L148.444 10.3025V14.0508C148.444 14.5059 148.074 14.8749 147.619 14.8749H146.746V5.21768H147.619Z' fill='%23373F45'/%3E%3Cpath d='M0.773438 6.5752H2.68066C3.56543 6.5752 4.2041 6.7041 4.59668 6.96191C4.99219 7.21973 5.18994 7.62695 5.18994 8.18359C5.18994 8.55859 5.09326 8.87061 4.8999 9.11963C4.70654 9.36865 4.42822 9.52539 4.06494 9.58984V9.63379C4.51611 9.71875 4.84717 9.88721 5.05811 10.1392C5.27197 10.3882 5.37891 10.7266 5.37891 11.1543C5.37891 11.7314 5.17676 12.1841 4.77246 12.5122C4.37109 12.8374 3.81152 13 3.09375 13H0.773438V6.5752ZM1.82373 9.22949H2.83447C3.27393 9.22949 3.59473 9.16064 3.79688 9.02295C3.99902 8.88232 4.1001 8.64502 4.1001 8.31104C4.1001 8.00928 3.99023 7.79102 3.77051 7.65625C3.55371 7.52148 3.20801 7.4541 2.7334 7.4541H1.82373V9.22949ZM1.82373 10.082V12.1167H2.93994C3.37939 12.1167 3.71045 12.0332 3.93311 11.8662C4.15869 11.6963 4.27148 11.4297 4.27148 11.0664C4.27148 10.7324 4.15723 10.4849 3.92871 10.3237C3.7002 10.1626 3.35303 10.082 2.88721 10.082H1.82373Z' fill='%23373F45'/%3E%3Cpath d='M13.011 6.5752V10.7324C13.011 11.207 12.9084 11.623 12.7034 11.9805C12.5012 12.335 12.2068 12.6089 11.8201 12.8022C11.4363 12.9927 10.9763 13.0879 10.4402 13.0879C9.6433 13.0879 9.02368 12.877 8.5813 12.4551C8.13892 12.0332 7.91772 11.4531 7.91772 10.7148V6.5752H8.9724V10.6401C8.9724 11.1704 9.09546 11.5615 9.34155 11.8135C9.58765 12.0654 9.96557 12.1914 10.4753 12.1914C11.4656 12.1914 11.9607 11.6714 11.9607 10.6313V6.5752H13.011Z' fill='%23373F45'/%3E%3Cpath d='M15.9146 13V6.5752H16.9649V13H15.9146Z' fill='%23373F45'/%3E%3Cpath d='M19.9255 13V6.5752H20.9758V12.0991H23.696V13H19.9255Z' fill='%23373F45'/%3E%3Cpath d='M28.2828 13H27.2325V7.47607H25.3428V6.5752H30.1724V7.47607H28.2828V13Z' fill='%23373F45'/%3E%3Cpath d='M41.9472 13H40.8046L39.7148 9.16796C39.6679 9.00097 39.6093 8.76074 39.539 8.44727C39.4687 8.13086 39.4262 7.91113 39.4116 7.78809C39.3823 7.97559 39.3339 8.21875 39.2665 8.51758C39.2021 8.81641 39.1479 9.03905 39.1039 9.18554L38.0405 13H36.8979L36.0673 9.7832L35.2236 6.5752H36.2958L37.2143 10.3193C37.3578 10.9199 37.4604 11.4502 37.5219 11.9102C37.5541 11.6611 37.6025 11.3828 37.6669 11.0752C37.7314 10.7676 37.79 10.5186 37.8427 10.3281L38.8886 6.5752H39.9301L41.0024 10.3457C41.1049 10.6943 41.2133 11.2158 41.3276 11.9102C41.3715 11.4912 41.477 10.958 41.644 10.3105L42.558 6.5752H43.6215L41.9472 13Z' fill='%23373F45'/%3E%3Cpath d='M45.7957 13V6.5752H46.846V13H45.7957Z' fill='%23373F45'/%3E%3Cpath d='M52.0258 13H50.9755V7.47607H49.0859V6.5752H53.9155V7.47607H52.0258V13Z' fill='%23373F45'/%3E%3Cpath d='M61.2312 13H60.1765V10.104H57.2146V13H56.1643V6.5752H57.2146V9.20312H60.1765V6.5752H61.2312V13Z' fill='%23373F45'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;border:1px solid #dde2e7;border-radius:4px;align-items:center;width:190px;height:36px;margin:0 auto;padding:0;-webkit-text-decoration:none;text-decoration:none;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out;display:block;overflow:hidden}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit:hover,.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit:focus{opacity:1;background-color:#fff;-webkit-transform:scale(1.025)perspective(1px);-ms-transform:scale(1.025)perspective(1px);transform:scale(1.025)perspective(1px)}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit[data-variant=dark],.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit[data-variant=light]{background-color:#0000;border-color:#0000;width:166px}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit[data-variant=light]{color:#fff;background-image:url("data:image/svg+xml;charset=utf8,%3Csvg width='162' height='20' viewBox='0 0 162 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M83.0561 15.2457C86.675 15.2457 89.4722 12.5154 89.4722 9.14749C89.4722 5.99211 86.8443 4.06563 85.1038 4.06563C82.6801 4.06563 80.7373 5.76407 80.4605 8.28551C80.4092 8.75244 80.0387 9.14403 79.5686 9.14069C78.7871 9.13509 77.6507 9.12841 76.9314 9.13092C76.6217 9.13199 76.3658 8.88106 76.381 8.57196C76.4895 6.38513 77.2218 4.3404 78.618 2.76974C80.1695 1.02445 82.4289 0 85.1038 0C89.5979 0 93.8406 4.07791 93.8406 9.14749C93.8406 14.7608 89.1832 19.3113 83.1517 19.3113C78.8502 19.3113 74.5179 16.5041 73.0053 12.5795C72.9999 12.565 72.9986 12.5492 73.0015 12.534C73.0218 12.4179 73.0617 12.3118 73.1011 12.2074C73.1583 12.0555 73.2143 11.907 73.2062 11.7359L73.18 11.1892C73.174 11.0569 73.2075 10.9258 73.2764 10.8127C73.3452 10.6995 73.4463 10.6094 73.5666 10.554L73.7852 10.4523C73.9077 10.3957 74.0148 10.3105 74.0976 10.204C74.1803 10.0974 74.2363 9.97252 74.2608 9.83983C74.3341 9.43894 74.6865 9.14749 75.0979 9.14749C75.7404 9.14749 76.299 9.57412 76.5088 10.1806C77.5188 13.1 79.1245 15.2457 83.0561 15.2457Z' fill='white'/%3E%3Cpath d='M155.758 6.91365C155.028 6.91365 154.804 6.47916 154.804 5.98857C154.804 5.46997 154.986 5.06348 155.758 5.06348C156.53 5.06348 156.712 5.46997 156.712 5.98857C156.712 6.47905 156.516 6.91365 155.758 6.91365ZM142.441 12.9304V9.32833L141.415 9.32323V8.90392C141.415 8.44719 141.786 8.07758 142.244 8.07986L142.441 8.08095V6.55306L144.082 6.09057V8.08073H145.569V8.50416C145.569 8.61242 145.548 8.71961 145.506 8.81961C145.465 8.91961 145.404 9.01047 145.328 9.08699C145.251 9.16351 145.16 9.2242 145.06 9.26559C144.96 9.30698 144.853 9.32826 144.745 9.32822H144.082V12.7201C144.082 13.2423 144.378 13.4256 144.76 13.4887C145.209 13.5629 145.583 13.888 145.583 14.343V14.9626C144.029 14.9626 142.441 14.8942 142.441 12.9304Z' fill='white'/%3E%3Cpath d='M110.058 7.92554C108.417 7.88344 106.396 8.92062 106.396 11.5137C106.396 14.0646 108.417 15.0738 110.058 15.0318C111.742 15.0738 113.748 14.0646 113.748 11.5137C113.748 8.92062 111.742 7.88344 110.058 7.92554ZM110.07 13.7586C108.878 13.7586 108.032 12.8905 108.032 11.461C108.032 10.1013 108.878 9.20569 110.071 9.20569C111.263 9.20569 112.101 10.0995 112.101 11.459C112.101 12.8887 111.263 13.7586 110.07 13.7586Z' fill='white'/%3E%3Cpath d='M118.06 7.94098C119.491 7.94098 120.978 8.33337 120.978 11.1366V14.893H120.063C119.608 14.893 119.238 14.524 119.238 14.0689V10.9965C119.238 9.66506 118.747 9.16047 117.891 9.16047C117.414 9.16047 116.797 9.52486 116.502 9.81915V14.069C116.502 14.1773 116.481 14.2845 116.44 14.3845C116.398 14.4845 116.337 14.5753 116.261 14.6519C116.184 14.7284 116.093 14.7891 115.993 14.8305C115.893 14.8719 115.786 14.8931 115.678 14.8931H114.847V8.10918H115.773C115.932 8.10914 116.087 8.16315 116.212 8.26242C116.337 8.36168 116.424 8.50033 116.46 8.65577C116.881 8.19328 117.428 7.94098 118.06 7.94098ZM122.854 8.09713C123.024 8.09708 123.19 8.1496 123.329 8.2475C123.468 8.34541 123.574 8.48391 123.631 8.64405L125.133 12.8486L126.635 8.64415C126.692 8.48402 126.798 8.34551 126.937 8.2476C127.076 8.1497 127.242 8.09718 127.412 8.09724H128.598L126.152 14.3567C126.091 14.5112 125.986 14.6439 125.849 14.7374C125.711 14.831 125.549 14.881 125.383 14.8809H124.333L121.668 8.09713H122.854Z' fill='white'/%3E%3Cpath d='M135.085 14.5514C134.566 14.7616 133.513 15.0416 132.418 15.0416C130.496 15.0416 129.024 13.9345 129.024 11.4396C129.024 9.19701 130.451 7.99792 132.191 7.99792C134.338 7.99792 135.254 9.4378 135.158 11.3979C135.139 11.8029 134.786 12.0983 134.38 12.0983H130.679C130.763 13.1916 131.562 13.7662 132.615 13.7662C133.028 13.7662 133.462 13.7452 133.983 13.6481C134.535 13.545 135.085 13.9375 135.085 14.4985V14.5514ZM133.673 10.949C133.785 9.87621 133.061 9.28752 132.191 9.28752C131.321 9.28752 130.734 9.93979 130.679 10.9489L133.673 10.949Z' fill='white'/%3E%3Cpath d='M137.345 8.11122C137.497 8.11118 137.645 8.16229 137.765 8.25635C137.884 8.35041 137.969 8.48197 138.005 8.62993C138.566 8.20932 139.268 7.94303 139.759 7.94303C139.801 7.94303 140.068 7.94303 140.489 7.99913V8.7265C140.489 9.11748 140.15 9.4147 139.759 9.4147C139.31 9.4147 138.651 9.5829 138.131 9.8773V14.8951H136.462V8.11112L137.345 8.11122ZM156.6 14.0508V8.09104H155.769C155.314 8.09104 154.944 8.45999 154.944 8.9151V14.8748H155.775C156.23 14.8748 156.6 14.5058 156.6 14.0508ZM158.857 12.9447V9.34254H157.749V8.91912C157.749 8.46401 158.118 8.09506 158.574 8.09506H158.857V6.56739L160.499 6.10479V8.09506H161.986V8.51848C161.986 8.97359 161.617 9.34254 161.161 9.34254H160.499V12.7345C160.499 13.2566 160.795 13.44 161.177 13.503C161.626 13.5774 162 13.9024 162 14.3574V14.977C160.446 14.977 158.857 14.9086 158.857 12.9447ZM98.1929 10.1124C98.2033 6.94046 100.598 5.16809 102.895 5.16809C104.171 5.16809 105.342 5.44285 106.304 6.12953L105.914 6.6631C105.654 7.02011 105.16 7.16194 104.749 6.99949C104.169 6.7702 103.622 6.7218 103.215 6.7218C101.335 6.7218 99.9169 7.92849 99.9068 10.1123C99.9169 12.2959 101.335 13.5201 103.215 13.5201C103.622 13.5201 104.169 13.4717 104.749 13.2424C105.16 13.0799 105.654 13.2046 105.914 13.5615L106.304 14.0952C105.342 14.7819 104.171 15.0566 102.895 15.0566C100.598 15.0566 98.2033 13.2842 98.1929 10.1124ZM147.619 5.21768C148.074 5.21768 148.444 5.58663 148.444 6.04174V9.81968L151.82 5.58131C151.897 5.47733 151.997 5.39282 152.112 5.3346C152.227 5.27638 152.355 5.24607 152.484 5.24611H153.984L150.166 10.0615L153.984 14.8749H152.484C152.355 14.8749 152.227 14.8446 152.112 14.7864C151.997 14.7281 151.897 14.6436 151.82 14.5397L148.444 10.3025V14.0508C148.444 14.5059 148.074 14.8749 147.619 14.8749H146.746V5.21768H147.619Z' fill='white'/%3E%3Cpath d='M0.773438 6.5752H2.68066C3.56543 6.5752 4.2041 6.7041 4.59668 6.96191C4.99219 7.21973 5.18994 7.62695 5.18994 8.18359C5.18994 8.55859 5.09326 8.87061 4.8999 9.11963C4.70654 9.36865 4.42822 9.52539 4.06494 9.58984V9.63379C4.51611 9.71875 4.84717 9.88721 5.05811 10.1392C5.27197 10.3882 5.37891 10.7266 5.37891 11.1543C5.37891 11.7314 5.17676 12.1841 4.77246 12.5122C4.37109 12.8374 3.81152 13 3.09375 13H0.773438V6.5752ZM1.82373 9.22949H2.83447C3.27393 9.22949 3.59473 9.16064 3.79688 9.02295C3.99902 8.88232 4.1001 8.64502 4.1001 8.31104C4.1001 8.00928 3.99023 7.79102 3.77051 7.65625C3.55371 7.52148 3.20801 7.4541 2.7334 7.4541H1.82373V9.22949ZM1.82373 10.082V12.1167H2.93994C3.37939 12.1167 3.71045 12.0332 3.93311 11.8662C4.15869 11.6963 4.27148 11.4297 4.27148 11.0664C4.27148 10.7324 4.15723 10.4849 3.92871 10.3237C3.7002 10.1626 3.35303 10.082 2.88721 10.082H1.82373Z' fill='white'/%3E%3Cpath d='M13.011 6.5752V10.7324C13.011 11.207 12.9084 11.623 12.7034 11.9805C12.5012 12.335 12.2068 12.6089 11.8201 12.8022C11.4363 12.9927 10.9763 13.0879 10.4402 13.0879C9.6433 13.0879 9.02368 12.877 8.5813 12.4551C8.13892 12.0332 7.91772 11.4531 7.91772 10.7148V6.5752H8.9724V10.6401C8.9724 11.1704 9.09546 11.5615 9.34155 11.8135C9.58765 12.0654 9.96557 12.1914 10.4753 12.1914C11.4656 12.1914 11.9607 11.6714 11.9607 10.6313V6.5752H13.011Z' fill='white'/%3E%3Cpath d='M15.9146 13V6.5752H16.9649V13H15.9146Z' fill='white'/%3E%3Cpath d='M19.9255 13V6.5752H20.9758V12.0991H23.696V13H19.9255Z' fill='white'/%3E%3Cpath d='M28.2828 13H27.2325V7.47607H25.3428V6.5752H30.1724V7.47607H28.2828V13Z' fill='white'/%3E%3Cpath d='M41.9472 13H40.8046L39.7148 9.16796C39.6679 9.00097 39.6093 8.76074 39.539 8.44727C39.4687 8.13086 39.4262 7.91113 39.4116 7.78809C39.3823 7.97559 39.3339 8.21875 39.2665 8.51758C39.2021 8.81641 39.1479 9.03905 39.1039 9.18554L38.0405 13H36.8979L36.0673 9.7832L35.2236 6.5752H36.2958L37.2143 10.3193C37.3578 10.9199 37.4604 11.4502 37.5219 11.9102C37.5541 11.6611 37.6025 11.3828 37.6669 11.0752C37.7314 10.7676 37.79 10.5186 37.8427 10.3281L38.8886 6.5752H39.9301L41.0024 10.3457C41.1049 10.6943 41.2133 11.2158 41.3276 11.9102C41.3715 11.4912 41.477 10.958 41.644 10.3105L42.558 6.5752H43.6215L41.9472 13Z' fill='white'/%3E%3Cpath d='M45.7957 13V6.5752H46.846V13H45.7957Z' fill='white'/%3E%3Cpath d='M52.0258 13H50.9755V7.47607H49.0859V6.5752H53.9155V7.47607H52.0258V13Z' fill='white'/%3E%3Cpath d='M61.2312 13H60.1765V10.104H57.2146V13H56.1643V6.5752H57.2146V9.20312H60.1765V6.5752H61.2312V13Z' fill='white'/%3E%3C/svg%3E")}@-webkit-keyframes formkit-bouncedelay-formkit-form-data-uid-8d653b97b6-{0%,80%,to{-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0)}40%{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}@keyframes formkit-bouncedelay-formkit-form-data-uid-8d653b97b6-{0%,80%,to{-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0)}40%{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}.formkit-form[data-uid="8d653b97b6"] blockquote{border-left:5px solid #e1e1e1;margin:0 0 20px;padding:10px 20px}.formkit-form[data-uid="8d653b97b6"] .seva-custom-content{color:#fff;mix-blend-mode:difference;padding:15px;font-size:16px}.formkit-form[data-uid="8d653b97b6"]{max-width:700px}.formkit-form[data-uid="8d653b97b6"] [data-style=clean]{width:100%}.formkit-form[data-uid="8d653b97b6"] .formkit-fields{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;margin:0 auto;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.formkit-form[data-uid="8d653b97b6"] .formkit-field,.formkit-form[data-uid="8d653b97b6"] .formkit-submit{-webkit-flex:1 0 100%;-ms-flex:1 0 100%;flex:1 0 100%;margin:0 0 15px}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit-container{margin:0}.formkit-form[data-uid="8d653b97b6"] .formkit-submit{position:static}.formkit-form[data-uid="8d653b97b6"][min-width~="700"] [data-style=clean],.formkit-form[data-uid="8d653b97b6"][min-width~="800"] [data-style=clean]{padding:10px}.formkit-form[data-uid="8d653b97b6"][min-width~="700"] .formkit-fields[data-stacked=false],.formkit-form[data-uid="8d653b97b6"][min-width~="800"] .formkit-fields[data-stacked=false]{margin-left:-5px;margin-right:-5px}.formkit-form[data-uid="8d653b97b6"][min-width~="700"] .formkit-fields[data-stacked=false] .formkit-field,.formkit-form[data-uid="8d653b97b6"][min-width~="800"] .formkit-fields[data-stacked=false] .formkit-field,.formkit-form[data-uid="8d653b97b6"][min-width~="700"] .formkit-fields[data-stacked=false] .formkit-submit,.formkit-form[data-uid="8d653b97b6"][min-width~="800"] .formkit-fields[data-stacked=false] .formkit-submit{margin:0 5px 15px}.formkit-form[data-uid="8d653b97b6"][min-width~="700"] .formkit-fields[data-stacked=false] .formkit-field,.formkit-form[data-uid="8d653b97b6"][min-width~="800"] .formkit-fields[data-stacked=false] .formkit-field{-webkit-flex:100 auto;-ms-flex:100 auto;flex:100 auto}.formkit-form[data-uid="8d653b97b6"][min-width~="700"] .formkit-fields[data-stacked=false] .formkit-submit,.formkit-form[data-uid="8d653b97b6"][min-width~="800"] .formkit-fields[data-stacked=false] .formkit-submit{-webkit-flex:auto;-ms-flex:auto;flex:auto}</style></form>
</div><div><div class="quoteContainer_Karu"><figure class="tweetQuote_h8Rz"><blockquote><a href="https://twitter.com/jherr/status/1666578571912171520" target="_blank" rel="noreferrer nofollow">People always ask how I keep up to date, it's This Week In React.</a></blockquote><figcaption><a href="https://twitter.com/jherr" target="_blank" rel="noreferrer nofollow"><div class="avatar"><img alt="Jack Herrington" class="avatar__photo shadow--md avatarImg_b51M" src="https://unavatar.io/twitter/jherr?fallback=https://github.com/jherr.png"><div class="avatar__intro"><strong class="avatar__name"><cite>Jack Herrington</cite></strong><small class="avatar__subtitle" itemprop="description">Principal Engineer - Youtuber</small></div></div></a></figcaption></figure></div></div></div>
<div role="separator" style="text-align:center;margin:10px 0"><img class="separator" src="https://thisweekinreact.com/emails/separators/christmas.png" width="600" height="64" style="width:100%;max-width:600px;margin:0 auto;object-fit:contain"></div>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="sponsor1">💸 Sponsor<a href="https://thisweekinreact.com/newsletter/274#sponsor1" class="hash-link" aria-label="Direct link to 💸 Sponsor" title="Direct link to 💸 Sponsor">​</a></h2>
<p><a href="https://www.meticulous.ai/?utm_source=thisweekinreact&amp;utm_medium=newsletter&amp;utm_campaign=26q1&amp;utm_content=1st" target="_blank" rel="noopener noreferrer"><img decoding="async" loading="lazy" src="https://thisweekinreact.com/emails/issues/270/meticulous.jpg" alt="Still writing tests manually?" class="img_SS3x"></a></p>
<p><strong><a href="https://www.meticulous.ai/?utm_source=thisweekinreact&amp;utm_medium=newsletter&amp;utm_campaign=26q1&amp;utm_content=1st" target="_blank" rel="noopener noreferrer">Still writing tests manually?</a></strong></p>
<p>Notion, Dropbox and LaunchDarkly&nbsp;have found a new testing paradigm - and they can't imagine working without it.&nbsp;Built by <a href="https://www.meticulous.ai/?utm_source=thisweekinreact&amp;utm_medium=newsletter&amp;utm_campaign=11march&amp;utm_content=2nd" target="_blank" rel="noopener noreferrer">ex-Palantir engineers</a>, Meticulous autonomously creates a continuously evolving suite of E2E UI tests that delivers <a href="https://www.meticulous.ai/?utm_source=thisweekinreact&amp;utm_medium=newsletter&amp;utm_campaign=11march&amp;utm_content=2nd" target="_blank" rel="noopener noreferrer">near-exhaustive coverage</a> with <em>zero developer effort</em> - impossible to deliver by any other means.&nbsp;</p>
<p>It works like magic in the background:</p>
<ul>
<li>Near-exhaustive coverage on every test run</li>
<li>No test creation</li>
<li><strong>No maintenance (seriously)</strong></li>
<li>Zero flakes (built on a deterministic browser)</li>
</ul>
<p><strong>🤨</strong> Curious? <a href="https://www.meticulous.ai/?utm_source=thisweekinreact&amp;utm_medium=newsletter&amp;utm_campaign=11march&amp;utm_content=2nd" target="_blank" rel="noopener noreferrer">Book in a time to learn more</a></p>
<div role="separator" style="text-align:center;margin:10px 0"><img class="separator" src="https://thisweekinreact.com/emails/separators/christmas.png" width="600" height="64" style="width:100%;max-width:600px;margin:0 auto;object-fit:contain"></div>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="react">⚛️ React<a href="https://thisweekinreact.com/newsletter/274#react" class="hash-link" aria-label="Direct link to ⚛️ React" title="Direct link to ⚛️ React">​</a></h2>
<p><a href="https://nextjs.org/blog/next-16-2" target="_blank" rel="noopener noreferrer"><img decoding="async" loading="lazy" src="https://thisweekinreact.com/emails/issues/274/next.jpg" alt="Next.js 16.2" class="img_SS3x"></a></p>
<p><strong><a href="https://nextjs.org/blog/next-16-2" target="_blank" rel="noopener noreferrer">Next.js 16.2</a></strong></p>
<p>A great minor release that comes with significant performance improvements, but also impactful DX improvements and new interesting features:</p>
<ul>
<li>~400% faster <code>next dev</code> startup</li>
<li>~50% faster rendering thanks to a React core RSC contribution</li>
<li>Redesigned error page</li>
<li>Server Function logging in dev</li>
<li><code>next dev --inspect</code> to attach a Node.js debugger</li>
<li>Link <code>transitionTypes</code></li>
<li>Dev Overlay now renders <code>Error.cause</code> and a hydration diff indicator to identify client/server</li>
<li>Many new experimental features</li>
<li><a href="https://nextjs.org/blog/next-16-2-ai" target="_blank" rel="noopener noreferrer">AI improvements</a>: generates <code>AGENTS.md</code> to read versioned docs for agents, browser log forwarding, agent devtools CLI.</li>
<li><a href="https://nextjs.org/blog/next-16-2-turbopack" target="_blank" rel="noopener noreferrer">Turbopack improvements</a>: Faster builds, Server Fast Refresh, tree shaking of dynamic imports, PostCSS config, Subresource Integrity, inline loader config, and more.</li>
</ul>
<p>Related resources:</p>
<ul>
<li>📜<a href="https://aurorascharff.no/posts/implementing-nextjs-16-use-cache-with-next-intl-internationalization/" target="_blank" rel="noopener noreferrer">Implementing Next.js 16 'use cache' with next-intl Internationalization</a> - Recently updated to include usage of the new <code>experimental.rootParams</code> feature, letting cached components read the locale directly instead of receiving it as a prop.</li>
<li>📜 <a href="https://aurorascharff.no/posts/error-handling-in-nextjs-with-catch-error" target="_blank" rel="noopener noreferrer">Error Handling in Next.js with catchError</a> - This new <code>unstable_catchError()</code> API is a framework-aware alternative to <code>react-error-boundary</code> that discards Next.js control flow errors and can refetch RSC data.</li>
<li>🎥 <a href="https://www.youtube.com/watch?v=PXq6awYzfT8" target="_blank" rel="noopener noreferrer">Ankita Kulkarni - Next.js 16.2 Just Changed AI Coding Forever</a></li>
</ul>
<div role="separator" style="text-align:center;margin:10px 0"><img class="separator" src="https://thisweekinreact.com/emails/separators/christmas.png" width="600" height="64" style="width:100%;max-width:600px;margin:0 auto;object-fit:contain"></div>
<ul>
<li>💸 <a href="https://go.posthog.com/twir-mar25" target="_blank" rel="noopener noreferrer">Product for Engineers - WTF does a product manager do? (and why engineers should care)</a></li>
<li>📜 <a href="https://neciudan.dev/name-your-effects" target="_blank" rel="noopener noreferrer">Start naming your useEffect functions, you will thank me later</a> - Advocates for giving an inline name to Effect functions to convey your intent, even if it’s encapsulated within a custom hook. If you can’t find a decent name, maybe the Effect does too much or should not exist.</li>
<li>📜 <a href="https://saschb2b.com/blog/use-hook-react" target="_blank" rel="noopener noreferrer">use(): The Hook That Breaks the Rules (On Purpose)</a></li>
<li>📜 <a href="https://tkdodo.eu/blog/test-ids-are-an-a11y-smell" target="_blank" rel="noopener noreferrer">Test IDs are an a11y smell</a></li>
<li>📜 <a href="https://raphaelbronsveld.com/blog/type-safety-in-react-router" target="_blank" rel="noopener noreferrer">Type Safety in React Router</a></li>
<li>📜 <a href="https://pavi2410.com/blog/post-react-compiler-coding-guide/" target="_blank" rel="noopener noreferrer">Post-React Compiler React Coding Guide (For AI Agents)</a></li>
<li>💸 <a href="https://blog.sentry.io/setting-up-next-js-source-maps-sentry/?utm_source=thisweekinreact&amp;utm_medium=paid-community&amp;utm_campaign=nextjs-fy27q1-nextjs&amp;utm_content=newsletter-link-blog-sourcemaps-learnmore" target="_blank" rel="noopener noreferrer">Sentry - Why your Next.js stack traces point to random chunks (and how to fix it)</a></li>
<li>📦 <a href="https://github.com/remix-run/react-router/blob/main/CHANGELOG.md#v7132" target="_blank" rel="noopener noreferrer">React Router 7.13.1 &amp; 7.13.2</a> - Recent patches introduced new unstable APIs such as the <code>getRequest()</code> API for RSCs, and a future flag to access “pass-through” (un-normalized) <code>Request</code> objects. The <code>&lt;Link unstable_mask&gt;</code> makes it easier to implement URL masking, letting you replicate Instagram-like UX: open gallery images in a modal, and render them full screen on refresh.</li>
<li>📦 <a href="https://heroui.com/docs/react/releases/v3-0-0" target="_blank" rel="noopener noreferrer">HeroUI 3.0</a> - We usually don’t feature most UI libraries, but this one, based on React Aria and Tailwind, has been cooking for a while, and looks more polished than the average UI lib. Although it’s not a cross-platform abstraction, it offers a React Native variant using similar composition patterns and design tokens.</li>
<li>📦 <a href="https://github.com/storybookjs/storybook/releases/tag/v10.3.0" target="_blank" rel="noopener noreferrer">Storybook 10.3 - MCP, Vite 8, Next.js 16.2, ESLint 10</a> - There’s a dedicated article on the <a href="https://storybook.js.org/blog/storybook-mcp-for-react/" target="_blank" rel="noopener noreferrer">Storybook MCP for React</a><strong>.</strong></li>
<li>📦 <a href="https://lucide.dev/guide/version-1" target="_blank" rel="noopener noreferrer">Lucide Icons 1.0</a> - Quite popular icon solution in React and shacn/ui.</li>
<li>📦 <a href="https://github.com/facebook/lexical/releases/tag/v0.42.0" target="_blank" rel="noopener noreferrer">Lexical 0.42 - Extensible text editor framework from Meta</a></li>
<li>📦 <a href="https://github.com/ddoemonn/hiraki" target="_blank" rel="noopener noreferrer">Hiraki - Zero-dependency React drawer component</a></li>
<li>📦 <a href="https://github.com/vercel-labs/json-render/pull/240" target="_blank" rel="noopener noreferrer">json-render Ink - Generative UI for the terminal, comes with 27 React components</a></li>
<li>🎥 <a href="https://www.youtube.com/watch?v=EayVHo7XTEg" target="_blank" rel="noopener noreferrer">Jonny Burger - Remotion is getting even better!</a> - Cool features landed recently in the React video creation tool, such as Light Leaks, Sound Effects, Rspack, and AI-related improvements. Let’s not forget the <a href="https://www.youtube.com/watch?v=ppYO5COPGXk" target="_blank" rel="noopener noreferrer">integration with Vercel Sandbox</a>: I wouldn’t be surprised if we could soon fully vibe-code videos directly in the cloud.</li>
</ul>
<div class="card subscribeFormEmbed_aAcT"><p><strong>Don't miss the next email!</strong></p><div class="">
<script src="https://f.convertkit.com/ckjs/ck.5.js"></script>
      <form action="https://app.convertkit.com/forms/3472133/subscriptions" class="seva-form formkit-form" method="post" data-sv-form="3472133" data-uid="8d653b97b6" data-format="inline" data-version="5" data-options="{&quot;settings&quot;:{&quot;after_subscribe&quot;:{&quot;action&quot;:&quot;redirect&quot;,&quot;success_message&quot;:&quot;Success! Now check your email to confirm your subscription.&quot;,&quot;redirect_url&quot;:&quot;https://thisweekinreact.com/workflow/confirm-your-email&quot;},&quot;analytics&quot;:{&quot;google&quot;:null,&quot;fathom&quot;:null,&quot;facebook&quot;:null,&quot;segment&quot;:null,&quot;pinterest&quot;:null,&quot;sparkloop&quot;:null,&quot;googletagmanager&quot;:null},&quot;modal&quot;:{&quot;trigger&quot;:&quot;timer&quot;,&quot;scroll_percentage&quot;:null,&quot;timer&quot;:5,&quot;devices&quot;:&quot;all&quot;,&quot;show_once_every&quot;:15},&quot;powered_by&quot;:{&quot;show&quot;:false,&quot;url&quot;:&quot;https://convertkit.com/features/forms?lmref=d0748g&amp;utm_campaign=poweredby&amp;utm_content=form&amp;utm_medium=referral&amp;utm_source=dynamic&quot;},&quot;recaptcha&quot;:{&quot;enabled&quot;:false},&quot;return_visitor&quot;:{&quot;action&quot;:&quot;show&quot;,&quot;custom_content&quot;:&quot;&quot;},&quot;slide_in&quot;:{&quot;display_in&quot;:&quot;bottom_right&quot;,&quot;trigger&quot;:&quot;timer&quot;,&quot;scroll_percentage&quot;:null,&quot;timer&quot;:5,&quot;devices&quot;:&quot;all&quot;,&quot;show_once_every&quot;:15},&quot;sticky_bar&quot;:{&quot;display_in&quot;:&quot;top&quot;,&quot;trigger&quot;:&quot;timer&quot;,&quot;scroll_percentage&quot;:null,&quot;timer&quot;:5,&quot;devices&quot;:&quot;all&quot;,&quot;show_once_every&quot;:15}},&quot;version&quot;:&quot;5&quot;}" min-width="400 500 600 700 800"><div data-style="clean"><ul class="formkit-alert formkit-alert-error" data-element="errors" data-group="alert"></ul><div data-element="fields" data-stacked="false" class="seva-fields formkit-fields"><div class="formkit-field"><input class="formkit-input" name="email_address" aria-label="Email Address" placeholder="Email Address" required="" type="email" style="color: rgb(0, 0, 0); border-color: rgb(227, 227, 227); border-radius: 4px; font-weight: 700;"></div><button data-element="submit" class="formkit-submit formkit-submit" style="color: rgb(255, 255, 255); background-color: rgb(0, 54, 92); border-radius: 4px; font-weight: 700;"><div class="formkit-spinner"><div></div><div></div><div></div></div><span class="">Subscribe now!</span></button></div></div><style>.formkit-form[data-uid="8d653b97b6"] *{box-sizing:border-box}.formkit-form[data-uid="8d653b97b6"]{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.formkit-form[data-uid="8d653b97b6"] legend{font-size:inherit;border:none;margin-bottom:10px;padding:0;display:table;position:relative}.formkit-form[data-uid="8d653b97b6"] fieldset{border:0;min-width:0;margin:0;padding:.01em 0 0}.formkit-form[data-uid="8d653b97b6"] body:not(:-moz-handler-blocked) fieldset{display:table-cell}.formkit-form[data-uid="8d653b97b6"] h1,.formkit-form[data-uid="8d653b97b6"] h2,.formkit-form[data-uid="8d653b97b6"] h3,.formkit-form[data-uid="8d653b97b6"] h4,.formkit-form[data-uid="8d653b97b6"] h5,.formkit-form[data-uid="8d653b97b6"] h6{color:inherit;font-size:inherit;font-weight:inherit}.formkit-form[data-uid="8d653b97b6"] h2{margin:1em 0;font-size:1.5em}.formkit-form[data-uid="8d653b97b6"] h3{margin:1em 0;font-size:1.17em}.formkit-form[data-uid="8d653b97b6"] p{color:inherit;font-size:inherit;font-weight:inherit}.formkit-form[data-uid="8d653b97b6"] ol:not([template-default]),.formkit-form[data-uid="8d653b97b6"] ul:not([template-default]),.formkit-form[data-uid="8d653b97b6"] blockquote:not([template-default]){text-align:left}.formkit-form[data-uid="8d653b97b6"] p:not([template-default]),.formkit-form[data-uid="8d653b97b6"] hr:not([template-default]),.formkit-form[data-uid="8d653b97b6"] blockquote:not([template-default]),.formkit-form[data-uid="8d653b97b6"] ol:not([template-default]),.formkit-form[data-uid="8d653b97b6"] ul:not([template-default]){color:inherit;font-style:initial}.formkit-form[data-uid="8d653b97b6"] .ordered-list,.formkit-form[data-uid="8d653b97b6"] .unordered-list{padding-left:1em;list-style-position:outside!important}.formkit-form[data-uid="8d653b97b6"] .list-item{padding-left:0}.formkit-form[data-uid="8d653b97b6"][data-format=modal],.formkit-form[data-uid="8d653b97b6"][data-format=slide\ in],.formkit-form[data-uid="8d653b97b6"][data-format=sticky\ bar]{display:none}.formkit-sticky-bar .formkit-form[data-uid="8d653b97b6"][data-format=sticky\ bar]{display:block}.formkit-form[data-uid="8d653b97b6"] .formkit-input,.formkit-form[data-uid="8d653b97b6"] .formkit-select,.formkit-form[data-uid="8d653b97b6"] .formkit-checkboxes{width:100%}.formkit-form[data-uid="8d653b97b6"] .formkit-button,.formkit-form[data-uid="8d653b97b6"] .formkit-submit{color:#fff;cursor:pointer;text-align:center;cursor:pointer;vertical-align:middle;border:0;border-radius:5px;margin-bottom:15px;padding:0;font-size:15px;font-weight:500;display:inline-block;position:relative;overflow:hidden}.formkit-form[data-uid="8d653b97b6"] .formkit-button:hover,.formkit-form[data-uid="8d653b97b6"] .formkit-submit:hover,.formkit-form[data-uid="8d653b97b6"] .formkit-button:focus,.formkit-form[data-uid="8d653b97b6"] .formkit-submit:focus{outline:none}.formkit-form[data-uid="8d653b97b6"] .formkit-button:hover>span,.formkit-form[data-uid="8d653b97b6"] .formkit-submit:hover>span,.formkit-form[data-uid="8d653b97b6"] .formkit-button:focus>span,.formkit-form[data-uid="8d653b97b6"] .formkit-submit:focus>span{background-color:#0000001a}.formkit-form[data-uid="8d653b97b6"] .formkit-button>span,.formkit-form[data-uid="8d653b97b6"] .formkit-submit>span{padding:12px 24px;-webkit-transition:all .3s ease-in-out;transition:all .3s ease-in-out;display:block}.formkit-form[data-uid="8d653b97b6"] .formkit-input{background:#fff;border:1px solid #e3e3e3;-webkit-flex:1 0 auto;-ms-flex:1 0 auto;flex:1 0 auto;margin:0;padding:12px;font-size:15px;line-height:1.4;-webkit-transition:border-color .3s ease-out;transition:border-color .3s ease-out}.formkit-form[data-uid="8d653b97b6"] .formkit-input:focus{border-color:#1677be;outline:none;-webkit-transition:border-color .3s;transition:border-color .3s}.formkit-form[data-uid="8d653b97b6"] .formkit-input::-webkit-input-placeholder{color:inherit;opacity:.8}.formkit-form[data-uid="8d653b97b6"] .formkit-input::placeholder{color:inherit;opacity:.8}.formkit-form[data-uid="8d653b97b6"] .formkit-input:-ms-placeholder-shown{color:inherit;opacity:.8}.formkit-form[data-uid="8d653b97b6"] .formkit-input::placeholder{color:inherit;opacity:.8}.formkit-form[data-uid="8d653b97b6"] [data-group=dropdown]{width:100%;display:inline-block;position:relative}.formkit-form[data-uid="8d653b97b6"] [data-group=dropdown]:before{content:"";pointer-events:none;z-index:999;border:6px solid #0000;border-top-color:#4f4f4f;border-bottom-width:0;width:0;height:0;position:absolute;top:calc(50% - 2.5px);right:10px}.formkit-form[data-uid="8d653b97b6"] [data-group=dropdown] select{cursor:pointer;color:#333;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#fff;border:1px solid #e3e3e3;width:100%;height:auto;margin-bottom:0;padding:12px 25px 12px 12px;font-size:15px;line-height:1.4}.formkit-form[data-uid="8d653b97b6"] [data-group=dropdown] select:focus{outline:none}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes]{text-align:left;margin:0}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox]{margin-bottom:10px}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] *{cursor:pointer}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox]:last-of-type{margin-bottom:0}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] input[type=checkbox]{display:none}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] input[type=checkbox]+label:after{content:none}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] input[type=checkbox]:checked+label:after{content:"";border-color:#fff}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] input[type=checkbox]:checked+label:before{background:#10bf7a;border-color:#10bf7a}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] label{padding-left:28px;display:inline-block;position:relative}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] label:before,.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] label:after{content:"";display:inline-block;position:absolute}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] label:before{background:#fff;border:1px solid #e3e3e3;width:16px;height:16px;top:3px;left:0}.formkit-form[data-uid="8d653b97b6"] [data-group=checkboxes] [data-group=checkbox] label:after{border-bottom:2px solid #4d4d4d;border-left:2px solid #4d4d4d;width:8px;height:4px;top:8px;left:4px;-webkit-transform:rotate(-45deg);-ms-transform:rotate(-45deg);transform:rotate(-45deg)}.formkit-form[data-uid="8d653b97b6"] .formkit-alert{text-align:center;background:#f9fafb;border:1px solid #e3e3e3;border-radius:5px;-webkit-flex:1 0 auto;-ms-flex:1 0 auto;flex:1 0 auto;width:100%;margin:25px auto;padding:12px;list-style:none}.formkit-form[data-uid="8d653b97b6"] .formkit-alert:empty{display:none}.formkit-form[data-uid="8d653b97b6"] .formkit-alert-success{color:#0c905c;background:#d3fbeb;border-color:#10bf7a}.formkit-form[data-uid="8d653b97b6"] .formkit-alert-error{color:#ea4110;background:#fde8e2;border-color:#f2643b}.formkit-form[data-uid="8d653b97b6"] .formkit-spinner{text-align:center;width:0;height:0;margin:0 auto;-webkit-transition:all .3s ease-in-out;transition:all .3s ease-in-out;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;position:absolute;top:0;left:0;right:0;overflow:hidden}.formkit-form[data-uid="8d653b97b6"] .formkit-spinner>div{opacity:.3;background-color:#fff;border-radius:100%;width:12px;height:12px;margin:auto;-webkit-animation:1.4s ease-in-out infinite both formkit-bouncedelay-formkit-form-data-uid-8d653b97b6-;animation:1.4s ease-in-out infinite both formkit-bouncedelay-formkit-form-data-uid-8d653b97b6-;display:inline-block}.formkit-form[data-uid="8d653b97b6"] .formkit-spinner>div:first-child{-webkit-animation-delay:-.32s;animation-delay:-.32s}.formkit-form[data-uid="8d653b97b6"] .formkit-spinner>div:nth-child(2){-webkit-animation-delay:-.16s;animation-delay:-.16s}.formkit-form[data-uid="8d653b97b6"] .formkit-submit[data-active] .formkit-spinner{opacity:1;width:50px;height:100%}.formkit-form[data-uid="8d653b97b6"] .formkit-submit[data-active] .formkit-spinner~span{opacity:0}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by[data-active=false]{opacity:.35}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit-container{z-index:5;width:100%;margin:10px 0;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;position:relative}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit-container[data-active=false]{opacity:.35}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit{color:#373f45;cursor:pointer;opacity:.95;text-indent:100%;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-color:#fff;background-image:url("data:image/svg+xml;charset=utf8,%3Csvg width='162' height='20' viewBox='0 0 162 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M83.0561 15.2457C86.675 15.2457 89.4722 12.5154 89.4722 9.14749C89.4722 5.99211 86.8443 4.06563 85.1038 4.06563C82.6801 4.06563 80.7373 5.76407 80.4605 8.28551C80.4092 8.75244 80.0387 9.14403 79.5686 9.14069C78.7871 9.13509 77.6507 9.12841 76.9314 9.13092C76.6217 9.13199 76.3658 8.88106 76.381 8.57196C76.4895 6.38513 77.2218 4.3404 78.618 2.76974C80.1695 1.02445 82.4289 0 85.1038 0C89.5979 0 93.8406 4.07791 93.8406 9.14749C93.8406 14.7608 89.1832 19.3113 83.1517 19.3113C78.8502 19.3113 74.5179 16.5041 73.0053 12.5795C72.9999 12.565 72.9986 12.5492 73.0015 12.534C73.0218 12.4179 73.0617 12.3118 73.1011 12.2074C73.1583 12.0555 73.2143 11.907 73.2062 11.7359L73.18 11.1892C73.174 11.0569 73.2075 10.9258 73.2764 10.8127C73.3452 10.6995 73.4463 10.6094 73.5666 10.554L73.7852 10.4523C73.9077 10.3957 74.0148 10.3105 74.0976 10.204C74.1803 10.0974 74.2363 9.97252 74.2608 9.83983C74.3341 9.43894 74.6865 9.14749 75.0979 9.14749C75.7404 9.14749 76.299 9.57412 76.5088 10.1806C77.5188 13.1 79.1245 15.2457 83.0561 15.2457Z' fill='%23373F45'/%3E%3Cpath d='M155.758 6.91365C155.028 6.91365 154.804 6.47916 154.804 5.98857C154.804 5.46997 154.986 5.06348 155.758 5.06348C156.53 5.06348 156.712 5.46997 156.712 5.98857C156.712 6.47905 156.516 6.91365 155.758 6.91365ZM142.441 12.9304V9.32833L141.415 9.32323V8.90392C141.415 8.44719 141.786 8.07758 142.244 8.07986L142.441 8.08095V6.55306L144.082 6.09057V8.08073H145.569V8.50416C145.569 8.61242 145.548 8.71961 145.506 8.81961C145.465 8.91961 145.404 9.01047 145.328 9.08699C145.251 9.16351 145.16 9.2242 145.06 9.26559C144.96 9.30698 144.853 9.32826 144.745 9.32822H144.082V12.7201C144.082 13.2423 144.378 13.4256 144.76 13.4887C145.209 13.5629 145.583 13.888 145.583 14.343V14.9626C144.029 14.9626 142.441 14.8942 142.441 12.9304Z' fill='%23373F45'/%3E%3Cpath d='M110.058 7.92554C108.417 7.88344 106.396 8.92062 106.396 11.5137C106.396 14.0646 108.417 15.0738 110.058 15.0318C111.742 15.0738 113.748 14.0646 113.748 11.5137C113.748 8.92062 111.742 7.88344 110.058 7.92554ZM110.07 13.7586C108.878 13.7586 108.032 12.8905 108.032 11.461C108.032 10.1013 108.878 9.20569 110.071 9.20569C111.263 9.20569 112.101 10.0995 112.101 11.459C112.101 12.8887 111.263 13.7586 110.07 13.7586Z' fill='%23373F45'/%3E%3Cpath d='M118.06 7.94098C119.491 7.94098 120.978 8.33337 120.978 11.1366V14.893H120.063C119.608 14.893 119.238 14.524 119.238 14.0689V10.9965C119.238 9.66506 118.747 9.16047 117.891 9.16047C117.414 9.16047 116.797 9.52486 116.502 9.81915V14.069C116.502 14.1773 116.481 14.2845 116.44 14.3845C116.398 14.4845 116.337 14.5753 116.261 14.6519C116.184 14.7284 116.093 14.7891 115.993 14.8305C115.893 14.8719 115.786 14.8931 115.678 14.8931H114.847V8.10918H115.773C115.932 8.10914 116.087 8.16315 116.212 8.26242C116.337 8.36168 116.424 8.50033 116.46 8.65577C116.881 8.19328 117.428 7.94098 118.06 7.94098ZM122.854 8.09713C123.024 8.09708 123.19 8.1496 123.329 8.2475C123.468 8.34541 123.574 8.48391 123.631 8.64405L125.133 12.8486L126.635 8.64415C126.692 8.48402 126.798 8.34551 126.937 8.2476C127.076 8.1497 127.242 8.09718 127.412 8.09724H128.598L126.152 14.3567C126.091 14.5112 125.986 14.6439 125.849 14.7374C125.711 14.831 125.549 14.881 125.383 14.8809H124.333L121.668 8.09713H122.854Z' fill='%23373F45'/%3E%3Cpath d='M135.085 14.5514C134.566 14.7616 133.513 15.0416 132.418 15.0416C130.496 15.0416 129.024 13.9345 129.024 11.4396C129.024 9.19701 130.451 7.99792 132.191 7.99792C134.338 7.99792 135.254 9.4378 135.158 11.3979C135.139 11.8029 134.786 12.0983 134.38 12.0983H130.679C130.763 13.1916 131.562 13.7662 132.615 13.7662C133.028 13.7662 133.462 13.7452 133.983 13.6481C134.535 13.545 135.085 13.9375 135.085 14.4985V14.5514ZM133.673 10.949C133.785 9.87621 133.061 9.28752 132.191 9.28752C131.321 9.28752 130.734 9.93979 130.679 10.9489L133.673 10.949Z' fill='%23373F45'/%3E%3Cpath d='M137.345 8.11122C137.497 8.11118 137.645 8.16229 137.765 8.25635C137.884 8.35041 137.969 8.48197 138.005 8.62993C138.566 8.20932 139.268 7.94303 139.759 7.94303C139.801 7.94303 140.068 7.94303 140.489 7.99913V8.7265C140.489 9.11748 140.15 9.4147 139.759 9.4147C139.31 9.4147 138.651 9.5829 138.131 9.8773V14.8951H136.462V8.11112L137.345 8.11122ZM156.6 14.0508V8.09104H155.769C155.314 8.09104 154.944 8.45999 154.944 8.9151V14.8748H155.775C156.23 14.8748 156.6 14.5058 156.6 14.0508ZM158.857 12.9447V9.34254H157.749V8.91912C157.749 8.46401 158.118 8.09506 158.574 8.09506H158.857V6.56739L160.499 6.10479V8.09506H161.986V8.51848C161.986 8.97359 161.617 9.34254 161.161 9.34254H160.499V12.7345C160.499 13.2566 160.795 13.44 161.177 13.503C161.626 13.5774 162 13.9024 162 14.3574V14.977C160.446 14.977 158.857 14.9086 158.857 12.9447ZM98.1929 10.1124C98.2033 6.94046 100.598 5.16809 102.895 5.16809C104.171 5.16809 105.342 5.44285 106.304 6.12953L105.914 6.6631C105.654 7.02011 105.16 7.16194 104.749 6.99949C104.169 6.7702 103.622 6.7218 103.215 6.7218C101.335 6.7218 99.9169 7.92849 99.9068 10.1123C99.9169 12.2959 101.335 13.5201 103.215 13.5201C103.622 13.5201 104.169 13.4717 104.749 13.2424C105.16 13.0799 105.654 13.2046 105.914 13.5615L106.304 14.0952C105.342 14.7819 104.171 15.0566 102.895 15.0566C100.598 15.0566 98.2033 13.2842 98.1929 10.1124ZM147.619 5.21768C148.074 5.21768 148.444 5.58663 148.444 6.04174V9.81968L151.82 5.58131C151.897 5.47733 151.997 5.39282 152.112 5.3346C152.227 5.27638 152.355 5.24607 152.484 5.24611H153.984L150.166 10.0615L153.984 14.8749H152.484C152.355 14.8749 152.227 14.8446 152.112 14.7864C151.997 14.7281 151.897 14.6436 151.82 14.5397L148.444 10.3025V14.0508C148.444 14.5059 148.074 14.8749 147.619 14.8749H146.746V5.21768H147.619Z' fill='%23373F45'/%3E%3Cpath d='M0.773438 6.5752H2.68066C3.56543 6.5752 4.2041 6.7041 4.59668 6.96191C4.99219 7.21973 5.18994 7.62695 5.18994 8.18359C5.18994 8.55859 5.09326 8.87061 4.8999 9.11963C4.70654 9.36865 4.42822 9.52539 4.06494 9.58984V9.63379C4.51611 9.71875 4.84717 9.88721 5.05811 10.1392C5.27197 10.3882 5.37891 10.7266 5.37891 11.1543C5.37891 11.7314 5.17676 12.1841 4.77246 12.5122C4.37109 12.8374 3.81152 13 3.09375 13H0.773438V6.5752ZM1.82373 9.22949H2.83447C3.27393 9.22949 3.59473 9.16064 3.79688 9.02295C3.99902 8.88232 4.1001 8.64502 4.1001 8.31104C4.1001 8.00928 3.99023 7.79102 3.77051 7.65625C3.55371 7.52148 3.20801 7.4541 2.7334 7.4541H1.82373V9.22949ZM1.82373 10.082V12.1167H2.93994C3.37939 12.1167 3.71045 12.0332 3.93311 11.8662C4.15869 11.6963 4.27148 11.4297 4.27148 11.0664C4.27148 10.7324 4.15723 10.4849 3.92871 10.3237C3.7002 10.1626 3.35303 10.082 2.88721 10.082H1.82373Z' fill='%23373F45'/%3E%3Cpath d='M13.011 6.5752V10.7324C13.011 11.207 12.9084 11.623 12.7034 11.9805C12.5012 12.335 12.2068 12.6089 11.8201 12.8022C11.4363 12.9927 10.9763 13.0879 10.4402 13.0879C9.6433 13.0879 9.02368 12.877 8.5813 12.4551C8.13892 12.0332 7.91772 11.4531 7.91772 10.7148V6.5752H8.9724V10.6401C8.9724 11.1704 9.09546 11.5615 9.34155 11.8135C9.58765 12.0654 9.96557 12.1914 10.4753 12.1914C11.4656 12.1914 11.9607 11.6714 11.9607 10.6313V6.5752H13.011Z' fill='%23373F45'/%3E%3Cpath d='M15.9146 13V6.5752H16.9649V13H15.9146Z' fill='%23373F45'/%3E%3Cpath d='M19.9255 13V6.5752H20.9758V12.0991H23.696V13H19.9255Z' fill='%23373F45'/%3E%3Cpath d='M28.2828 13H27.2325V7.47607H25.3428V6.5752H30.1724V7.47607H28.2828V13Z' fill='%23373F45'/%3E%3Cpath d='M41.9472 13H40.8046L39.7148 9.16796C39.6679 9.00097 39.6093 8.76074 39.539 8.44727C39.4687 8.13086 39.4262 7.91113 39.4116 7.78809C39.3823 7.97559 39.3339 8.21875 39.2665 8.51758C39.2021 8.81641 39.1479 9.03905 39.1039 9.18554L38.0405 13H36.8979L36.0673 9.7832L35.2236 6.5752H36.2958L37.2143 10.3193C37.3578 10.9199 37.4604 11.4502 37.5219 11.9102C37.5541 11.6611 37.6025 11.3828 37.6669 11.0752C37.7314 10.7676 37.79 10.5186 37.8427 10.3281L38.8886 6.5752H39.9301L41.0024 10.3457C41.1049 10.6943 41.2133 11.2158 41.3276 11.9102C41.3715 11.4912 41.477 10.958 41.644 10.3105L42.558 6.5752H43.6215L41.9472 13Z' fill='%23373F45'/%3E%3Cpath d='M45.7957 13V6.5752H46.846V13H45.7957Z' fill='%23373F45'/%3E%3Cpath d='M52.0258 13H50.9755V7.47607H49.0859V6.5752H53.9155V7.47607H52.0258V13Z' fill='%23373F45'/%3E%3Cpath d='M61.2312 13H60.1765V10.104H57.2146V13H56.1643V6.5752H57.2146V9.20312H60.1765V6.5752H61.2312V13Z' fill='%23373F45'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;border:1px solid #dde2e7;border-radius:4px;align-items:center;width:190px;height:36px;margin:0 auto;padding:0;-webkit-text-decoration:none;text-decoration:none;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out;display:block;overflow:hidden}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit:hover,.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit:focus{opacity:1;background-color:#fff;-webkit-transform:scale(1.025)perspective(1px);-ms-transform:scale(1.025)perspective(1px);transform:scale(1.025)perspective(1px)}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit[data-variant=dark],.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit[data-variant=light]{background-color:#0000;border-color:#0000;width:166px}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit[data-variant=light]{color:#fff;background-image:url("data:image/svg+xml;charset=utf8,%3Csvg width='162' height='20' viewBox='0 0 162 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M83.0561 15.2457C86.675 15.2457 89.4722 12.5154 89.4722 9.14749C89.4722 5.99211 86.8443 4.06563 85.1038 4.06563C82.6801 4.06563 80.7373 5.76407 80.4605 8.28551C80.4092 8.75244 80.0387 9.14403 79.5686 9.14069C78.7871 9.13509 77.6507 9.12841 76.9314 9.13092C76.6217 9.13199 76.3658 8.88106 76.381 8.57196C76.4895 6.38513 77.2218 4.3404 78.618 2.76974C80.1695 1.02445 82.4289 0 85.1038 0C89.5979 0 93.8406 4.07791 93.8406 9.14749C93.8406 14.7608 89.1832 19.3113 83.1517 19.3113C78.8502 19.3113 74.5179 16.5041 73.0053 12.5795C72.9999 12.565 72.9986 12.5492 73.0015 12.534C73.0218 12.4179 73.0617 12.3118 73.1011 12.2074C73.1583 12.0555 73.2143 11.907 73.2062 11.7359L73.18 11.1892C73.174 11.0569 73.2075 10.9258 73.2764 10.8127C73.3452 10.6995 73.4463 10.6094 73.5666 10.554L73.7852 10.4523C73.9077 10.3957 74.0148 10.3105 74.0976 10.204C74.1803 10.0974 74.2363 9.97252 74.2608 9.83983C74.3341 9.43894 74.6865 9.14749 75.0979 9.14749C75.7404 9.14749 76.299 9.57412 76.5088 10.1806C77.5188 13.1 79.1245 15.2457 83.0561 15.2457Z' fill='white'/%3E%3Cpath d='M155.758 6.91365C155.028 6.91365 154.804 6.47916 154.804 5.98857C154.804 5.46997 154.986 5.06348 155.758 5.06348C156.53 5.06348 156.712 5.46997 156.712 5.98857C156.712 6.47905 156.516 6.91365 155.758 6.91365ZM142.441 12.9304V9.32833L141.415 9.32323V8.90392C141.415 8.44719 141.786 8.07758 142.244 8.07986L142.441 8.08095V6.55306L144.082 6.09057V8.08073H145.569V8.50416C145.569 8.61242 145.548 8.71961 145.506 8.81961C145.465 8.91961 145.404 9.01047 145.328 9.08699C145.251 9.16351 145.16 9.2242 145.06 9.26559C144.96 9.30698 144.853 9.32826 144.745 9.32822H144.082V12.7201C144.082 13.2423 144.378 13.4256 144.76 13.4887C145.209 13.5629 145.583 13.888 145.583 14.343V14.9626C144.029 14.9626 142.441 14.8942 142.441 12.9304Z' fill='white'/%3E%3Cpath d='M110.058 7.92554C108.417 7.88344 106.396 8.92062 106.396 11.5137C106.396 14.0646 108.417 15.0738 110.058 15.0318C111.742 15.0738 113.748 14.0646 113.748 11.5137C113.748 8.92062 111.742 7.88344 110.058 7.92554ZM110.07 13.7586C108.878 13.7586 108.032 12.8905 108.032 11.461C108.032 10.1013 108.878 9.20569 110.071 9.20569C111.263 9.20569 112.101 10.0995 112.101 11.459C112.101 12.8887 111.263 13.7586 110.07 13.7586Z' fill='white'/%3E%3Cpath d='M118.06 7.94098C119.491 7.94098 120.978 8.33337 120.978 11.1366V14.893H120.063C119.608 14.893 119.238 14.524 119.238 14.0689V10.9965C119.238 9.66506 118.747 9.16047 117.891 9.16047C117.414 9.16047 116.797 9.52486 116.502 9.81915V14.069C116.502 14.1773 116.481 14.2845 116.44 14.3845C116.398 14.4845 116.337 14.5753 116.261 14.6519C116.184 14.7284 116.093 14.7891 115.993 14.8305C115.893 14.8719 115.786 14.8931 115.678 14.8931H114.847V8.10918H115.773C115.932 8.10914 116.087 8.16315 116.212 8.26242C116.337 8.36168 116.424 8.50033 116.46 8.65577C116.881 8.19328 117.428 7.94098 118.06 7.94098ZM122.854 8.09713C123.024 8.09708 123.19 8.1496 123.329 8.2475C123.468 8.34541 123.574 8.48391 123.631 8.64405L125.133 12.8486L126.635 8.64415C126.692 8.48402 126.798 8.34551 126.937 8.2476C127.076 8.1497 127.242 8.09718 127.412 8.09724H128.598L126.152 14.3567C126.091 14.5112 125.986 14.6439 125.849 14.7374C125.711 14.831 125.549 14.881 125.383 14.8809H124.333L121.668 8.09713H122.854Z' fill='white'/%3E%3Cpath d='M135.085 14.5514C134.566 14.7616 133.513 15.0416 132.418 15.0416C130.496 15.0416 129.024 13.9345 129.024 11.4396C129.024 9.19701 130.451 7.99792 132.191 7.99792C134.338 7.99792 135.254 9.4378 135.158 11.3979C135.139 11.8029 134.786 12.0983 134.38 12.0983H130.679C130.763 13.1916 131.562 13.7662 132.615 13.7662C133.028 13.7662 133.462 13.7452 133.983 13.6481C134.535 13.545 135.085 13.9375 135.085 14.4985V14.5514ZM133.673 10.949C133.785 9.87621 133.061 9.28752 132.191 9.28752C131.321 9.28752 130.734 9.93979 130.679 10.9489L133.673 10.949Z' fill='white'/%3E%3Cpath d='M137.345 8.11122C137.497 8.11118 137.645 8.16229 137.765 8.25635C137.884 8.35041 137.969 8.48197 138.005 8.62993C138.566 8.20932 139.268 7.94303 139.759 7.94303C139.801 7.94303 140.068 7.94303 140.489 7.99913V8.7265C140.489 9.11748 140.15 9.4147 139.759 9.4147C139.31 9.4147 138.651 9.5829 138.131 9.8773V14.8951H136.462V8.11112L137.345 8.11122ZM156.6 14.0508V8.09104H155.769C155.314 8.09104 154.944 8.45999 154.944 8.9151V14.8748H155.775C156.23 14.8748 156.6 14.5058 156.6 14.0508ZM158.857 12.9447V9.34254H157.749V8.91912C157.749 8.46401 158.118 8.09506 158.574 8.09506H158.857V6.56739L160.499 6.10479V8.09506H161.986V8.51848C161.986 8.97359 161.617 9.34254 161.161 9.34254H160.499V12.7345C160.499 13.2566 160.795 13.44 161.177 13.503C161.626 13.5774 162 13.9024 162 14.3574V14.977C160.446 14.977 158.857 14.9086 158.857 12.9447ZM98.1929 10.1124C98.2033 6.94046 100.598 5.16809 102.895 5.16809C104.171 5.16809 105.342 5.44285 106.304 6.12953L105.914 6.6631C105.654 7.02011 105.16 7.16194 104.749 6.99949C104.169 6.7702 103.622 6.7218 103.215 6.7218C101.335 6.7218 99.9169 7.92849 99.9068 10.1123C99.9169 12.2959 101.335 13.5201 103.215 13.5201C103.622 13.5201 104.169 13.4717 104.749 13.2424C105.16 13.0799 105.654 13.2046 105.914 13.5615L106.304 14.0952C105.342 14.7819 104.171 15.0566 102.895 15.0566C100.598 15.0566 98.2033 13.2842 98.1929 10.1124ZM147.619 5.21768C148.074 5.21768 148.444 5.58663 148.444 6.04174V9.81968L151.82 5.58131C151.897 5.47733 151.997 5.39282 152.112 5.3346C152.227 5.27638 152.355 5.24607 152.484 5.24611H153.984L150.166 10.0615L153.984 14.8749H152.484C152.355 14.8749 152.227 14.8446 152.112 14.7864C151.997 14.7281 151.897 14.6436 151.82 14.5397L148.444 10.3025V14.0508C148.444 14.5059 148.074 14.8749 147.619 14.8749H146.746V5.21768H147.619Z' fill='white'/%3E%3Cpath d='M0.773438 6.5752H2.68066C3.56543 6.5752 4.2041 6.7041 4.59668 6.96191C4.99219 7.21973 5.18994 7.62695 5.18994 8.18359C5.18994 8.55859 5.09326 8.87061 4.8999 9.11963C4.70654 9.36865 4.42822 9.52539 4.06494 9.58984V9.63379C4.51611 9.71875 4.84717 9.88721 5.05811 10.1392C5.27197 10.3882 5.37891 10.7266 5.37891 11.1543C5.37891 11.7314 5.17676 12.1841 4.77246 12.5122C4.37109 12.8374 3.81152 13 3.09375 13H0.773438V6.5752ZM1.82373 9.22949H2.83447C3.27393 9.22949 3.59473 9.16064 3.79688 9.02295C3.99902 8.88232 4.1001 8.64502 4.1001 8.31104C4.1001 8.00928 3.99023 7.79102 3.77051 7.65625C3.55371 7.52148 3.20801 7.4541 2.7334 7.4541H1.82373V9.22949ZM1.82373 10.082V12.1167H2.93994C3.37939 12.1167 3.71045 12.0332 3.93311 11.8662C4.15869 11.6963 4.27148 11.4297 4.27148 11.0664C4.27148 10.7324 4.15723 10.4849 3.92871 10.3237C3.7002 10.1626 3.35303 10.082 2.88721 10.082H1.82373Z' fill='white'/%3E%3Cpath d='M13.011 6.5752V10.7324C13.011 11.207 12.9084 11.623 12.7034 11.9805C12.5012 12.335 12.2068 12.6089 11.8201 12.8022C11.4363 12.9927 10.9763 13.0879 10.4402 13.0879C9.6433 13.0879 9.02368 12.877 8.5813 12.4551C8.13892 12.0332 7.91772 11.4531 7.91772 10.7148V6.5752H8.9724V10.6401C8.9724 11.1704 9.09546 11.5615 9.34155 11.8135C9.58765 12.0654 9.96557 12.1914 10.4753 12.1914C11.4656 12.1914 11.9607 11.6714 11.9607 10.6313V6.5752H13.011Z' fill='white'/%3E%3Cpath d='M15.9146 13V6.5752H16.9649V13H15.9146Z' fill='white'/%3E%3Cpath d='M19.9255 13V6.5752H20.9758V12.0991H23.696V13H19.9255Z' fill='white'/%3E%3Cpath d='M28.2828 13H27.2325V7.47607H25.3428V6.5752H30.1724V7.47607H28.2828V13Z' fill='white'/%3E%3Cpath d='M41.9472 13H40.8046L39.7148 9.16796C39.6679 9.00097 39.6093 8.76074 39.539 8.44727C39.4687 8.13086 39.4262 7.91113 39.4116 7.78809C39.3823 7.97559 39.3339 8.21875 39.2665 8.51758C39.2021 8.81641 39.1479 9.03905 39.1039 9.18554L38.0405 13H36.8979L36.0673 9.7832L35.2236 6.5752H36.2958L37.2143 10.3193C37.3578 10.9199 37.4604 11.4502 37.5219 11.9102C37.5541 11.6611 37.6025 11.3828 37.6669 11.0752C37.7314 10.7676 37.79 10.5186 37.8427 10.3281L38.8886 6.5752H39.9301L41.0024 10.3457C41.1049 10.6943 41.2133 11.2158 41.3276 11.9102C41.3715 11.4912 41.477 10.958 41.644 10.3105L42.558 6.5752H43.6215L41.9472 13Z' fill='white'/%3E%3Cpath d='M45.7957 13V6.5752H46.846V13H45.7957Z' fill='white'/%3E%3Cpath d='M52.0258 13H50.9755V7.47607H49.0859V6.5752H53.9155V7.47607H52.0258V13Z' fill='white'/%3E%3Cpath d='M61.2312 13H60.1765V10.104H57.2146V13H56.1643V6.5752H57.2146V9.20312H60.1765V6.5752H61.2312V13Z' fill='white'/%3E%3C/svg%3E")}@-webkit-keyframes formkit-bouncedelay-formkit-form-data-uid-8d653b97b6-{0%,80%,to{-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0)}40%{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}@keyframes formkit-bouncedelay-formkit-form-data-uid-8d653b97b6-{0%,80%,to{-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0)}40%{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}.formkit-form[data-uid="8d653b97b6"] blockquote{border-left:5px solid #e1e1e1;margin:0 0 20px;padding:10px 20px}.formkit-form[data-uid="8d653b97b6"] .seva-custom-content{color:#fff;mix-blend-mode:difference;padding:15px;font-size:16px}.formkit-form[data-uid="8d653b97b6"]{max-width:700px}.formkit-form[data-uid="8d653b97b6"] [data-style=clean]{width:100%}.formkit-form[data-uid="8d653b97b6"] .formkit-fields{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;margin:0 auto;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.formkit-form[data-uid="8d653b97b6"] .formkit-field,.formkit-form[data-uid="8d653b97b6"] .formkit-submit{-webkit-flex:1 0 100%;-ms-flex:1 0 100%;flex:1 0 100%;margin:0 0 15px}.formkit-form[data-uid="8d653b97b6"] .formkit-powered-by-convertkit-container{margin:0}.formkit-form[data-uid="8d653b97b6"] .formkit-submit{position:static}.formkit-form[data-uid="8d653b97b6"][min-width~="700"] [data-style=clean],.formkit-form[data-uid="8d653b97b6"][min-width~="800"] [data-style=clean]{padding:10px}.formkit-form[data-uid="8d653b97b6"][min-width~="700"] .formkit-fields[data-stacked=false],.formkit-form[data-uid="8d653b97b6"][min-width~="800"] .formkit-fields[data-stacked=false]{margin-left:-5px;margin-right:-5px}.formkit-form[data-uid="8d653b97b6"][min-width~="700"] .formkit-fields[data-stacked=false] .formkit-field,.formkit-form[data-uid="8d653b97b6"][min-width~="800"] .formkit-fields[data-stacked=false] .formkit-field,.formkit-form[data-uid="8d653b97b6"][min-width~="700"] .formkit-fields[data-stacked=false] .formkit-submit,.formkit-form[data-uid="8d653b97b6"][min-width~="800"] .formkit-fields[data-stacked=false] .formkit-submit{margin:0 5px 15px}.formkit-form[data-uid="8d653b97b6"][min-width~="700"] .formkit-fields[data-stacked=false] .formkit-field,.formkit-form[data-uid="8d653b97b6"][min-width~="800"] .formkit-fields[data-stacked=false] .formkit-field{-webkit-flex:100 auto;-ms-flex:100 auto;flex:100 auto}.formkit-form[data-uid="8d653b97b6"][min-width~="700"] .formkit-fields[data-stacked=false] .formkit-submit,.formkit-form[data-uid="8d653b97b6"][min-width~="800"] .formkit-fields[data-stacked=false] .formkit-submit{-webkit-flex:auto;-ms-flex:auto;flex:auto}</style></form>
</div><div><div class="quoteContainer_Karu"><figure class="tweetQuote_h8Rz"><blockquote><a href="https://twitter.com/Baconbrix/status/1622655092657688576" target="_blank" rel="noreferrer nofollow">My favorite resource for keeping up with the React community!</a></blockquote><figcaption><a href="https://twitter.com/Baconbrix" target="_blank" rel="noreferrer nofollow"><div class="avatar"><img alt="Evan Bacon" class="avatar__photo shadow--md avatarImg_b51M" src="https://unavatar.io/twitter/Baconbrix?fallback=https://github.com/EvanBacon.png"><div class="avatar__intro"><strong class="avatar__name"><cite>Evan Bacon</cite></strong><small class="avatar__subtitle" itemprop="description">Engineering Manager - Expo</small></div></div></a></figcaption></figure></div></div></div>
<div role="separator" style="text-align:center;margin:10px 0"><img class="separator" src="https://thisweekinreact.com/emails/separators/christmas.png" width="600" height="64" style="width:100%;max-width:600px;margin:0 auto;object-fit:contain"></div>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="sponsor2">💸 Sponsor<a href="https://thisweekinreact.com/newsletter/274#sponsor2" class="hash-link" aria-label="Direct link to 💸 Sponsor" title="Direct link to 💸 Sponsor">​</a></h2>
<p><a href="https://fandf.co/4cGtUp9" target="_blank" rel="noopener noreferrer"><img decoding="async" loading="lazy" src="https://thisweekinreact.com/emails/issues/274/amazon.jpg" alt="React Native for Fire TV App Development" class="img_SS3x"></a></p>
<p><strong><a href="https://fandf.co/4cGtUp9" target="_blank" rel="noopener noreferrer">React Native for Fire TV App Development</a></strong></p>
<p>Your existing React Native codebase can now run on Fire TV with minimal changes, thanks to Amazon Developer’s new operating system, Vega. What’s included:  &nbsp;</p>
<ul>
<li>40+ open-source libraries you already rely on, like reanimated &nbsp;</li>
<li>Reduced bundle size - React Native is built into the OS and dynamically linked &nbsp;</li>
<li>Vega Module Resolver Preset (VMRP) to automatically replace libraries with their Vega-platform ported equivalencies &nbsp;</li>
<li>Vega Studio, a VS code-extension, for building, testing, and optimizing Vega apps &nbsp;</li>
</ul>
<p>Ready to reach new audiences? Check out our getting started guide.</p>
<div role="separator" style="text-align:center;margin:10px 0"><img class="separator" src="https://thisweekinreact.com/emails/separators/christmas.png" width="600" height="64" style="width:100%;max-width:600px;margin:0 auto;object-fit:contain"></div>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="react-native">📱 React-Native<a href="https://thisweekinreact.com/newsletter/274#react-native" class="hash-link" aria-label="Direct link to 📱 React-Native" title="Direct link to 📱 React-Native">​</a></h2>
<p><a href="https://github.com/software-mansion/react-native-reanimated/releases/tag/worklets-0.8.0" target="_blank" rel="noopener noreferrer"><img decoding="async" loading="lazy" src="https://thisweekinreact.com/emails/issues/274/worklets.jpg" alt="Worklets 0.8 - Shareable, Bundle mode improvements" class="img_SS3x"></a></p>
<p><a href="https://github.com/software-mansion/react-native-reanimated/releases/tag/worklets-0.8.0" target="_blank" rel="noopener noreferrer">Worklets 0.8 - Shareable, Bundle mode improvements</a></p>
<p>It’s now easier to use the Bundle mode, which unlocks running <a href="https://x.com/swmansion/status/2036489933490110922" target="_blank" rel="noopener noreferrer">more complex things in background threads</a>. Also read the dedicated article on <a href="https://x.com/swmansion/status/2034667004297183312" target="_blank" rel="noopener noreferrer">Shareable – shared memory's missing piece</a>, a runtime-bound shared memory primitive that was extracted from Reanimated, and that you can now use for non-animation use cases too!</p>
<div role="separator" style="text-align:center;margin:10px 0"><img class="separator" src="https://thisweekinreact.com/emails/separators/christmas.png" width="600" height="64" style="width:100%;max-width:600px;margin:0 auto;object-fit:contain"></div>
<ul>
<li>💸 <a href="https://frontendmasters.com/courses/react-performance-v2/?utm_source=reactweekly&amp;utm_medium=email&amp;utm_campaign=reactperf" target="_blank" rel="noopener noreferrer">Make React apps fast where it actually matters. Learn how to diagnose real bottlenecks and fix slow, janky React apps using modern React 19 patterns.</a></li>
<li>🔐 <a href="https://www.aikido.dev/blog/glassworm-strikes-react-packages-phone-numbers" target="_blank" rel="noopener noreferrer">Glassworm Strikes Popular React Native Phone Number Packages in Supply Chain Attack</a> - Affects <code>react-native-country-select</code> and <code>react-native-international-phone-number</code>.</li>
<li>📜 <a href="https://codewithbeto.dev/blog/glow-input-reanimated-css" target="_blank" rel="noopener noreferrer">Glow Effect on TextInput with Reanimated CSS Animations</a></li>
<li>📜 <a href="https://expo.dev/blog/how-fieldy-adopted-expo-for-their-ai-wearable" target="_blank" rel="noopener noreferrer">From skeptic to convert: how Fieldy adopted Expo for their AI wearable</a></li>
<li>📦 <a href="https://github.com/software-mansion/react-native-reanimated/releases" target="_blank" rel="noopener noreferrer">Reanimated 4.3 - CSS animations for SVG, Shared Values on multiple threads, typesafety</a></li>
<li>📦 <a href="https://github.com/react-navigation/react-navigation/releases/tag/%40react-navigation%2Fcore%407.17.0" target="_blank" rel="noopener noreferrer">React Navigation 7.17 - New <code>.with()</code> method on static config to add a wrapper around the navigator</a> - Also available in v8.alpha. React Navigation <a href="https://x.com/reactnavigation/status/2036819119194964031" target="_blank" rel="noopener noreferrer">wants us to use the Static API</a> more. It unlocks automatic type inference and deep linking, and yet covers most dynamic use cases.</li>
<li>📦 <a href="https://github.com/googlemaps/react-native-navigation-sdk" target="_blank" rel="noopener noreferrer">React Native Navigation SDK</a> - TIL that Google provides an official React Native library for Google Maps (in beta).</li>
<li>📦 <a href="https://www.swift.org/blog/swift-6.3-released/" target="_blank" rel="noopener noreferrer">Swift 6.3 - C interop, module selectors, Swift Build preview, Android SDK, and more</a></li>
<li>📦 <a href="https://github.com/margelo/react-native-nitro-fetch/releases/tag/v0.2.0" target="_blank" rel="noopener noreferrer">Nitro Fetch 0.2 - Add support for Streaming, formData, AbortController, RN 0.85</a></li>
<li>📦 <a href="https://github.com/microsoft/react-native-windows/releases/tag/react-native-windows_v0.82.0" target="_blank" rel="noopener noreferrer">React Native Windows 0.82 - New-Architecture only</a></li>
<li>📦 <a href="https://github.com/callstackincubator/rozenite/releases" target="_blank" rel="noopener noreferrer">Rozenite 1.5 &amp; 1.6 - DevTools for AI Agents, new File System plugin</a></li>
<li>📦 <a href="https://github.com/mrousavy/react-native-mmkv/releases/tag/v4.3.0" target="_blank" rel="noopener noreferrer">MMKV 4.3 - MMKV upgrade, <code>compareBeforeSet</code> optimization, configure default log level at build time</a></li>
<li>📦 <a href="https://github.com/uni-stack/uniwind/releases/tag/v1.6.0" target="_blank" rel="noopener noreferrer">Uniwind 1.6 - Border curve utilities</a></li>
<li>📦 <a href="https://github.com/wix/Detox/releases" target="_blank" rel="noopener noreferrer">Detox 20.48-50 - Support simulator launch <code>--arch</code>, liquidGlass overlay</a></li>
<li>📦 <a href="https://github.com/callstackincubator/agent-device/releases/tag/v0.10.0" target="_blank" rel="noopener noreferrer">Agent Device 0.10 - Can control macOS apps</a></li>
<li>🎥 <a href="https://www.youtube.com/watch?v=zUfPhL_EU2Y" target="_blank" rel="noopener noreferrer">Beto - React Navigation v8 Crash Course — Liquid Glass, Tabs &amp; More</a></li>
<li>🎥 <a href="https://www.youtube.com/watch?v=OwgUx22bU0U" target="_blank" rel="noopener noreferrer">notJust.dev - State of React Native - What's new in 2026</a></li>
<li>🎙️ <a href="https://infinite.red/react-native-radio/rnr-357-react-native-082084-expo-55" target="_blank" rel="noopener noreferrer">RNR 357 - React Native 0.82–0.84 &amp; Expo 55</a></li>
</ul>
<div role="separator" style="text-align:center;margin:10px 0"><img class="separator" src="https://thisweekinreact.com/emails/separators/christmas.png" width="600" height="64" style="width:100%;max-width:600px;margin:0 auto;object-fit:contain"></div>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="other">🔀 Other<a href="https://thisweekinreact.com/newsletter/274#other" class="hash-link" aria-label="Direct link to 🔀 Other" title="Direct link to 🔀 Other">​</a></h2>
<ul>
<li>📜 <a href="https://shift.infinite.red/fix-flaky-jest-tests-in-ci-with-maxworkers-and-why-it-works-e3d3189f35a4" target="_blank" rel="noopener noreferrer">Fix Flaky Jest Tests in CI with maxWorkers (and why it works)</a> - Tests parallelization can lead to timeouts, but you can fine-tune parameters to reduce test time and flakiness.</li>
<li>📜 <a href="https://adventures.nodeland.dev/archive/who-is-responsible-for-ai-generated-code/" target="_blank" rel="noopener noreferrer">Who Is Responsible for AI-Generated Code?</a> - Will Node.js ban AI-generated code from its core, even when there’s a human in the loop?</li>
<li>📜 <a href="https://43081j.com/2026/03/three-pillars-of-javascript-bloat" target="_blank" rel="noopener noreferrer">The Three Pillars of JavaScript Bloat</a></li>
<li>📦 <a href="https://devblogs.microsoft.com/typescript/announcing-typescript-6-0/" target="_blank" rel="noopener noreferrer">TypeScript 6.0</a> - A “bridge” release toward the 7.0 Go rewrite, which is almost complete. This release also changes defaults (<code>strict: true</code>, <code>types: []</code>...), improves subpath imports, adds types for Temporal and upsert, and more.</li>
<li>📦 <a href="https://jovidecroock.com/blog/mixed-signals/" target="_blank" rel="noopener noreferrer">Mixed Signals - Bridging the Server-Client Boundary with Signals</a> - The Preact team is working on a new transport-agnostic solution in which the reactive signal graph spans the network boundary.</li>
<li>📦 <a href="https://wasmer.io/posts/edgejs-safe-nodejs-using-wasm-sandbox" target="_blank" rel="noopener noreferrer">Edge.js - Running Node apps inside a WebAssembly Sandbox</a></li>
<li>📦 <a href="https://zero.rocicorp.dev/docs/release-notes/1.0" target="_blank" rel="noopener noreferrer">Zero 1.0 - Sync engine is now stable e</a></li>
<li>📦 <a href="https://arrow-js.com/" target="_blank" rel="noopener noreferrer">ArrowJS - UI framework for the agentic era</a></li>
<li>📦 <a href="https://valibot.dev/blog/valibot-v1.3-release-notes/" target="_blank" rel="noopener noreferrer">Valibot 1.3 - Smarter pipelines, result caching, and new validators</a></li>
</ul>
<div role="separator" style="text-align:center;margin:10px 0"><img class="separator" src="https://thisweekinreact.com/emails/separators/christmas.png" width="600" height="64" style="width:100%;max-width:600px;margin:0 auto;object-fit:contain"></div>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="fun">🤭 Fun<a href="https://thisweekinreact.com/newsletter/274#fun" class="hash-link" aria-label="Direct link to 🤭 Fun" title="Direct link to 🤭 Fun">​</a></h2>
<p><a href="https://x.com/sebastienlorber/status/2036735446722527741" target="_blank" rel="noopener noreferrer"><img decoding="async" loading="lazy" src="https://thisweekinreact.com/emails/issues/274/meme.jpg" alt="alt" class="img_SS3x"></a></p>
<p>See ya! 👋</p>]]></content>
        <author>
            <name>Sébastien Lorber</name>
            <uri>https://sebastienlorber.com</uri>
        </author>
    </entry>
</feed>