<?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: coder4life</title>
    <description>The latest articles on DEV Community by coder4life (@coder4_life).</description>
    <link>https://dev.to/coder4_life</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.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F311920%2Ff882689f-288b-491a-b586-280bb30c1fc3.png</url>
      <title>DEV Community: coder4life</title>
      <link>https://dev.to/coder4_life</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/coder4_life"/>
    <language>en</language>
    <item>
      <title>Fetch data with RestClient in Spring Boot</title>
      <dc:creator>coder4life</dc:creator>
      <pubDate>Thu, 18 Jan 2024 11:50:29 +0000</pubDate>
      <link>https://dev.to/coder4_life/fetch-data-with-restclient-in-spring-boot-40dk</link>
      <guid>https://dev.to/coder4_life/fetch-data-with-restclient-in-spring-boot-40dk</guid>
      <description>&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/a72qhABRnpU"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

</description>
      <category>java</category>
      <category>beginners</category>
      <category>programming</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>Convert Markdown to HTML in Spring Boot</title>
      <dc:creator>coder4life</dc:creator>
      <pubDate>Mon, 16 Oct 2023 14:03:29 +0000</pubDate>
      <link>https://dev.to/coder4_life/convert-markdown-to-html-in-spring-boot-2238</link>
      <guid>https://dev.to/coder4_life/convert-markdown-to-html-in-spring-boot-2238</guid>
      <description>&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/KoeljJnMITs"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

</description>
      <category>programming</category>
      <category>tutorial</category>
      <category>java</category>
      <category>springboot</category>
    </item>
    <item>
      <title>Building a Node.js API with Express, TypeScript, PostgreSQL, and Drizzle ORM</title>
      <dc:creator>coder4life</dc:creator>
      <pubDate>Mon, 31 Jul 2023 09:31:45 +0000</pubDate>
      <link>https://dev.to/coder4_life/building-a-nodejs-api-with-express-typescript-postgresql-and-drizzle-orm-16bg</link>
      <guid>https://dev.to/coder4_life/building-a-nodejs-api-with-express-typescript-postgresql-and-drizzle-orm-16bg</guid>
      <description>&lt;p&gt;Node.js API development with cookie based authentication logic. This project uses Drizzle ORM for connection and querying a PostgreSQL database. Drizzle ORM is a great TypeScript based ORM for SQL databases with a really simple and flexible query builder. Check out the video here:&lt;/p&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/9alCkObbDJc"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>tutorial</category>
      <category>node</category>
      <category>typescript</category>
    </item>
    <item>
      <title>Reset a Form in React Hook Form</title>
      <dc:creator>coder4life</dc:creator>
      <pubDate>Wed, 28 Jun 2023 17:43:09 +0000</pubDate>
      <link>https://dev.to/coder4_life/reset-a-form-in-react-hook-form-18c1</link>
      <guid>https://dev.to/coder4_life/reset-a-form-in-react-hook-form-18c1</guid>
      <description>&lt;p&gt;A quick look at 3 ways to reset a form in React Hook Form: Using a reset button, resetting on submit, and resetting a single input field.&lt;/p&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/i6EGuYD__Cg"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

</description>
      <category>react</category>
      <category>javascript</category>
      <category>webdev</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>Upload file in Spring Boot</title>
      <dc:creator>coder4life</dc:creator>
      <pubDate>Thu, 01 Jun 2023 11:08:51 +0000</pubDate>
      <link>https://dev.to/coder4_life/upload-file-in-spring-boot-1b79</link>
      <guid>https://dev.to/coder4_life/upload-file-in-spring-boot-1b79</guid>
      <description>&lt;p&gt;In this code-along demo we will be uploading a file in a Spring Boot with Thymeleaf application. Visually we have a file upload page for selecting and uploading the file and a status page to see the result. Endpoints on the backend will handle the file upload and place it in a local directory.&lt;/p&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/nJnRHhB2x08"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

</description>
      <category>java</category>
      <category>springboot</category>
      <category>programming</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>Creating a Protected Route in React</title>
      <dc:creator>coder4life</dc:creator>
      <pubDate>Thu, 11 May 2023 07:37:56 +0000</pubDate>
      <link>https://dev.to/coder4_life/creating-a-protected-route-in-react-584i</link>
      <guid>https://dev.to/coder4_life/creating-a-protected-route-in-react-584i</guid>
      <description>&lt;p&gt;You can make a page private in React Router by creating a protected route. This protected route can be used as a wrapper around route element you want to be private. Authorization will grant the user access to the private route. In this example we create a context, which holds the current authenticated state. Clicking the login button will set authenticated to true and then the user has access to the private page.&lt;/p&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/3YvAeaB9jns"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

</description>
      <category>react</category>
      <category>webdev</category>
      <category>javascript</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>Testing in Spring Boot with WebMvcTest and Mockito</title>
      <dc:creator>coder4life</dc:creator>
      <pubDate>Tue, 09 May 2023 08:47:55 +0000</pubDate>
      <link>https://dev.to/coder4_life/testing-in-spring-boot-with-webmvctest-and-mockito-1ll</link>
      <guid>https://dev.to/coder4_life/testing-in-spring-boot-with-webmvctest-and-mockito-1ll</guid>
      <description>&lt;p&gt;Testing the web layer of Spring Boot API is pretty easy with the WebMvcTest annotation and Mockito to help with mocking. In this example we will test a GET endpoint for getting all employees from an employee API. We mock the employee service and check the returned JSON.&lt;/p&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/MSASMZw_1EA"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

</description>
      <category>programming</category>
      <category>tutorial</category>
      <category>java</category>
      <category>springboot</category>
    </item>
    <item>
      <title>Creating a Contact Form with React Hook Form and Tailwind CSS</title>
      <dc:creator>coder4life</dc:creator>
      <pubDate>Thu, 27 Apr 2023 06:59:43 +0000</pubDate>
      <link>https://dev.to/coder4_life/creating-a-contact-form-with-react-hook-form-and-tailwind-css-3hhh</link>
      <guid>https://dev.to/coder4_life/creating-a-contact-form-with-react-hook-form-and-tailwind-css-3hhh</guid>
      <description>&lt;p&gt;In this code-along tutorial we will be creating a classic contact form using React Form Hook and Tailwind CSS. The form consists of 3 fields: name, email, and message. In React we will creating a custom form element component for creating the fields and using the control functionality from React Hook Form to control these "external" elements. All fields are required so will also handle any errors here. Styling of this page will be done with the help of Tailwind CSS.&lt;/p&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/5kbbBaQ07Fk"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

</description>
      <category>react</category>
      <category>webdev</category>
      <category>tutorial</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Show active navigation link in JavaScript</title>
      <dc:creator>coder4life</dc:creator>
      <pubDate>Fri, 21 Apr 2023 11:52:06 +0000</pubDate>
      <link>https://dev.to/coder4_life/show-active-navigation-link-in-javascript-309g</link>
      <guid>https://dev.to/coder4_life/show-active-navigation-link-in-javascript-309g</guid>
      <description>&lt;p&gt;Two options to show the active nav link: first with an active class or second with the aria-current="page" attribute. We have a simple navigation consisting of 3 links and 3 seperate HTML pages. Some basic CSS styling with a hover action that changes the color or the link. We will use the same hover styling for the active nav link.&lt;/p&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/bEOwXmd9Mc8"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>beginners</category>
      <category>webdev</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>Introduction to Spring Shell</title>
      <dc:creator>coder4life</dc:creator>
      <pubDate>Wed, 29 Mar 2023 12:04:01 +0000</pubDate>
      <link>https://dev.to/coder4_life/introduction-to-spring-shell-5p8</link>
      <guid>https://dev.to/coder4_life/introduction-to-spring-shell-5p8</guid>
      <description>&lt;p&gt;Create a temperature converter - celsius to fahrenheit - with Spring Shell. This Spring Boot 3 project shows how to get started with the basic shell functionality and important annotations.&lt;/p&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/9BculskJgg4"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

</description>
      <category>java</category>
      <category>spring</category>
      <category>programming</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>Using composition to optimize React rendering</title>
      <dc:creator>coder4life</dc:creator>
      <pubDate>Sat, 11 Mar 2023 15:01:09 +0000</pubDate>
      <link>https://dev.to/coder4_life/using-composition-to-optimize-react-rendering-12dg</link>
      <guid>https://dev.to/coder4_life/using-composition-to-optimize-react-rendering-12dg</guid>
      <description>&lt;p&gt;How you can improve and minize re-rendering in your React app using component composition. It's really simple. Here we refactor a simple app that re-renders a third component not related to the changes happening.&lt;/p&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/lfqaQxwnLng"&gt;
&lt;/iframe&gt;
&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;import { useCallback, useState } from 'react';

function App() {
    return (
        &amp;lt;div className="app"&amp;gt;
            &amp;lt;CounterComponent&amp;gt;
                &amp;lt;Title /&amp;gt;
            &amp;lt;/CounterComponent&amp;gt;
        &amp;lt;/div&amp;gt;
    );
}

const CounterComponent = ({ children }) =&amp;gt; {
    const [count, setCount] = useState(0);

    const increment = useCallback(() =&amp;gt; {
        setCount(prev =&amp;gt; prev + 1);
    }, []);

    const decrement = useCallback(() =&amp;gt; {
        setCount(prev =&amp;gt; prev - 1);
    }, []);

    console.log('render CounterComponent');

    return (
        &amp;lt;div&amp;gt;
            {children}
            &amp;lt;h2&amp;gt;{count}&amp;lt;/h2&amp;gt;
            &amp;lt;div&amp;gt;
                &amp;lt;button onClick={decrement}&amp;gt;-&amp;lt;/button&amp;gt;
                &amp;lt;button onClick={increment}&amp;gt;+&amp;lt;/button&amp;gt;
            &amp;lt;/div&amp;gt;
        &amp;lt;/div&amp;gt;
    );
};

const Title = () =&amp;gt; {
    console.log('render Title');
    return &amp;lt;h1&amp;gt;Counter&amp;lt;/h1&amp;gt;;
};

export default App;

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



</description>
      <category>webdev</category>
      <category>javascript</category>
      <category>beginners</category>
      <category>react</category>
    </item>
    <item>
      <title>How to remove click event listener in JavaScript</title>
      <dc:creator>coder4life</dc:creator>
      <pubDate>Tue, 21 Feb 2023 12:10:04 +0000</pubDate>
      <link>https://dev.to/coder4_life/how-to-remove-click-event-listener-in-javascript-4n79</link>
      <guid>https://dev.to/coder4_life/how-to-remove-click-event-listener-in-javascript-4n79</guid>
      <description>&lt;p&gt;In this short video we will learn how to remove a click event listener. 3 options are introduced: using removeEventListener, using clone and replace, and removeAttribute for inline onclick event listener.&lt;/p&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/srAUXH_756A"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>webdev</category>
      <category>beginners</category>
      <category>tutorial</category>
    </item>
  </channel>
</rss>
