<!DOCTYPE html>
<html>
<head>
<title>Bytes: Hot frameworks near me</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="color-scheme" content="light dark">
<meta name="supported-color-schemes" content="light dark">
<link href="https://fonts.googleapis.com/css2?family=Fira+Mono&family=Outfit:wght@400;500;700;900&family=Paytone+One" rel="stylesheet">
<style>@media (prefers-color-scheme: dark) {
.email-wrapper {
color: #F9F4DA !important;
background-color: #0F0D0E !important;
}
hr {
border-color: #262422 !important;
}
mark {
background-color: #231F20 !important;
color: #F9F4DA !important;
}
pre {
background-color: #231F20 !important;
border: 1px solid #231F20 !important;
color: #F9F4DA !important;
}
.bg-alt {
background-color: #231F20 !important;
}
.unsubscribe-link {
color: #504C48 !important;
}
.token.punctuation {
color: #f9f4da !important;
}
}
@media screen and (min-width: 600px) {
.mobile-break {
display: none;
}
}</style>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<table class="email-wrapper" border="0" cellspacing="0" width="100%" style="background-color: #FFF; border-collapse: collapse; color: #231F20; font-family: Outfit, sans-serif; font-size: 16px; width: 100%;"><tbody><tr>
<td style="border-collapse: collapse !important; word-break: normal;"></td>
<td width="600px" style="border-collapse: collapse !important; width: 600px; word-break: normal;"><div style="max-width:600px;padding-top:80px">
<div style="text-align:center"><img width="600" style="max-width: 100%; padding-bottom: 40px;" src="https://bytes.dev/images/bytes-banner-rounded.png" alt="Bytes"></div>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5; padding-left: 24px; padding-right: 24px;"><strong style="font-weight: 600;">Today’s issue:</strong> West Coast Customs gets into HTML, AI yearns for the mines, and Lemony Snicket goes full Oracle.</p>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5; padding-left: 24px; padding-right: 24px;">Welcome to <a href="https://click.convertkit-mail4.com/d0unwn7xppb0ho06ll2fmhzn26244ilhkx3v/l2heh6ulow27lws6/aHR0cHM6Ly9ieXRlcy5kZXYvYXJjaGl2ZXMvNDIw" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1779863268">#420-good-kush-blaze-it</a>.</p>
<hr style="border: 0; border-bottom: 5px solid; border-color: #f5f5f5; margin-bottom: 100px; margin-top: 100px;">
<div style="text-align:center;margin-bottom:36px">
<img width="80" src="https://bytes.dev/images/content/eyes.png" alt="Eyeballs logo" style="max-width: 100%;"><h2 style="font-family: Paytone One, sans-serif; font-size: 28px; margin-top: 10px; text-transform: uppercase;">The Main Thing</h2>
</div>
<div class="bg-alt" style="background-color: #f5f5f5; border-radius: 16px; margin-bottom: 40px; max-width: 100%; padding: 24px; padding-bottom: 12px;">
<img src="https://bytes.dev/images/content/burns-injection.jpg" alt="Mr. Burns getting a big injection" width="600" style="border-radius: 5px; max-width: 100%;"><p style="font-family: Outfit, sans-serif; font-size: 15px; font-style: italic; line-height: 1; margin: 0; padding-bottom: 4px; padding-left: 24px; padding-right: 24px; padding-top: 10px; text-align: center;">The only drug I need is JavaScript<!-- --> </p>
</div>
<h3 style="font-size: 24px; margin-bottom: 0; padding-left: 24px; padding-right: 24px;">Hot frameworks near me</h3>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5; padding-left: 24px; padding-right: 24px;">No matter how fast and furious the AI hype train gets, the three sweetest words in the English language will always be: <em>new JavaScript framework just dropped.</em></p>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5; padding-left: 24px; padding-right: 24px;">And the Spec Gods made it rain again earlier this week with <a href="https://click.convertkit-mail4.com/d0unwn7xppb0ho06ll2fmhzn26244ilhkx3v/m2h7h6u3ow5z32tm/aHR0cHM6Ly9naXRodWIuY29tL3RydWVhZG0vcmlwcGxl" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1779863269">Ripple</a>, a new TypeScript UI framework that Dominic Gannaway created as his “love letter to the web.”</p>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5; padding-left: 24px; padding-right: 24px;">It’s still in super-early alpha phases, but the project looks fascinating – mainly because Dominic is an open source legend. He created Lexical and Inferno, and was also a core team member for React <em>and</em> Svelte during the React Hooks and Svelte 5 days.</p>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5; padding-left: 24px; padding-right: 24px;">His goal for Ripple is to combine all the best ideas he’s come across in that time into one ideal framework. Let’s take a look at how:</p>
<ul>
<li>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5;"><strong style="font-weight: 600;">$-style reactivity</strong> – State variables prefixed with <code style="font-size: 14px;">$</code> automatically trigger updates (like Svelte signals but inline). No extra hooks or setters, just <code style="font-size: 14px;">$count++</code> and your UI re-renders.</p>
</li>
<li>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5;"><strong style="font-weight: 600;">JSX-ish templates with real JS control flow</strong> – Instead of returning standard JSX, Ripple lets you drop if/else, loops, and even inline variable declarations straight into your components.</p>
</li>
<li>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5;"><strong style="font-weight: 600;">TS-first <code style="font-size: 14px;">.ripple</code> files</strong> – Components live in their own <code style="font-size: 14px;">.ripple</code> modules with full TypeScript support, which Dominic says gives it some nice DX touches while also making it more “LLM-friendly” too.</p>
</li>
</ul>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5; padding-left: 24px; padding-right: 24px;"><strong style="font-weight: 600;">Bottom Line:</strong> Personally, my “love letters to the web” are too steamy for polite newsletters like this one, but Dominic’s love letter really does seem to combine the best parts of Svelte, React, and more. Stay tuned.</p>
<table width="100%" cellpadding="0" cellspacing="0" border="0" style="border-collapse: collapse; margin-top: 40px; text-align: center;"><tbody><tr><td style="border-collapse: collapse !important; padding-top: 12px; word-break: normal;">
<a href="https://click.convertkit-mail4.com/d0unwn7xppb0ho06ll2fmhzn26244ilhkx3v/dphehmueqr6nevtm/aHR0cHM6Ly9mYWNlYm9vay5jb20vc2hhcmVyL3NoYXJlci5waHA_dT1odHRwcyUzQSUyRiUyRmJ5dGVzLmRldiUyRmFyY2hpdmVzJTJGNDIw" rel="noopener" style="color: #12b5e5; font-weight: 600; padding-left: 5px; text-decoration: none;" target="_blank" url-id="1779863270"><img alt="" style="display: inline-block; max-width: 100%; width: 32px;" width="25" src="https://bytes.dev/images/fb-share-icon.png"></a><a href="https://click.convertkit-mail4.com/d0unwn7xppb0ho06ll2fmhzn26244ilhkx3v/e0hph0u7k5vo7vh8/aHR0cHM6Ly93d3cubGlua2VkaW4uY29tL3NoYXJpbmcvc2hhcmUtb2Zmc2l0ZS8_dXJsPWh0dHBzJTNBJTJGJTJGYnl0ZXMuZGV2JTJGYXJjaGl2ZXMlMkY0MjA=" rel="noopener" style="color: #12b5e5; font-weight: 600; padding-left: 5px; text-decoration: none;" target="_blank" url-id="1779863271"><img alt="" style="display: inline-block; max-width: 100%; width: 32px;" width="25" src="https://bytes.dev/images/li-share-icon.png"></a><a href="https://click.convertkit-mail4.com/d0unwn7xppb0ho06ll2fmhzn26244ilhkx3v/7qh7h2u903l595az/aHR0cHM6Ly90d2l0dGVyLmNvbS9pbnRlbnQvdHdlZXQvP3RleHQ9QnJlYWtpbmclMjBkb3duJTIwUmlwcGxlJTJDJTIwYSUyMG5ldyUyMEpTJTIwZnJhbWV3b3JrJTIwYnklMjAlNDB0cnVlYWRtJTIwdGhhdCUyMGNvbWJpbmVzJTIwdGhlJTIwYmVzdCUyMHBhcnRzJTIwb2YlMjBSZWFjdCUyQyUyMFN2ZWx0ZSUyQyUyMGFuZCUyMG1vcmUmdXJsPWh0dHBzJTNBJTJGJTJGYnl0ZXMuZGV2JTJGYXJjaGl2ZXMlMkY0MjA=" rel="noopener" style="color: #12b5e5; font-weight: 600; padding-left: 5px; text-decoration: none;" target="_blank" url-id="1779863272"><img alt="" style="display: inline-block; max-width: 100%; width: 32px;" width="25" src="https://bytes.dev/images/tw-share-icon.png"></a><a href="https://click.convertkit-mail4.com/d0unwn7xppb0ho06ll2fmhzn26244ilhkx3v/owhkhwuw459dwvhv/bWFpbHRvOj9ib2R5PVRob3VnaHQlMjB5b3UlMjdkJTIwbG92ZSUyMHRoaXMlMjB3ZWVrJTI3cyUyMEJ5dGVzJTBBLS0tJTBBQnJlYWtpbmclMjBkb3duJTIwUmlwcGxlJTJDJTIwYSUyMG5ldyUyMEpTJTIwZnJhbWV3b3JrJTIwYnklMjAlNDB0cnVlYWRtJTIwdGhhdCUyMGNvbWJpbmVzJTIwdGhlJTIwYmVzdCUyMHBhcnRzJTIwb2YlMjBSZWFjdCUyQyUyMFN2ZWx0ZSUyQyUyMGFuZCUyMG1vcmUlMEFodHRwcyUzQSUyRiUyRmJ5dGVzLmRldiUyRmFyY2hpdmVzJTJGNDIwJnN1YmplY3Q9WW91JTIwbGlrZSUyMGNvcm5icmVhZCUzRg==" rel="noopener" style="color: #12b5e5; font-weight: 600; padding-left: 5px; text-decoration: none;" target="_blank" url-id="1779863273"><img alt="" style="display: inline-block; max-width: 100%; width: 32px;" width="25" src="https://bytes.dev/images/em-share-icon.png"></a>
</td></tr></tbody></table>
<hr style="border: 0; border-bottom: 5px solid; border-color: #f5f5f5; margin-bottom: 100px; margin-top: 100px;">
<div style="text-align:center;margin-bottom:36px">
<img width="150" src="https://bytes.dev/images/content/qa-wolf-logo.png" alt="QA Wolf logo" style="max-width: 100%;"><h2 style="font-family: Paytone One, sans-serif; font-size: 28px; margin-top: 10px; text-transform: uppercase;"><span>Our Friends <br class="mobile-break">(With Benefits)</span></h2>
</div>
<div class="bg-alt" style="background-color: #f5f5f5; border-radius: 16px; margin-bottom: 40px; max-width: 100%; padding: 24px; padding-bottom: 12px;">
<img src="https://bytes.dev/images/content/dog-suit.jpg" alt="A dog tying a tie" width="600" style="border-radius: 5px; max-width: 100%;"><p style="font-family: Outfit, sans-serif; font-size: 15px; font-style: italic; line-height: 1; margin: 0; padding-bottom: 4px; padding-left: 24px; padding-right: 24px; padding-top: 10px; text-align: center;">Putting on a brave face knowing that your app's test suite is flaky af<!-- --> </p>
</div>
<h3 style="font-size: 24px; margin-bottom: 0; padding-left: 24px; padding-right: 24px;"><a href="https://click.convertkit-mail4.com/d0unwn7xppb0ho06ll2fmhzn26244ilhkx3v/z2hgh7ueo06xe2bp/aHR0cHM6Ly93d3cucWF3b2xmLmNvbS8_dXRtX2NhbXBhaWduPUFDUV9BbGxfRGVtb19Db252ZXJzaW9uc19fTmV3c2xldHRlckF1ZGllbmNlXy1fTmV3c2xldHRlcl84MFBlcmNlbnRUZXN0Q292ZXJhZ2VJbjRNb250aHNfMjAyNTA4MjgtTm9uZV9FeHBlcmltZW50LUZBTFNFJnV0bV9jb250ZW50PTgwUGVyY2VudFRlc3RDb3ZlcmFnZUluNE1vbnRoc19HZXRBUGVyc29uYWxpemVkRGVtb19Ob25lX0hlYWRsaW5lJTNBR2V0ODBQZXJjZW50QXV0b21hdGVkVGVzdENvdmVyYWdlSW40TW9udGhzX19fX05ld3NsZXR0ZXItUHJpbWFyeVBsYWNlbWVudF8yMDI1MDgyOF92MV8mdXRtX21lZGl1bT1uZXdzbGV0dGVyJnV0bV9zb3VyY2U9Ynl0ZXMmdXRtX3Rlcm09aGVhZGxpbmUtR2V0ODBQZXJjZW50QXV0b21hdGVkVGVzdENvdmVyYWdlSW40TW9udGhz" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1779863274">Get 80% automated test coverage in 4 months</a></h3>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5; padding-left: 24px; padding-right: 24px;">…with zero effort from your team.</p>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5; padding-left: 24px; padding-right: 24px;">That’s what <a href="https://click.convertkit-mail4.com/d0unwn7xppb0ho06ll2fmhzn26244ilhkx3v/p8hehqu4986o4naq/aHR0cHM6Ly93d3cucWF3b2xmLmNvbS8_dXRtX2NhbXBhaWduPUFDUV9BbGxfRGVtb19Db252ZXJzaW9uc19fTmV3c2xldHRlckF1ZGllbmNlXy1fTmV3c2xldHRlcl84MFBlcmNlbnRUZXN0Q292ZXJhZ2VJbjRNb250aHNfMjAyNTA4MjgtTm9uZV9FeHBlcmltZW50LUZBTFNFJnV0bV9jb250ZW50PTgwUGVyY2VudFRlc3RDb3ZlcmFnZUluNE1vbnRoc19HZXRBUGVyc29uYWxpemVkRGVtb19Ob25lX0hlYWRsaW5lJTNBR2V0ODBQZXJjZW50QXV0b21hdGVkVGVzdENvdmVyYWdlSW40TW9udGhzX19fX05ld3NsZXR0ZXItUHJpbWFyeVBsYWNlbWVudF8yMDI1MDgyOF92MV8mdXRtX21lZGl1bT1uZXdzbGV0dGVyJnV0bV9zb3VyY2U9Ynl0ZXMmdXRtX3Rlcm09Ym9keS1RQVdvbGY=" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1779863275">QA Wolf</a> did for Brilliant – helping them detect 8-10 bugs per month, while simultaneously reducing their QA cycles from 24 hours to 5 minutes (<a href="https://click.convertkit-mail4.com/d0unwn7xppb0ho06ll2fmhzn26244ilhkx3v/x0hph3uenx20equ5/aHR0cHM6Ly93d3cucWF3b2xmLmNvbS9jYXNlLXN0dWRpZXMvYnJpbGxpYW50P3V0bV9jYW1wYWlnbj1BQ1FfQWxsX0RlbW9fQ29udmVyc2lvbnNfX05ld3NsZXR0ZXJBdWRpZW5jZV8tX05ld3NsZXR0ZXJfODBQZXJjZW50VGVzdENvdmVyYWdlSW40TW9udGhzXzIwMjUwODI4LU5vbmVfRXhwZXJpbWVudC1GQUxTRSZ1dG1fY29udGVudD04MFBlcmNlbnRUZXN0Q292ZXJhZ2VJbjRNb250aHNfR2V0QVBlcnNvbmFsaXplZERlbW9fTm9uZV9IZWFkbGluZSUzQUdldDgwUGVyY2VudEF1dG9tYXRlZFRlc3RDb3ZlcmFnZUluNE1vbnRoc19fX19OZXdzbGV0dGVyLVByaW1hcnlQbGFjZW1lbnRfMjAyNTA4MjhfdjFfJnV0bV9tZWRpdW09bmV3c2xldHRlciZ1dG1fc291cmNlPWJ5dGVzJnV0bV90ZXJtPWJvZHktV2F0Y2hDYXNlU3R1ZHk=" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1779863276">watch case study</a>).</p>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5; padding-left: 24px; padding-right: 24px;">And they can do the same for your team. <strong style="font-weight: 600;">Here’s how:</strong></p>
<ul>
<li>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5;">Their engineers build out a full outline of your app, with test cases <a href="https://click.convertkit-mail4.com/d0unwn7xppb0ho06ll2fmhzn26244ilhkx3v/e0hph0u7k5vo7za8/aHR0cHM6Ly93d3cucWF3b2xmLmNvbS9ob3ctaXQtd29ya3M_dXRtX2NhbXBhaWduPUFDUV9BbGxfRGVtb19Db252ZXJzaW9uc19fTmV3c2xldHRlckF1ZGllbmNlXy1fTmV3c2xldHRlcl84MFBlcmNlbnRUZXN0Q292ZXJhZ2VJbjRNb250aHNfMjAyNTA4MjgtTm9uZV9FeHBlcmltZW50LUZBTFNFJnV0bV9jb250ZW50PTgwUGVyY2VudFRlc3RDb3ZlcmFnZUluNE1vbnRoc19HZXRBUGVyc29uYWxpemVkRGVtb19Ob25lX0hlYWRsaW5lJTNBR2V0ODBQZXJjZW50QXV0b21hdGVkVGVzdENvdmVyYWdlSW40TW9udGhzX19fX05ld3NsZXR0ZXItUHJpbWFyeVBsYWNlbWVudF8yMDI1MDgyOF92MV8mdXRtX21lZGl1bT1uZXdzbGV0dGVyJnV0bV9zb3VyY2U9Ynl0ZXMmdXRtX3Rlcm09Ym9keS1Qcmlvcml0aXplZEJ5TmVlZEFuZFZhbHVl" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1779863278">prioritized by need and value</a></p>
</li>
<li>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5;">They write out tests in plain English for you to review and approve</p>
</li>
<li>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5;">They run all your tests in 100% parallel, so you get pass/fail results within 3 minutes</p>
</li>
</ul>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5; padding-left: 24px; padding-right: 24px;"><a href="https://click.convertkit-mail4.com/d0unwn7xppb0ho06ll2fmhzn26244ilhkx3v/owhkhwuw459dg3av/aHR0cHM6Ly93d3cucWF3b2xmLmNvbT91dG1fY2FtcGFpZ249QUNRX0FsbF9EZW1vX0NvbnZlcnNpb25zX19OZXdzbGV0dGVyQXVkaWVuY2VfLV9OZXdzbGV0dGVyXzgwUGVyY2VudFRlc3RDb3ZlcmFnZUluNE1vbnRoc18yMDI1MDgyOC1Ob25lX0V4cGVyaW1lbnQtRkFMU0UmdXRtX2NvbnRlbnQ9ODBQZXJjZW50VGVzdENvdmVyYWdlSW40TW9udGhzX0dldEFQZXJzb25hbGl6ZWREZW1vX05vbmVfSGVhZGxpbmUlM0FHZXQ4MFBlcmNlbnRBdXRvbWF0ZWRUZXN0Q292ZXJhZ2VJbjRNb250aHNfX19fTmV3c2xldHRlci1QcmltYXJ5UGxhY2VtZW50XzIwMjUwODI4X3YxXyZ1dG1fbWVkaXVtPW5ld3NsZXR0ZXImdXRtX3NvdXJjZT1ieXRlcyZ1dG1fdGVybT1jdGEtR2V0QVBlcnNvbmFsaXplZERlbW9Gb3JZb3VyVGVhbQ==" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1779863280">Get a personalized demo for your team</a> – and see why Napster’s Engineering Director said, “It would take 4 people to build this much coverage, and they’d never do it this quickly.”</p>
<hr style="border: 0; border-bottom: 5px solid; border-color: #f5f5f5; margin-bottom: 100px; margin-top: 100px;">
<div style="text-align:center;margin-bottom:36px">
<img width="110" src="https://bytes.dev/images/content/cool-bits.png" alt="Cool Bits logo" style="max-width: 100%;"><h2 style="font-family: Paytone One, sans-serif; font-size: 28px; margin-top: 10px; text-transform: uppercase;">Cool Bits</h2>
</div>
<ol>
<li>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5;"><a href="https://click.convertkit-mail4.com/d0unwn7xppb0ho06ll2fmhzn26244ilhkx3v/p8hehqu4986og2cq/aHR0cHM6Ly91aS5zaGFkY24uY29tL2RvY3MvY2hhbmdlbG9n" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1779863282">shadcn CLI 3.0</a> just shipped with namespaced registries, advanced auth, an MCP server for all registries, and a creator reveal – just kidding. shad still walks as a shadow among us.</p>
</li>
<li>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5;"><a href="https://click.convertkit-mail4.com/d0unwn7xppb0ho06ll2fmhzn26244ilhkx3v/x0hph3uenx209zf5/aHR0cHM6Ly9naXRodWIuY29tL2NocmlzbGdhcnJ5L0Fwb2xsby0xMQ==" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1779863283">The Apollo 11 Source Code is on GitHub</a>, but all the navigation stuff keeps routing to a random warehouse in rural Nevada for some reason.</p>
</li>
<li>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5;">Check out <a href="https://click.convertkit-mail4.com/d0unwn7xppb0ho06ll2fmhzn26244ilhkx3v/6qhehoulp0ren6to/aHR0cHM6Ly9lbWJyYWNlLmlvL2Jsb2cvdXNlci1qb3VybmV5cy13YWxrdGhyb3VnaC8_dXRtX2NhbXBhaWduPWJ5dGVzLTgtMjgtMjAyNSZ1dG1fY29udGVudD11c2VyLWpvdXJuZXlzJnV0bV9tZWRpdW09cGFpZCZ1dG1fc291cmNlPW5ld3NsZXR0ZXI=" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1779863284">Embrace’s User Journeys</a>, a new approach to creating and tracking custom user flows without having to restructure your code. [sponsored]</p>
</li>
<li>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5;"><a href="https://click.convertkit-mail4.com/d0unwn7xppb0ho06ll2fmhzn26244ilhkx3v/kkhmh2un84wv63cl/aHR0cHM6Ly9kb2NzLmltYWdlLWpzLm9yZy9ibG9nL3JlbGVhc2VzLzEuMC8=" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1779863285">ImageJS 1.0</a> brings TypeScript support and a more intuitive API to the advanced image processing library.</p>
</li>
<li>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5;"><a href="https://click.convertkit-mail4.com/d0unwn7xppb0ho06ll2fmhzn26244ilhkx3v/58hvh8ug5lx2k9b6/aHR0cHM6Ly9udXFzLjQ3bmcuY29tL2Jsb2cvbnVxcy0yLjU=" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1779863286">nuqs just released v2.5</a> of its type-safe search params state manager for React frameworks. It comes with key isolation, standard schema, debounce, TanStack Router support, and more.</p>
</li>
<li>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5;">The React team just added a new docs page on <a href="https://click.convertkit-mail4.com/d0unwn7xppb0ho06ll2fmhzn26244ilhkx3v/qvh8h8ud8qwporul/aHR0cHM6Ly9yZWFjdC5kZXYvcmVmZXJlbmNlL3JlYWN0LWRvbS9jb21wb25lbnRzI2N1c3RvbS1odG1sLWVsZW1lbnRz" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1779863288">Custom HTML elements</a> – but I already get all my HTML elements customized for me at <em>West Coast Customs</em> with Xzibit, so I don’t need to read it.</p>
</li>
<li>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5;">Clerk just launched <a href="https://click.convertkit-mail4.com/d0unwn7xppb0ho06ll2fmhzn26244ilhkx3v/g3hnhwumex9w6mfr/aHR0cHM6Ly9nby5jbGVyay5jb20vY0VxNnZucA==" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1779863289">Mosaic</a> – a Figma design system that mirrors every Clerk UI component, so you can design and prototype auth flows that look and feel like your product, before writing any code. [sponsored]</p>
</li>
<li>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5;">Marvin Hagemeister wrote about <a href="https://click.convertkit-mail4.com/d0unwn7xppb0ho06ll2fmhzn26244ilhkx3v/9qhzhdudgnwrzzf9/aHR0cHM6Ly9tYXJ2aW5oLmRldi9ibG9nL3NwZWVkaW5nLXVwLWphdmFzY3JpcHQtZWNvc3lzdGVtLXBhcnQtMTIv" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1779863290">Semver</a> in this latest entry to his series on Speeding up the JavaScript Ecosystem. Initially, I heard he was planning to call these blog posts <em>A Series of Unfortunate Events</em> – but Lemony Snicket threatened to go full Oracle on him if he didn’t change the name.</p>
</li>
<li>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5;">Rahul M. Juliato wrote this step-by-step guide to <a href="https://click.convertkit-mail4.com/d0unwn7xppb0ho06ll2fmhzn26244ilhkx3v/3ohphdu3qvmg4zbr/aHR0cHM6Ly93d3cucmFodWxqdWxpYXRvLmNvbS9wb3N0cy9yZWFjdC13b3JrZXJz" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1779863291">unlocking Web Workers with React</a>.</p>
</li>
<li>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5;">Someone created a <a href="https://click.convertkit-mail4.com/d0unwn7xppb0ho06ll2fmhzn26244ilhkx3v/n2hohquvneq06ei6/aHR0cHM6Ly9naXRodWIuY29tL3l1bmlrby1zb2Z0d2FyZS9taW5lY3JhZnQtbWNwLXNlcnZlcg==" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1779863292">Minecraft MCP Server</a> that allows AI assistants to control a Minecraft character in real time, so it can build structures, explore the world, etc. I can’t <em>wait</em> until we can train AI to play all my video games for me so I have more time to work in the real mines.</p>
</li>
</ol>
<div style="text-align:center;padding-bottom:80px;padding-top:80px">
<div class="bg-alt" style="background-color: #f5f5f5; border-radius: 16px; margin-bottom: 40px; padding: 24px;"><div style="margin-top:-40px">
<img src="https://bytes.dev/images/bytes-icon.png" alt="Bytes" width="55px" style="max-width: 100%; width: 55px;"><h5 style="font-size:18px;font-weight:400;margin-bottom:24px">Want us to say nice things <br> about your company?</h5>
<div style="margin-bottom:16px"><a style="background-color: #FCBA28; border: 1px solid #231F20; border-radius: 100px; color: #231F20; font-size: 14px; font-weight: 600; padding: 8px 14px; text-decoration: none;" href="https://click.convertkit-mail4.com/d0unwn7xppb0ho06ll2fmhzn26244ilhkx3v/48hvh7um0kl86wax/aHR0cHM6Ly9ieXRlcy5kZXYvYWR2ZXJ0aXNl" url-id="1779863293">Sponsor Bytes</a></div>
<div style="margin-bottom:20px"><a style="color: #FCBA28; font-size: 14px; font-weight: 600; text-decoration: underline;" href="https://click.convertkit-mail4.com/d0unwn7xppb0ho06ll2fmhzn26244ilhkx3v/wnh2h6uqr876xnu7/aHR0cHM6Ly9ieXRlcy5kZXYvc2hhcmU=" url-id="1779863294">or share it</a></div>
<p style="font-family: Outfit, sans-serif; font-size: 14px; line-height: 1.5; padding-left: 24px; padding-right: 24px;">Built with ❤️ by<!-- --> <a style="color: #ed203d; font-weight: 600; text-decoration: underline;" href="https://click.convertkit-mail4.com/d0unwn7xppb0ho06ll2fmhzn26244ilhkx3v/reh8h9umqndzwdh2/aHR0cHM6Ly91aS5kZXY=" url-id="1779863295">ui.dev</a></p>
</div></div>
<p style="font-family: Outfit, sans-serif; font-size: 14px; line-height: 1.5; opacity: 0.5; padding-left: 24px; padding-right: 24px;">50 W Broadway Ste 333 PMB 51647 Salt Lake City, Utah 84101</p>
<div style="font-family:Papyrus, cursive"><a class="unsubscribe-link" href="https://click.convertkit-mail4.com/d0unwn7xppb0ho06ll2fmhzn26244ilhkx3v/08hwhgu2mqergrhl/aHR0cHM6Ly9ieXRlcy5kZXYvdW5zdWJzY3JpYmU=" style="color: #9B9890;" url-id="1779863296">Unsubscribe from Bytes</a></div>
</div>
</div></td>
<td style="border-collapse: collapse !important; word-break: normal;"></td>
</tr></tbody></table>
<span style="display: none"><a href="https://unsubscribe.convertkit-mail4.com/d0unwn7xppb0ho06ll2fmhzn26244ilhkx3v">Unsubscribe</a></span>
<!-- -->
<img src="https://open.convertkit-mail4.com/d0unwn7xppb0ho06ll2fmhzn26244ilhkx3v" alt="">
</body>
</html>