<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Vitalii Petrenko - Full-stack Developer &amp; Tech Writer</title>
    <link>https://vitalii4reva.com</link>
    <description>Personal blog by Vitalii Petrenko - Full-stack developer from Ukraine</description>
    <language>en</language>
    <lastBuildDate>Tue, 10 Feb 2026 14:35:20 GMT</lastBuildDate>
    <atom:link href="https://vitalii4reva.com/feed.xml" rel="self" type="application/rss+xml"/>
    <managingEditor>vitalii4reva@gmail.com (Vitalii Petrenko)</managingEditor>
    <webMaster>vitalii4reva@gmail.com (Vitalii Petrenko)</webMaster>
    
    <item>
      <title>Building react-terminal-typewriter: A Lightweight React Hook for Terminal-Style Effects</title>
      <link>https://vitalii4reva.com/posts/react-terminal-typewriter-hook</link>
      <guid isPermaLink="true">https://vitalii4reva.com/posts/react-terminal-typewriter-hook</guid>
      <pubDate>Tue, 20 Jan 2026 00:00:00 GMT</pubDate>
      <description>How I built a zero-dependency React hook for typewriter animations with loop support, cursor control, and full TypeScript support.</description>
      <author>vitalii4reva@gmail.com (Vitalii Petrenko)</author>
    </item>
    <item>
      <title>Building a JavaScript Event Loop Visualizer: Making Async Code Easier to Understand</title>
      <link>https://vitalii4reva.com/posts/javascript-event-loop-visualizer</link>
      <guid isPermaLink="true">https://vitalii4reva.com/posts/javascript-event-loop-visualizer</guid>
      <pubDate>Sun, 05 Oct 2025 00:00:00 GMT</pubDate>
      <description></description>
      <author>vitalii4reva@gmail.com (Vitalii Petrenko)</author>
    </item>
  </channel>
</rss>