<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: mehdi</title>
    <description>The latest articles on DEV Community by mehdi (@mehdi1).</description>
    <link>https://dev.to/mehdi1</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F869413%2F9b20a9d3-cf63-4070-bf80-6c2676058386.png</url>
      <title>DEV Community: mehdi</title>
      <link>https://dev.to/mehdi1</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/mehdi1"/>
    <language>en</language>
    <item>
      <title>Capacitor Showcase – LocalLLM</title>
      <dc:creator>mehdi</dc:creator>
      <pubDate>Wed, 22 Jul 2026 23:00:00 +0000</pubDate>
      <link>https://dev.to/the-modern-web/capacitor-showcase-localllm-2g5</link>
      <guid>https://dev.to/the-modern-web/capacitor-showcase-localllm-2g5</guid>
      <description>&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
    &lt;div class="c-embed__content"&gt;
        &lt;div class="c-embed__cover"&gt;
          &lt;a href="https://ionic.io/blog/capacitor-showcase-localllm" class="c-link align-middle" rel="noopener noreferrer"&gt;
            &lt;img alt="" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fionic.io%2Fblog%2Fwp-content%2Fuploads%2F2026%2F05%2Fcc80a21a-ae0e-4db1-ab66-09853be46f1f.png" height="400" class="m-0" width="800"&gt;
          &lt;/a&gt;
        &lt;/div&gt;
      &lt;div class="c-embed__body"&gt;
        &lt;h2 class="fs-xl lh-tight"&gt;
          &lt;a href="https://ionic.io/blog/capacitor-showcase-localllm" rel="noopener noreferrer" class="c-link"&gt;
            Capacitor Showcase - LocalLLM - Ionic Blog
          &lt;/a&gt;
        &lt;/h2&gt;
          &lt;p class="truncate-at-3"&gt;
            Explore how Capacitor LocalLLM enables on-device AI for iOS and Android apps with a unified TypeScript API. Learn how to build privacy-first mobile experiences using local LLMs, Apple Intelligence, and Gemini Nano—no cloud required.
          &lt;/p&gt;
        &lt;div class="color-secondary fs-s flex items-center"&gt;
            &lt;img alt="favicon" class="c-embed__favicon m-0 mr-2 radius-0" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fionic.io%2Fandroid-icon-192x192.png" width="192" height="192"&gt;
          ionic.io
        &lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;


</description>
      <category>capacitor</category>
      <category>ionic</category>
      <category>llm</category>
      <category>ai</category>
    </item>
    <item>
      <title>Announcing Angular v22</title>
      <dc:creator>mehdi</dc:creator>
      <pubDate>Tue, 21 Jul 2026 23:00:00 +0000</pubDate>
      <link>https://dev.to/the-modern-web/announcing-angular-v22-3f76</link>
      <guid>https://dev.to/the-modern-web/announcing-angular-v22-3f76</guid>
      <description>&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
    &lt;div class="c-embed__content"&gt;
        &lt;div class="c-embed__cover"&gt;
          &lt;a href="https://blog.angular.dev/announcing-angular-v22-c52bb83a4664" class="c-link align-middle" rel="noopener noreferrer"&gt;
            &lt;img alt="" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fmiro.medium.com%2Fv2%2Fresize%3Afit%3A1200%2F1%2ABWXZ-BI0XDmcOKySWZgHPA.jpeg" height="450" class="m-0" width="800"&gt;
          &lt;/a&gt;
        &lt;/div&gt;
      &lt;div class="c-embed__body"&gt;
        &lt;h2 class="fs-xl lh-tight"&gt;
          &lt;a href="https://blog.angular.dev/announcing-angular-v22-c52bb83a4664" rel="noopener noreferrer" class="c-link"&gt;
            MediumAnnouncing Angular v22. Today, we are thrilled to announce the… | by Angular | Jun, 2026 | Angular Blog
          &lt;/a&gt;
        &lt;/h2&gt;
          &lt;p class="truncate-at-3"&gt;
            Today, we are thrilled to announce the release of Angular v22. We continue to be proud of the work we do with each release. Our goal is to…
          &lt;/p&gt;
        &lt;div class="color-secondary fs-s flex items-center"&gt;
            &lt;img alt="favicon" class="c-embed__favicon m-0 mr-2 radius-0" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fmiro.medium.com%2Fv2%2F5d8de952517e8160e40ef9841c781cdc14a5db313057fa3c3de41c6f5b494b19" width="32" height="32"&gt;
          blog.angular.dev
        &lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;


</description>
      <category>angular</category>
      <category>javascript</category>
      <category>typescript</category>
      <category>webdev</category>
    </item>
    <item>
      <title>The Java Story | The Official Documentary</title>
      <dc:creator>mehdi</dc:creator>
      <pubDate>Tue, 21 Jul 2026 10:25:42 +0000</pubDate>
      <link>https://dev.to/the-modern-web/the-java-story-the-official-documentary-28bg</link>
      <guid>https://dev.to/the-modern-web/the-java-story-the-official-documentary-28bg</guid>
      <description>&lt;p&gt;  &lt;iframe src="https://www.youtube.com/embed/ZqGSg4b_cZA"&gt;
  &lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;From its humble beginnings as a project code-named "Oak" at Sun Microsystems to becoming a global standard for enterprise software and billions of devices, Java's journey is one of radical innovation, strategic pivots, and enduring community strength. &lt;/p&gt;

&lt;p&gt;Film Patrons&lt;/p&gt;

&lt;p&gt;This film was only possible thanks to the incredible support of our sponsors: Oracle, JetBrains, IBM, and Azul. &lt;/p&gt;

&lt;p&gt;• Oracle : Oracle is the steward of the Java Platform. Learn more at &lt;a href="https://dev.java" rel="noopener noreferrer"&gt;https://dev.java&lt;/a&gt; and    / @java&lt;br&gt;&lt;br&gt;
• IBM : Develop modern applications with the open Java ecosystem and IBM Developer. &lt;a href="https://developer.ibm.com/languages/j" rel="noopener noreferrer"&gt;https://developer.ibm.com/languages/j&lt;/a&gt;...&lt;br&gt;
• JetBrains : Use IntelliJ IDEA from JetBrains for pro development in Java and Kotlin: &lt;a href="https://www.jetbrains.com/idea/" rel="noopener noreferrer"&gt;https://www.jetbrains.com/idea/&lt;/a&gt;&lt;br&gt;
• Azul : Azul is the trusted leader in enterprise Java for today's AI and cloud-first world, powering mission-critical systems for 36% of the Fortune 100: &lt;a href="https://www.azul.com/" rel="noopener noreferrer"&gt;https://www.azul.com/&lt;/a&gt;&lt;br&gt;
• Railway : Railway is the all-in-one intelligent cloud provider ➡️ &lt;a href="https://railway.com/?referralCode=cul" rel="noopener noreferrer"&gt;https://railway.com/?referralCode=cul&lt;/a&gt;...&lt;/p&gt;

&lt;p&gt;What to Expect from the Film &lt;/p&gt;

&lt;p&gt;• The Birth of Oak : Discover how  a small team of top engineers at Sun Microsystems originally designed Java to solve problems in computing devices outside the traditional industry scope.&lt;br&gt;
• Pivoting to the Web : Learn how the release of the first web browser, Mosaic, inspired the team to rewrite their browser and bring interactivity to the static web using Java.&lt;br&gt;
• Write Once, Run Anywhere : Understand the goal of creating a binary platform that could run on any hardware. Revisit the high-stakes legal battles that threatened the "write once, run anywhere" promise.&lt;br&gt;
• Community and Open Source : Witness the transition of Java to an open-source platform through the creation of the Java Community Process (JCP) and the release of OpenJDK.&lt;br&gt;
• The Modern Era : Explore how Oracle's acquisition of Sun Microsystems impacted the language and whats in store for the future of Java.&lt;/p&gt;

&lt;p&gt;Timestamps&lt;/p&gt;

&lt;p&gt;00:00 - INTRO&lt;br&gt;
00:15 - TITLE SEQUENCE&lt;br&gt;
01:33 - PROJECT GREEN AND EARLY YEARS&lt;br&gt;
04:27 - HOTJAVA BROWSER&lt;br&gt;
06:34 - NETSCAPE&lt;br&gt;
08:26 - JAVA WEB PIVOT/WORA&lt;br&gt;
12:22 - WOLF IN SHEEP'S CLOTHING&lt;br&gt;
15:31 - JAVA SHIFT TO ENTERPRISE&lt;br&gt;
18:20 - COMPATABILITY/MICROSOFT WARS&lt;br&gt;
19:45 - THE SMOKING GUN EMAIL&lt;br&gt;
21:08 - MICROSOFT THREAT&lt;br&gt;
22:45 - MICROSOFT LAWSUIT&lt;br&gt;
24:45 - JCP INCEPTION&lt;br&gt;
26:36 - OPEN SOURCING&lt;br&gt;
28:59 - TOMCAT&lt;br&gt;
31:06 - J2EE&lt;br&gt;
33:15 - SPRING / HIBERNATE&lt;br&gt;
34:49 - JAVA OPEN SOURCE ECOSYSTEM GROWTH&lt;br&gt;
36:07 - JAVA OPEN SOURCING ANNOUNCEMENT&lt;br&gt;
39:03 - THE DARK AGES&lt;br&gt;
42:28 - ORACLE ACQUISITION&lt;br&gt;
44:13 - JAMES GOSLING LEAVES ORACLE&lt;br&gt;
45:37 - JAVA UNDER ORACLE&lt;br&gt;
46:52 - IS JAVA DEAD?&lt;br&gt;
48:07 - JAVA 8 - A NEW ERA&lt;br&gt;
49:31 - JAVA 8 LAUNCH&lt;br&gt;
52:23 - JAVA SIX MONTH CADENCE&lt;br&gt;
54:53 - STEWARDSHIP&lt;br&gt;
58:32 - ECLIPSE FOUNDATION&lt;br&gt;
59:52 - JAVA PROJECT LOOM&lt;br&gt;
01:01:54 - THE JAVA COMMUNITY&lt;br&gt;
01:03:59 - THE UBIQUITY OF JAVA/JAVA'S LEGACY&lt;br&gt;
01:06:55 - JAVA DEVELOPMENT IN THE MODERN ERA&lt;br&gt;
01:11:29 - FINAL WRAP&lt;br&gt;
01:13:31 - CREDITS&lt;/p&gt;




&lt;p&gt;Featuring&lt;/p&gt;

&lt;p&gt;Past &amp;amp; Present Java Team Members from Sun / Oracle&lt;/p&gt;

&lt;p&gt;James Gosling — Creator of Java&lt;br&gt;
Joshua Bloch — Creator of the Java Collections Framework, Author of Effective Java&lt;br&gt;
James Duncan Davidson — Creator of Apache Tomcat&lt;br&gt;
Brian Goetz — Java Language Architect, Java Platform Group, Oracle&lt;br&gt;
Tim Lindholm — Co-author, Java Virtual Machine Specification&lt;br&gt;
Kim Polese — Java's first Product Manager&lt;br&gt;
Mark Reinhold — Chief Architect, Java Platform Group, Oracle&lt;br&gt;
Georges Saab — Senior Vice President, Java Platform Group, Oracle and Chair, OpenJDK Governing Board&lt;br&gt;
Paul Sandoz — Architect, Java Platform Group, Oracle&lt;br&gt;
Carla Schroer — Director of Java Compatibility, Sun Microsystems&lt;br&gt;
Sharat Chander — Senior Director, Java Product Management &amp;amp; Developer Engagement, Oracle&lt;br&gt;
Heather VanCura — Vice President and Java Community Process Chairperson and Director, Oracle&lt;/p&gt;

&lt;p&gt;Java Community&lt;/p&gt;

&lt;p&gt;Paul Bakker — Staff Software Engineer at Netflix &lt;br&gt;
Lars Bergstrom — Director of Engineering, Google Android &lt;br&gt;
Andrey Breslav — Creator of Kotlin &lt;br&gt;
Ivar Grimstad — Jakarta EE Developer Advocate at Eclipse Foundation &lt;br&gt;
Rod Johnson — Creator of Spring &lt;br&gt;
Gavin King — Creator of Hibernate &lt;br&gt;
Mark Little — Vice President Java Runtimes and Java Integration, IBM &lt;br&gt;
Josh Long — Spring Developer Advocate &lt;br&gt;
Venkat Subramaniam — Java Champion, Author &amp;amp; Educator &lt;br&gt;
Tagir Valeev — Technical Lead, Java Team, JetBrains &lt;/p&gt;




&lt;p&gt;Filmmakers &lt;/p&gt;

&lt;p&gt;Directed by: Joey Bania&lt;br&gt;
Produced by: Emma Tracey&lt;/p&gt;




</description>
      <category>java</category>
      <category>spring</category>
      <category>kotlin</category>
      <category>webdev</category>
    </item>
    <item>
      <title>React in 2025: Why It's No Longer Just a Library (Server Components &amp; Frameworks Explained)</title>
      <dc:creator>mehdi</dc:creator>
      <pubDate>Sun, 03 Aug 2025 09:15:03 +0000</pubDate>
      <link>https://dev.to/the-modern-web/react-in-2025-why-its-no-longer-just-a-library-server-components-frameworks-explained-30gh</link>
      <guid>https://dev.to/the-modern-web/react-in-2025-why-its-no-longer-just-a-library-server-components-frameworks-explained-30gh</guid>
      <description>&lt;p&gt;  &lt;iframe src="https://www.youtube.com/embed/-xVHdXKAyqE"&gt;
  &lt;/iframe&gt;
&lt;/p&gt;

</description>
      <category>react</category>
      <category>nextjs</category>
      <category>javascript</category>
      <category>typescript</category>
    </item>
    <item>
      <title>The Future of Frontend: Progressive Web Apps, Microfrontends, &amp; JavaScript Frameworks in 2025</title>
      <dc:creator>mehdi</dc:creator>
      <pubDate>Wed, 30 Jul 2025 17:53:44 +0000</pubDate>
      <link>https://dev.to/the-modern-web/the-future-of-frontend-progressive-web-apps-microfrontends-javascript-frameworks-in-2025-2b87</link>
      <guid>https://dev.to/the-modern-web/the-future-of-frontend-progressive-web-apps-microfrontends-javascript-frameworks-in-2025-2b87</guid>
      <description>&lt;p&gt;  &lt;iframe src="https://www.youtube.com/embed/eAZQhxzvYO8"&gt;
  &lt;/iframe&gt;
&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>typescript</category>
      <category>react</category>
      <category>vue</category>
    </item>
    <item>
      <title>[Boost]</title>
      <dc:creator>mehdi</dc:creator>
      <pubDate>Tue, 29 Jul 2025 09:16:19 +0000</pubDate>
      <link>https://dev.to/mehdi1/-37b1</link>
      <guid>https://dev.to/mehdi1/-37b1</guid>
      <description>&lt;div class="ltag__link--embedded"&gt;
  &lt;div class="crayons-story "&gt;
  &lt;a href="https://dev.to/ngrx/announcing-ngrx-v20-the-power-of-events-enhanced-dx-and-a-mature-signalstore-2fdm" class="crayons-story__hidden-navigation-link"&gt;Announcing NgRx v20: The Power of Events, Enhanced DX, and a Mature SignalStore!&lt;/a&gt;


  &lt;div class="crayons-story__body crayons-story__body-full_post"&gt;
    &lt;div class="crayons-story__top"&gt;
      &lt;div class="crayons-story__meta"&gt;
        &lt;div class="crayons-story__author-pic"&gt;
          &lt;a class="crayons-logo crayons-logo--l" href="/ngrx"&gt;
            &lt;img alt="NgRx logo" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Forganization%2Fprofile_image%2F5016%2Fa8dc55b2-63c3-4e96-917c-2c18727a650a.png" class="crayons-logo__image" width="800" height="846"&gt;
          &lt;/a&gt;

          &lt;a href="/alexokrushko" class="crayons-avatar  crayons-avatar--s absolute -right-2 -bottom-2 border-solid border-2 border-base-inverted  "&gt;
            &lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F156510%2F2fa459e2-6370-4c7a-94ab-4aabcb3189ed.jpg" alt="alexokrushko profile" class="crayons-avatar__image" width="800" height="800"&gt;
          &lt;/a&gt;
        &lt;/div&gt;
        &lt;div&gt;
          &lt;div&gt;
            &lt;a href="/alexokrushko" class="crayons-story__secondary fw-medium m:hidden"&gt;
              Alex Okrushko
            &lt;/a&gt;
            &lt;div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"&gt;
              
                Alex Okrushko
                
              
              &lt;div id="story-author-preview-content-2711400" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0"&gt;
                &lt;div class="gap-4 grid"&gt;
                  &lt;div class="-mt-4"&gt;
                    &lt;a href="/alexokrushko" class="flex"&gt;
                      &lt;span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"&gt;
                        &lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F156510%2F2fa459e2-6370-4c7a-94ab-4aabcb3189ed.jpg" class="crayons-avatar__image" alt="" width="800" height="800"&gt;
                      &lt;/span&gt;
                      &lt;span class="crayons-link crayons-subtitle-2 mt-5"&gt;Alex Okrushko&lt;/span&gt;
                    &lt;/a&gt;
                  &lt;/div&gt;
                  &lt;div class="print-hidden"&gt;
                    
                      Follow
                    
                  &lt;/div&gt;
                  &lt;div class="author-preview-metadata-container"&gt;&lt;/div&gt;
                &lt;/div&gt;
              &lt;/div&gt;
            &lt;/div&gt;

            &lt;span&gt;
              &lt;span class="crayons-story__tertiary fw-normal"&gt; for &lt;/span&gt;&lt;a href="/ngrx" class="crayons-story__secondary fw-medium"&gt;NgRx&lt;/a&gt;
            &lt;/span&gt;
          &lt;/div&gt;
          &lt;a href="https://dev.to/ngrx/announcing-ngrx-v20-the-power-of-events-enhanced-dx-and-a-mature-signalstore-2fdm" class="crayons-story__tertiary fs-xs"&gt;&lt;time&gt;Jul 28 '25&lt;/time&gt;&lt;span class="time-ago-indicator-initial-placeholder"&gt;&lt;/span&gt;&lt;/a&gt;
        &lt;/div&gt;
      &lt;/div&gt;

    &lt;/div&gt;

    &lt;div class="crayons-story__indention"&gt;
      &lt;h2 class="crayons-story__title crayons-story__title-full_post"&gt;
        &lt;a href="https://dev.to/ngrx/announcing-ngrx-v20-the-power-of-events-enhanced-dx-and-a-mature-signalstore-2fdm" id="article-link-2711400"&gt;
          Announcing NgRx v20: The Power of Events, Enhanced DX, and a Mature SignalStore!
        &lt;/a&gt;
      &lt;/h2&gt;
        &lt;div class="crayons-story__tags"&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/angular"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;angular&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/ngrx"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;ngrx&lt;/a&gt;
        &lt;/div&gt;
      &lt;div class="crayons-story__bottom"&gt;
        &lt;div class="crayons-story__details"&gt;
          &lt;a href="https://dev.to/ngrx/announcing-ngrx-v20-the-power-of-events-enhanced-dx-and-a-mature-signalstore-2fdm" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left"&gt;
            &lt;div class="multiple_reactions_aggregate"&gt;
              &lt;span class="multiple_reactions_icons_container"&gt;
                  &lt;span class="crayons_icon_container"&gt;
                    &lt;img src="https://assets.dev.to/assets/multi-unicorn-b44d6f8c23cdd00964192bedc38af3e82463978aa611b4365bd33a0f1f4f3e97.svg" width="24" height="24"&gt;
                  &lt;/span&gt;
                  &lt;span class="crayons_icon_container"&gt;
                    &lt;img src="https://assets.dev.to/assets/fire-f60e7a582391810302117f987b22a8ef04a2fe0df7e3258a5f49332df1cec71e.svg" width="24" height="24"&gt;
                  &lt;/span&gt;
                  &lt;span class="crayons_icon_container"&gt;
                    &lt;img src="https://assets.dev.to/assets/sparkle-heart-5f9bee3767e18deb1bb725290cb151c25234768a0e9a2bd39370c382d02920cf.svg" width="24" height="24"&gt;
                  &lt;/span&gt;
              &lt;/span&gt;
              &lt;span class="aggregate_reactions_counter"&gt;36&lt;span class="hidden s:inline"&gt;&amp;nbsp;reactions&lt;/span&gt;&lt;/span&gt;
            &lt;/div&gt;
          &lt;/a&gt;
            &lt;a href="https://dev.to/ngrx/announcing-ngrx-v20-the-power-of-events-enhanced-dx-and-a-mature-signalstore-2fdm#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center"&gt;
              

              4&lt;span class="hidden s:inline"&gt;&amp;nbsp;comments&lt;/span&gt;
            &lt;/a&gt;
        &lt;/div&gt;
        &lt;div class="crayons-story__save"&gt;
          &lt;small class="crayons-story__tertiary fs-xs mr-2"&gt;
            11 min read
          &lt;/small&gt;
            
              &lt;span class="bm-initial crayons-icon c-btn__icon"&gt;
                

              &lt;/span&gt;
              &lt;span class="bm-success crayons-icon c-btn__icon"&gt;
                

              &lt;/span&gt;
            
        &lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;

&lt;/div&gt;


</description>
      <category>angular</category>
      <category>ngrx</category>
    </item>
    <item>
      <title>The Rise of Adapters in the JavaScript Ecosystem</title>
      <dc:creator>mehdi</dc:creator>
      <pubDate>Sun, 27 Jul 2025 00:56:25 +0000</pubDate>
      <link>https://dev.to/the-modern-web/the-rise-of-adapters-in-the-javascript-ecosystem-2c76</link>
      <guid>https://dev.to/the-modern-web/the-rise-of-adapters-in-the-javascript-ecosystem-2c76</guid>
      <description>&lt;p&gt;The modern JavaScript landscape is characterized by rapid evolution and a proliferation of powerful tools, often referred to as meta-frameworks. As developers seek greater flexibility, performance, and maintainability, there's a growing emphasis on &lt;strong&gt;framework agnosticism&lt;/strong&gt; and &lt;strong&gt;runtime agnosticism&lt;/strong&gt;. This shift is paving the way for a new era where libraries and tools are designed with "adapters" in mind, allowing them to integrate seamlessly across different frameworks and runtime environments, thereby minimizing vendor lock-in and streamlining development workflows.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The Agnostic Tides: Framework and Runtime Independence&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;A key trend in contemporary web development is the move towards solutions that are not intrinsically tied to a single JavaScript framework or runtime. This allows developers to choose the best tool for the job without committing to an entire ecosystem.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;  &lt;strong&gt;Hono's Universal Reach&lt;/strong&gt;: Hono, a relatively new framework, exemplifies this trend. It is described as a &lt;strong&gt;small, simple, and ultrafast web framework built on Web Standards&lt;/strong&gt;. Its serverless design and embrace of modern web APIs caught the attention of developers due to its impressive speed and minimal footprint. Crucially, Hono works on practically any JavaScript runtime, including &lt;strong&gt;Cloudflare Workers, Fastly Compute, Deno, Bun, Vercel, Netlify, AWS Lambda, Lambda@Edge, and Node.js&lt;/strong&gt;. This broad compatibility means you can &lt;strong&gt;write your code once and deploy it almost anywhere without major modifications&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Nitro's Deployment Versatility&lt;/strong&gt;: Nitro, an open-source framework that builds web servers, is another champion of runtime agnosticism. It is designed to automatically make your code &lt;strong&gt;compatible with any deployment provider and runtime&lt;/strong&gt;. Nitro can be used as the server engine for full-stack frameworks like Nuxt, or standalone. It focuses purely on server-side logic and APIs, making it &lt;strong&gt;more lightweight and potentially faster for API-only use cases&lt;/strong&gt; compared to a full-stack framework like Nuxt.js. The underlying &lt;code&gt;h3&lt;/code&gt; library, used by Nitro, abstracts from Node.js, enabling support for serverless and other environments.&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Vite as the Development Hub&lt;/strong&gt;: Vite, known for its &lt;strong&gt;hot-reloading capabilities in the browser&lt;/strong&gt;, has extended its utility to support modern backend frameworks like Hono. It provides a &lt;strong&gt;whole new way of developing full-stack applications&lt;/strong&gt; by enabling hot module reloading for Hono applications. This flexibility in the development server allows developers to mix and match frontend and backend technologies more easily.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Unifying the Frontend-Backend Divide&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The traditional division between frontend and backend development can introduce unnecessary complexities. Modern approaches aim to bridge this gap, often through shared tooling and type systems.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;  &lt;strong&gt;Sharing Types for Coherence&lt;/strong&gt;: With a full-stack architecture like Vite + Hono, developers can &lt;strong&gt;reduce the unnecessary division between the backend and the frontend&lt;/strong&gt; and &lt;strong&gt;improve the quality of code since Hono can share API types between the backend and the frontend&lt;/strong&gt;. This type-sharing capability is a significant benefit, fostering consistency and reducing errors across the stack.&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Meta-Frameworks and Their Server Engines&lt;/strong&gt;: Frameworks like Next.js (React-based) and Nuxt.js (Vue.js-based) are popular examples of full-stack meta-frameworks that natively integrate server-side rendering (SSR). While they offer comprehensive features, if the primary goal is just an API server without server-rendered pages, &lt;strong&gt;Nitro would likely be the more efficient and streamlined choice&lt;/strong&gt; due to its focus on server-side operations and lighter overhead.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;The Power of Portable Libraries: Adapters in Action&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The core of achieving true framework and runtime independence lies in adopting libraries that are designed to be portable and extensible through adaptation. These "adapters" allow a core logic to remain consistent while leveraging the unique benefits of the environment it's running in.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;  &lt;strong&gt;State Management with TanStack Query&lt;/strong&gt;: As you mentioned, libraries like &lt;code&gt;TanStack Store&lt;/code&gt; (and its related &lt;code&gt;TanStack Query&lt;/code&gt;) are at the forefront of this movement. &lt;code&gt;TanStack Query&lt;/code&gt; is described as a &lt;strong&gt;"powerful asynchronous state management for TS/JS, React, Solid, Vue, Svelte and Angular"&lt;/strong&gt;. This highlights its &lt;strong&gt;framework-agnostic nature&lt;/strong&gt;, as it provides a unified API for data fetching and state management across multiple frontend frameworks. It handles caching, background updates, and stale data out-of-the-box with zero configuration, and there's &lt;strong&gt;no global state to manage, reducers, normalization systems, or heavy configurations to understand&lt;/strong&gt;. Being &lt;strong&gt;backend agnostic&lt;/strong&gt; and having &lt;strong&gt;zero dependencies&lt;/strong&gt; further contributes to its portability and ease of integration. The concept of providing "adapters" for specific framework features (like leveraging Angular signals for reactivity) perfectly embodies how these libraries offer universal utility while still being able to optimize for the chosen environment.&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Flexible Server-Side Rendering (SSR) Solutions&lt;/strong&gt;: When it comes to SSR with Vite, several solutions are emerging that offer varying degrees of agnosticism and adaptation:

&lt;ul&gt;
&lt;li&gt;  &lt;strong&gt;SSRx&lt;/strong&gt;: This Vite plugin focuses on smoothing out developer experience issues with Vite SSR and aims to &lt;strong&gt;"formalize a means of hooking 3rd party libraries into the SSR lifecycle, while remaining as flexible as possible"&lt;/strong&gt;. Its server-agnostic nature means it can be used with various Node.js/Bun servers or serverless HTTP frameworks, including Hono. This "hooking" mechanism acts as a form of adaptation, allowing developers to integrate their preferred tools.&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Vinxi&lt;/strong&gt;: While Vinxi is coupled to the &lt;code&gt;H3&lt;/code&gt; http framework and Nitro web server, its author emphasizes that this coupling allows them to &lt;strong&gt;"build a shared library of trusted tools that can do the common operations across all the platforms"&lt;/strong&gt; such as sessions, CORS, cookies, and authentication. This approach aims for versatility by standardizing a robust server runtime rather than being entirely server-agnostic like SSRx. Despite this, Vinxi still facilitates interoperability, with examples of its integration with &lt;strong&gt;&lt;code&gt;TanStack Router&lt;/code&gt; (a framework-agnostic routing library) for SSR&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Vike&lt;/strong&gt;: Positioning itself as "Like Next.js / Nuxt but as do-one-thing-do-it-well Vite plugin," Vike offers a more full-featured solution compared to SSRx or Vinxi, notably featuring an &lt;strong&gt;integrated Client Router&lt;/strong&gt;. While powerful, its integrated router might be a distinguishing factor if you prefer to use a separate client-side router like &lt;code&gt;TanStack Router&lt;/code&gt; or &lt;code&gt;React Router&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Build Tooling and Code Synchronization&lt;/strong&gt;: The choice of build tools also plays a crucial role in enabling flexibility. For backend Node.js applications, the sources recommend using &lt;strong&gt;Rollup over &lt;code&gt;tsc&lt;/code&gt;&lt;/strong&gt; because &lt;code&gt;tsc&lt;/code&gt; is "very bad at supporting TypeScript" with &lt;code&gt;.ts&lt;/code&gt; extensions and can complicate a unified &lt;code&gt;tsconfig.json&lt;/code&gt; for both frontend and backend. Rollup's ability to handle this, while maintaining a single &lt;code&gt;tsconfig.json&lt;/code&gt; that works for both sides, is a practical example of adapting tooling to achieve a seamless full-stack development experience.&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Type-Safe API Clients (Hono Client)&lt;/strong&gt;: Hono facilitates streamlined frontend-backend communication through its client. By importing the &lt;code&gt;api&lt;/code&gt; variable from &lt;code&gt;utils/frontend.ts&lt;/code&gt;, frontend components can &lt;strong&gt;"use it as if calling local functions"&lt;/strong&gt;. This &lt;code&gt;Hono Client&lt;/code&gt; (&lt;code&gt;hc&lt;/code&gt;) leverages TypeScript type inference to provide &lt;strong&gt;type-safe RPC-style APIs&lt;/strong&gt;, abstracting away the underlying HTTP requests and making API interactions feel more like local function calls. This abstraction layer effectively serves as an "adapter" for consuming backend services, promoting easier refactoring and potential migration of frontend technologies.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;The Future is Flexible&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The trend towards framework and runtime agnosticism, powered by smart adaptation strategies, is a significant step forward in JavaScript development. By leveraging tools like Hono and Nitro for universal runtime deployment, Vite for flexible development environments, and portable libraries like TanStack Query for core functionalities, developers can build applications with less technical debt and greater agility. This "rise of adapters" allows for:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;  &lt;strong&gt;Reduced Vendor Lock-in&lt;/strong&gt;: Developers are not tied to a single framework or runtime, enabling them to choose components based on project needs rather than ecosystem constraints.&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Improved Developer Experience&lt;/strong&gt;: Consistent APIs and patterns across different parts of the stack, facilitated by adapters, lead to a more intuitive and productive development process.&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Future-Proofing&lt;/strong&gt;: Applications built with this philosophy are inherently more adaptable to future changes in the ever-evolving JavaScript landscape.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This focus on foundational portability and adaptive integration ensures that the JavaScript ecosystem continues to provide innovative, high-performance solutions for a wide array of application needs.&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>node</category>
      <category>nextjs</category>
      <category>react</category>
    </item>
    <item>
      <title>🚀 The Rise of Adapters: Reimagining JavaScript Tooling in 2025</title>
      <dc:creator>mehdi</dc:creator>
      <pubDate>Fri, 25 Jul 2025 21:45:53 +0000</pubDate>
      <link>https://dev.to/the-modern-web/the-rise-of-adapters-reimagining-javascript-tooling-in-2025-52el</link>
      <guid>https://dev.to/the-modern-web/the-rise-of-adapters-reimagining-javascript-tooling-in-2025-52el</guid>
      <description>&lt;h2&gt;
  
  
  🔄 From Framework Lock-in to Flexible Tooling
&lt;/h2&gt;

&lt;p&gt;The JavaScript world has entered a renaissance. No longer are we tied into monolithic frameworks or rigid ecosystems. Instead, a wave of &lt;strong&gt;adapter-based tools&lt;/strong&gt; is giving developers &lt;strong&gt;flexibility, portability&lt;/strong&gt;, and &lt;strong&gt;reuse across frameworks&lt;/strong&gt;, without sacrificing performance or ergonomics.&lt;/p&gt;

&lt;h2&gt;
  
  
  TanStack Store: More than Just a Library
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Framework-Agnostic Core
&lt;/h3&gt;

&lt;p&gt;TanStack Store is a lightweight, type-safe reactive store built independently from any framework. That means your state logic—derivations, updates, batching—runs identically in React, Solid, Vue, Angular, Svelte, or even vanilla JS/TS.&lt;/p&gt;

&lt;h3&gt;
  
  
  Framework Adapters
&lt;/h3&gt;

&lt;p&gt;For each framework (React, Angular, Solid, Vue, Svelte), adapters translate the core reactive store into framework-native constructs—like signals in Angular or fine-grained updates in Solid.&lt;/p&gt;

&lt;h3&gt;
  
  
  Why It Matters
&lt;/h3&gt;

&lt;p&gt;Your business logic and state manipulation remain portable. Only the UI glue layer differs, dramatically easing transitions when migrating between frameworks while preserving productivity.&lt;/p&gt;

&lt;h2&gt;
  
  
  Nitro &amp;amp; the UnJS Ecosystem: Runtime-Agnostic Superpowers
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Nitro's Universal Server Toolkit
&lt;/h3&gt;

&lt;p&gt;Nitro is a next-generation server toolkit built atop &lt;strong&gt;h3&lt;/strong&gt; and &lt;strong&gt;unenv&lt;/strong&gt;, designed to run &lt;strong&gt;anywhere&lt;/strong&gt;—Node.js, Deno, Bun, Cloudflare Workers, or other edge environments—without rewriting code.&lt;/p&gt;

&lt;h3&gt;
  
  
  Seamless Runtime Adapters
&lt;/h3&gt;

&lt;p&gt;Nitro's architecture adapts your code seamlessly to each runtime’s APIs, offering fetch-compatible handlers, caching, storage, and HTTP routing out-of-the-box.&lt;/p&gt;

&lt;h3&gt;
  
  
  Commitment to Openness
&lt;/h3&gt;

&lt;p&gt;Nitro maintains full neutrality and runtime agnosticism, reinforcing the vision of tooling without vendor lock-in.&lt;/p&gt;

&lt;p&gt;The broader UnJS ecosystem also includes adapter-driven utilities like &lt;strong&gt;unstorage&lt;/strong&gt;, &lt;strong&gt;ofetch&lt;/strong&gt;, and &lt;strong&gt;unplugin&lt;/strong&gt;, enhancing cross-runtime compatibility.&lt;/p&gt;

&lt;h2&gt;
  
  
  🧩 Why Adapters Are the New Frontier
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Benefit&lt;/th&gt;
&lt;th&gt;What It Means for Developers&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Portability&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Core logic (state, routing, fetch) remains framework/runtime-agnostic, while only adapters differ per target environment.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Migration-first&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Framework migration becomes incremental: adapt only the UI layer, preserving business logic.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Ecosystem cohesion&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Projects like TanStack Form, Table, Query, and Store interoperate seamlessly across frameworks through adapters.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Performance-first&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Despite abstraction layers, tools like Nitro and TanStack Store remain minimal and optimized for performance.&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  🎉 What This Means for JavaScript Developers
&lt;/h2&gt;

&lt;p&gt;We're witnessing a &lt;strong&gt;defragmentation&lt;/strong&gt;, not fragmentation:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Write Once, Adapt Anywhere&lt;/strong&gt;: Build core business logic once, adapting only as needed.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Unlock Flexibility&lt;/strong&gt;: Choose frameworks or runtimes per project or team without massive rewrites.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Community-Driven Standards&lt;/strong&gt;: Projects like Nitro and TanStack foster collaboration, openness, and innovation.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  ✅ Suggested Next Steps
&lt;/h2&gt;

&lt;p&gt;Explore adapter-first libraries like &lt;strong&gt;TanStack Store&lt;/strong&gt;, &lt;strong&gt;Nitro&lt;/strong&gt;, &lt;strong&gt;h3&lt;/strong&gt;, and &lt;strong&gt;HonoJS&lt;/strong&gt;. Embrace this powerful shift to future-proof your projects, enhance flexibility, and rediscover joy in JavaScript development.&lt;/p&gt;




&lt;h2&gt;
  
  
  ✨ Closing Thoughts
&lt;/h2&gt;

&lt;p&gt;Adapter-based tooling is reshaping JavaScript projects across front-end, back-end, and full-stack environments. The capacity to write once in a neutral core and adapt seamlessly ensures your projects stay maintainable, flexible, and team-friendly. Now is the time to join this exciting new frontier.&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>typescript</category>
      <category>webdev</category>
      <category>programming</category>
    </item>
    <item>
      <title>TanStack</title>
      <dc:creator>mehdi</dc:creator>
      <pubDate>Thu, 24 Jul 2025 08:25:01 +0000</pubDate>
      <link>https://dev.to/the-modern-web/tanstack-d17</link>
      <guid>https://dev.to/the-modern-web/tanstack-d17</guid>
      <description>&lt;h3&gt;
  
  
  TanStack resources
&lt;/h3&gt;

&lt;h4&gt;
  
  
  TanStack Start
&lt;/h4&gt;

&lt;p&gt;Full-stack React and Solid framework powered by TanStack Router&lt;/p&gt;

&lt;p&gt;&lt;a href="https://tanstack.com/start/latest" rel="noopener noreferrer"&gt;TanStack Start&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  TanStack Router
&lt;/h4&gt;

&lt;p&gt;Modern and scalable routing for React and Solid applications&lt;/p&gt;

&lt;p&gt;&lt;a href="https://tanstack.com/router/latest" rel="noopener noreferrer"&gt;TanStack Router&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  TanStack Query
&lt;/h4&gt;

&lt;p&gt;Powerful asynchronous state management for TS/JS, React, Solid, Vue, Svelte and Angular&lt;/p&gt;

&lt;p&gt;&lt;a href="https://tanstack.com/query/latest" rel="noopener noreferrer"&gt;TanStack Query&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  TanStack Store
&lt;/h4&gt;

&lt;p&gt;Framework agnostic type-safe store w/ reactive framework adapters&lt;/p&gt;

&lt;p&gt;&lt;a href="https://tanstack.com/store/latest" rel="noopener noreferrer"&gt;TanStack Store&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  Videos
&lt;/h4&gt;

&lt;p&gt;  &lt;iframe src="https://www.youtube.com/embed/4PymccvinIo"&gt;
  &lt;/iframe&gt;
&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>typescript</category>
      <category>node</category>
      <category>vite</category>
    </item>
    <item>
      <title>Latest Stuff in Dev | July '25</title>
      <dc:creator>mehdi</dc:creator>
      <pubDate>Wed, 23 Jul 2025 23:13:04 +0000</pubDate>
      <link>https://dev.to/mehdi1/latest-stuff-in-dev-july-25-3oad</link>
      <guid>https://dev.to/mehdi1/latest-stuff-in-dev-july-25-3oad</guid>
      <description>&lt;h4&gt;
  
  
  Nitro
&lt;/h4&gt;

&lt;p&gt;Next Generation Server Toolkit&lt;/p&gt;


&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
    &lt;div class="c-embed__content"&gt;
      &lt;div class="c-embed__body flex items-center justify-between"&gt;
        &lt;a href="https://nitro.build/" rel="noopener noreferrer" class="c-link fw-bold flex items-center"&gt;
          &lt;span class="mr-2"&gt;nitro.build&lt;/span&gt;
          

        &lt;/a&gt;
      &lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;


&lt;p&gt;  &lt;iframe src="https://www.youtube.com/embed/tq8EluL70hw"&gt;
  &lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;  &lt;iframe src="https://www.youtube.com/embed/Ic4oHqMOS-c"&gt;
  &lt;/iframe&gt;
&lt;/p&gt;

&lt;h3&gt;
  
  
  Tanstack
&lt;/h3&gt;

&lt;h4&gt;
  
  
  Tanstack Start
&lt;/h4&gt;

&lt;p&gt;Full-stack React and Solid framework powered by TanStack Router&lt;/p&gt;


&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
    &lt;div class="c-embed__content"&gt;
        &lt;div class="c-embed__cover"&gt;
          &lt;a href="https://tanstack.com/start/latest" class="c-link align-middle" rel="noopener noreferrer"&gt;
            &lt;img alt="" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Ftanstack.com%2Fapi%2Fog%2Fstart.png" height="420" class="m-0" width="800"&gt;
          &lt;/a&gt;
        &lt;/div&gt;
      &lt;div class="c-embed__body"&gt;
        &lt;h2 class="fs-xl lh-tight"&gt;
          &lt;a href="https://tanstack.com/start/latest" rel="noopener noreferrer" class="c-link"&gt;
            TanStack Start
          &lt;/a&gt;
        &lt;/h2&gt;
          &lt;p class="truncate-at-3"&gt;
            Full-document SSR, Streaming, Server Functions, bundling and more, powered by TanStack Router and Vite - Ready to deploy to your favorite hosting provider.
          &lt;/p&gt;
        &lt;div class="color-secondary fs-s flex items-center"&gt;
            &lt;img alt="favicon" class="c-embed__favicon m-0 mr-2 radius-0" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Ftanstack.com%2Ffavicon-32x32.png" width="32" height="32"&gt;
          tanstack.com
        &lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;


&lt;h4&gt;
  
  
  Tanstack Router
&lt;/h4&gt;

&lt;p&gt;Modern and scalable routing for React and Solid applications&lt;/p&gt;


&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
    &lt;div class="c-embed__content"&gt;
        &lt;div class="c-embed__cover"&gt;
          &lt;a href="https://tanstack.com/router/latest" class="c-link align-middle" rel="noopener noreferrer"&gt;
            &lt;img alt="" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Ftanstack.com%2Fapi%2Fog%2Frouter.png" height="420" class="m-0" width="800"&gt;
          &lt;/a&gt;
        &lt;/div&gt;
      &lt;div class="c-embed__body"&gt;
        &lt;h2 class="fs-xl lh-tight"&gt;
          &lt;a href="https://tanstack.com/router/latest" rel="noopener noreferrer" class="c-link"&gt;
            TanStack Router
          &lt;/a&gt;
        &lt;/h2&gt;
          &lt;p class="truncate-at-3"&gt;
            A powerful React router for client-side and full-stack react applications. Fully type-safe APIs, first-class search-params for managing state in the URL and seamless integration with the existing React ecosystem.
          &lt;/p&gt;
        &lt;div class="color-secondary fs-s flex items-center"&gt;
            &lt;img alt="favicon" class="c-embed__favicon m-0 mr-2 radius-0" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Ftanstack.com%2Ffavicon-32x32.png" width="32" height="32"&gt;
          tanstack.com
        &lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;


&lt;h4&gt;
  
  
  TanStack Query
&lt;/h4&gt;

&lt;p&gt;Powerful asynchronous state management for TS/JS, React, Solid, Vue, Svelte and Angular&lt;/p&gt;


&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
    &lt;div class="c-embed__content"&gt;
        &lt;div class="c-embed__cover"&gt;
          &lt;a href="https://tanstack.com/query/latest" class="c-link align-middle" rel="noopener noreferrer"&gt;
            &lt;img alt="" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Ftanstack.com%2Fapi%2Fog%2Fquery.png" height="420" class="m-0" width="800"&gt;
          &lt;/a&gt;
        &lt;/div&gt;
      &lt;div class="c-embed__body"&gt;
        &lt;h2 class="fs-xl lh-tight"&gt;
          &lt;a href="https://tanstack.com/query/latest" rel="noopener noreferrer" class="c-link"&gt;
            TanStack Query
          &lt;/a&gt;
        &lt;/h2&gt;
          &lt;p class="truncate-at-3"&gt;
            Powerful asynchronous state management, server-state utilities and data fetching. Fetch, cache, update, and wrangle all forms of async data in your TS/JS, React, Vue, Solid, Svelte, Angular &amp;amp; Lit applications all without touching any "global state"
          &lt;/p&gt;
        &lt;div class="color-secondary fs-s flex items-center"&gt;
            &lt;img alt="favicon" class="c-embed__favicon m-0 mr-2 radius-0" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Ftanstack.com%2Ffavicon-32x32.png" width="32" height="32"&gt;
          tanstack.com
        &lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;


&lt;h4&gt;
  
  
  TanStack Store
&lt;/h4&gt;

&lt;p&gt;Framework agnostic type-safe store w/ reactive framework adapters&lt;br&gt;
&lt;/p&gt;
&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
    &lt;div class="c-embed__content"&gt;
        &lt;div class="c-embed__cover"&gt;
          &lt;a href="https://tanstack.com/store/latest" class="c-link align-middle" rel="noopener noreferrer"&gt;
            &lt;img alt="" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Ftanstack.com%2Fapi%2Fog%2Fstore.png" height="420" class="m-0" width="800"&gt;
          &lt;/a&gt;
        &lt;/div&gt;
      &lt;div class="c-embed__body"&gt;
        &lt;h2 class="fs-xl lh-tight"&gt;
          &lt;a href="https://tanstack.com/store/latest" rel="noopener noreferrer" class="c-link"&gt;
            TanStack Store
          &lt;/a&gt;
        &lt;/h2&gt;
          &lt;p class="truncate-at-3"&gt;
            The immutable-reactive data store that powers the core of TanStack libraries and their framework adapters.
          &lt;/p&gt;
        &lt;div class="color-secondary fs-s flex items-center"&gt;
            &lt;img alt="favicon" class="c-embed__favicon m-0 mr-2 radius-0" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Ftanstack.com%2Ffavicon-32x32.png" width="32" height="32"&gt;
          tanstack.com
        &lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;


&lt;h4&gt;
  
  
  Videos
&lt;/h4&gt;

&lt;p&gt;  &lt;iframe src="https://www.youtube.com/embed/4PymccvinIo"&gt;
  &lt;/iframe&gt;
&lt;/p&gt;

&lt;h4&gt;
  
  
  Hono
&lt;/h4&gt;


&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
    &lt;div class="c-embed__content"&gt;
      &lt;div class="c-embed__body flex items-center justify-between"&gt;
        &lt;a href="https://hono.dev/" rel="noopener noreferrer" class="c-link fw-bold flex items-center"&gt;
          &lt;span class="mr-2"&gt;hono.dev&lt;/span&gt;
          

        &lt;/a&gt;
      &lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;


&lt;h4&gt;
  
  
  h3
&lt;/h4&gt;


&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
    &lt;div class="c-embed__content"&gt;
      &lt;div class="c-embed__body flex items-center justify-between"&gt;
        &lt;a href="https://h3.dev/" rel="noopener noreferrer" class="c-link fw-bold flex items-center"&gt;
          &lt;span class="mr-2"&gt;h3.dev&lt;/span&gt;
          

        &lt;/a&gt;
      &lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;


&lt;h4&gt;
  
  
  oRPC: Typesafe APIs Made Simple
&lt;/h4&gt;


&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
    &lt;div class="c-embed__content"&gt;
      &lt;div class="c-embed__body flex items-center justify-between"&gt;
        &lt;a href="https://orpc.dev/" rel="noopener noreferrer" class="c-link fw-bold flex items-center"&gt;
          &lt;span class="mr-2"&gt;orpc.dev&lt;/span&gt;
          

        &lt;/a&gt;
      &lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;


&lt;h4&gt;
  
  
  Vike
&lt;/h4&gt;


&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
    &lt;div class="c-embed__content"&gt;
        &lt;div class="c-embed__cover"&gt;
          &lt;a href="https://vike.dev/" class="c-link align-middle" rel="noopener noreferrer"&gt;
            &lt;img alt="" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fvike.dev%2Fbanner.jpg" height="420" class="m-0" width="800"&gt;
          &lt;/a&gt;
        &lt;/div&gt;
      &lt;div class="c-embed__body"&gt;
        &lt;h2 class="fs-xl lh-tight"&gt;
          &lt;a href="https://vike.dev/" rel="noopener noreferrer" class="c-link"&gt;
            Vike
          &lt;/a&gt;
        &lt;/h2&gt;
          &lt;p class="truncate-at-3"&gt;
            (Replaces Next.js/Nuxt) 🔨 Build mission-critical applications with stability and development freedom.
          &lt;/p&gt;
        &lt;div class="color-secondary fs-s flex items-center"&gt;
            &lt;img alt="favicon" class="c-embed__favicon m-0 mr-2 radius-0" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fvike.dev%2Ffavicon.svg" width="512" height="512"&gt;
          vike.dev
        &lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;


&lt;h4&gt;
  
  
  unjs
&lt;/h4&gt;


&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
    &lt;div class="c-embed__content"&gt;
        &lt;div class="c-embed__cover"&gt;
          &lt;a href="https://unjs.io/" class="c-link align-middle" rel="noopener noreferrer"&gt;
            &lt;img alt="" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Funjs.io%2F__og-image__%2Fimage%2Fog.png" height="400" class="m-0" width="800"&gt;
          &lt;/a&gt;
        &lt;/div&gt;
      &lt;div class="c-embed__body"&gt;
        &lt;h2 class="fs-xl lh-tight"&gt;
          &lt;a href="https://unjs.io/" rel="noopener noreferrer" class="c-link"&gt;
            UnJS: Unleash JavaScript's Potential
          &lt;/a&gt;
        &lt;/h2&gt;
          &lt;p class="truncate-at-3"&gt;
            Agnostic Excellence: JavaScript Libraries, Tools, and Utilities, Crafted to Elevate Your Coding Journey.
          &lt;/p&gt;
        &lt;div class="color-secondary fs-s flex items-center"&gt;
            &lt;img alt="favicon" class="c-embed__favicon m-0 mr-2 radius-0" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Funjs.io%2Ffavicon.ico" width="256" height="256"&gt;
          unjs.io
        &lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;



&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
    &lt;div class="c-embed__content"&gt;
        &lt;div class="c-embed__cover"&gt;
          &lt;a href="https://vite.dev/" class="c-link align-middle" rel="noopener noreferrer"&gt;
            &lt;img alt="" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fvite.dev%2Fog-image.jpg" height="420" class="m-0" width="800"&gt;
          &lt;/a&gt;
        &lt;/div&gt;
      &lt;div class="c-embed__body"&gt;
        &lt;h2 class="fs-xl lh-tight"&gt;
          &lt;a href="https://vite.dev/" rel="noopener noreferrer" class="c-link"&gt;
            Vite | Next Generation Frontend Tooling
          &lt;/a&gt;
        &lt;/h2&gt;
          &lt;p class="truncate-at-3"&gt;
            Next Generation Frontend Tooling
          &lt;/p&gt;
        &lt;div class="color-secondary fs-s flex items-center"&gt;
            &lt;img alt="favicon" class="c-embed__favicon m-0 mr-2 radius-0" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fvite.dev%2Flogo-without-border.svg" width="48" height="46"&gt;
          vite.dev
        &lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;



&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
    &lt;div class="c-embed__content"&gt;
        &lt;div class="c-embed__cover"&gt;
          &lt;a href="https://vaadin.com/" class="c-link align-middle" rel="noopener noreferrer"&gt;
            &lt;img alt="" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwebsite.vaadin.com%2Fhubfs%2FVaadin-OG%2520image.png" height="420" class="m-0" width="800"&gt;
          &lt;/a&gt;
        &lt;/div&gt;
      &lt;div class="c-embed__body"&gt;
        &lt;h2 class="fs-xl lh-tight"&gt;
          &lt;a href="https://vaadin.com/" rel="noopener noreferrer" class="c-link"&gt;
            Vaadin: Java Framework for Building Enterprise Web Applications
          &lt;/a&gt;
        &lt;/h2&gt;
          &lt;p class="truncate-at-3"&gt;
            Build modern apps faster with Vaadin, the open-source Java web framework. Features a unified stack, built-in security, and enterprise-grade UI components.
          &lt;/p&gt;
        &lt;div class="color-secondary fs-s flex items-center"&gt;
            &lt;img alt="favicon" class="c-embed__favicon m-0 mr-2 radius-0" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fwebsite.vaadin.com%2Fhubfs%2Fvaadin-favicon-32x32.png" width="32" height="32"&gt;
          vaadin.com
        &lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;


&lt;h4&gt;
  
  
  Visual Studio Code containers
&lt;/h4&gt;

&lt;p&gt;&lt;a href="https://code.visualstudio.com/docs/devcontainers/containers" rel="noopener noreferrer"&gt;Developing inside a Container&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://code.visualstudio.com/docs/containers/overview" rel="noopener noreferrer"&gt;Containers in Visual Studio Code&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Apple
&lt;/h3&gt;

&lt;h4&gt;
  
  
  Apple containers
&lt;/h4&gt;

&lt;p&gt;A tool for creating and running Linux containers using lightweight virtual machines on a Mac. It is written in Swift, and optimized for Apple silicon.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/apple/container" rel="noopener noreferrer"&gt;Apple containers&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;  &lt;iframe src="https://www.youtube.com/embed/JvQtvbhtXmo"&gt;
  &lt;/iframe&gt;
&lt;/p&gt;

&lt;h4&gt;
  
  
  WWDC25: Explore large language models on Apple silicon with MLX | Apple
&lt;/h4&gt;

&lt;p&gt;  &lt;iframe src="https://www.youtube.com/embed/XFRw--lqftg"&gt;
  &lt;/iframe&gt;
&lt;/p&gt;

&lt;h4&gt;
  
  
  WWDC25: Get ahead with quantum-secure cryptography | Apple
&lt;/h4&gt;

&lt;p&gt;  &lt;iframe src="https://www.youtube.com/embed/XFRw--lqftg"&gt;
  &lt;/iframe&gt;
&lt;/p&gt;

&lt;h4&gt;
  
  
  WWDC25: What’s new in Swift | Apple
&lt;/h4&gt;

&lt;p&gt;  &lt;iframe src="https://www.youtube.com/embed/Pvf8OLnAUGI"&gt;
  &lt;/iframe&gt;
&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>typescript</category>
      <category>webdev</category>
      <category>programming</category>
    </item>
    <item>
      <title>tRPC - Move Fast and Break Nothing. End-to-end typesafe APIs made easy. | tRPC</title>
      <dc:creator>mehdi</dc:creator>
      <pubDate>Wed, 23 Jul 2025 16:58:54 +0000</pubDate>
      <link>https://dev.to/mehdi1/trpc-move-fast-and-break-nothing-end-to-end-typesafe-apis-made-easy-trpc-ho1</link>
      <guid>https://dev.to/mehdi1/trpc-move-fast-and-break-nothing-end-to-end-typesafe-apis-made-easy-trpc-ho1</guid>
      <description>&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
    &lt;div class="c-embed__content"&gt;
        &lt;div class="c-embed__cover"&gt;
          &lt;a href="https://trpc.io/" class="c-link align-middle" rel="noopener noreferrer"&gt;
            &lt;img alt="" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fog-image.trpc.io%2Fapi%2Flanding%3Fcache-buster%3D26" height="600" class="m-0" width="1200"&gt;
          &lt;/a&gt;
        &lt;/div&gt;
      &lt;div class="c-embed__body"&gt;
        &lt;h2 class="fs-xl lh-tight"&gt;
          &lt;a href="https://trpc.io/" rel="noopener noreferrer" class="c-link"&gt;
            tRPC - Move Fast and Break Nothing. End-to-end typesafe APIs made easy. | tRPC
          &lt;/a&gt;
        &lt;/h2&gt;
          &lt;p class="truncate-at-3"&gt;
            End-to-end typesafe APIs made easy. Automatic typesafety &amp;amp; autocompletion inferred from your API-paths, their input data, &amp;amp; outputs 🧙‍♂️
          &lt;/p&gt;
        &lt;div class="color-secondary fs-s flex items-center"&gt;
            &lt;img alt="favicon" class="c-embed__favicon m-0 mr-2 radius-0" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Ftrpc.io%2Fimg%2Ffavicon.ico" width="48" height="48"&gt;
          trpc.io
        &lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;


</description>
    </item>
    <item>
      <title>Nitro</title>
      <dc:creator>mehdi</dc:creator>
      <pubDate>Wed, 23 Jul 2025 16:57:43 +0000</pubDate>
      <link>https://dev.to/mehdi1/nitro-5eii</link>
      <guid>https://dev.to/mehdi1/nitro-5eii</guid>
      <description>&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
    &lt;div class="c-embed__content"&gt;
      &lt;div class="c-embed__body flex items-center justify-between"&gt;
        &lt;a href="https://nitro.build/" rel="noopener noreferrer" class="c-link fw-bold flex items-center"&gt;
          &lt;span class="mr-2"&gt;nitro.build&lt;/span&gt;
          

        &lt;/a&gt;
      &lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;


</description>
    </item>
  </channel>
</rss>
