<?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: Arjun Pratap Das</title>
    <description>The latest articles on DEV Community by Arjun Pratap Das (@arjun_pratapdas_ee6c8089).</description>
    <link>https://dev.to/arjun_pratapdas_ee6c8089</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%2F3504638%2Fbe7c363c-a20a-4249-8ef4-4c743f3506b8.jpg</url>
      <title>DEV Community: Arjun Pratap Das</title>
      <link>https://dev.to/arjun_pratapdas_ee6c8089</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/arjun_pratapdas_ee6c8089"/>
    <language>en</language>
    <item>
      <title>RivalRy — Log Every Rivalry, Feel Every Match, Hear the Hype</title>
      <dc:creator>Arjun Pratap Das</dc:creator>
      <pubDate>Mon, 13 Jul 2026 06:47:20 +0000</pubDate>
      <link>https://dev.to/arjun_pratapdas_ee6c8089/rivalry-log-every-rivalry-feel-every-match-hear-the-hype-47j4</link>
      <guid>https://dev.to/arjun_pratapdas_ee6c8089/rivalry-log-every-rivalry-feel-every-match-hear-the-hype-47j4</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for &lt;a href="https://dev.to/challenges/weekend-2026-07-09"&gt;Weekend Challenge: Passion Edition&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  What I Built
&lt;/h2&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;RivalRy is a passion tracker for football rivalries. Fans can log every match against their biggest rivals — win, loss, or draw — rate how intense it felt, and write down the moment as it happened. Over time, it builds a Timeline of every battle and a "Passion Card": a shareable stat card showing total battles, win/loss/draw tally, an overall Passion Rating out of 10, and your single most intense moment — narrated aloud by an AI hype announcer.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;Passion isn't just about the big clásicos — it's every derby, every gutting loss, every last-minute comeback that stays with you. RivalRy lets you bank that feeling instead of letting it fade, whether it's Real Madrid vs Barcelona, Argentina vs Brazil, or a World Cup 2026 group-stage upset.&lt;/p&gt;

&lt;h2&gt;
  
  
  Demo
&lt;/h2&gt;

&lt;p&gt;Youtube demo link- &lt;a href="https://youtu.be/6WiRpMUcmGk" rel="noopener noreferrer"&gt;https://youtu.be/6WiRpMUcmGk&lt;/a&gt;&lt;br&gt;
Live app:- &lt;a href="https://rivalryweb.lovable.app/" rel="noopener noreferrer"&gt;https://rivalryweb.lovable.app/&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Code
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://github.com/arjunpratapdas/rivalry-pulse-logger" rel="noopener noreferrer"&gt;https://github.com/arjunpratapdas/rivalry-pulse-logger&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  How I Built It
&lt;/h2&gt;

&lt;p&gt;RivalRy is built with React, Vite, and Tailwind CSS, using browser localStorage to keep every rivalry entry persisted with zero backend setup — fast to build, fast to use.&lt;/p&gt;

&lt;p&gt;The standout feature is the "Narrate My Rivalry" button on the Passion Card, powered by the &lt;strong&gt;ElevenLabs Text to Speech API&lt;/strong&gt;. When clicked, the app generates a short hype-announcer-style summary of the rivalry's stats and most intense moment, sends it to ElevenLabs, and plays back a natural AI voice narrating it — turning a stat card into something that actually feels like a stadium announcer hyping up your rivalry.&lt;/p&gt;

&lt;p&gt;One honest note: ElevenLabs free-tier credits are limited, and if they run out, the app gracefully falls back to the browser's built-in speech synthesis with a clear on-screen message, so the feature never breaks — it just degrades gracefully.&lt;/p&gt;

&lt;h2&gt;
  
  
  Prize Categories
&lt;/h2&gt;

&lt;p&gt;Submitting for &lt;strong&gt;Best Use of ElevenLabs&lt;/strong&gt; — the AI narration is central to the Passion Card experience, not a bolted-on extra.&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>weekendchallenge</category>
    </item>
    <item>
      <title>How I built Security Guardian for Kiro</title>
      <dc:creator>Arjun Pratap Das</dc:creator>
      <pubDate>Mon, 15 Sep 2025 18:55:59 +0000</pubDate>
      <link>https://dev.to/arjun_pratapdas_ee6c8089/how-i-built-security-guardian-for-kiro-1ce5</link>
      <guid>https://dev.to/arjun_pratapdas_ee6c8089/how-i-built-security-guardian-for-kiro-1ce5</guid>
      <description>&lt;h1&gt;
  
  
  How I Built a Security Guardian for Kiro
&lt;/h1&gt;

&lt;p&gt;I was coding late one night when it hit me: &lt;strong&gt;I had no idea if my AI-generated code was secure&lt;/strong&gt;. Like most developers, I was trading speed for security without even realizing it.&lt;/p&gt;

&lt;p&gt;Then I saw this testimonial on kiro.dev: &lt;em&gt;"In just four lines into a spec, Kiro was able to write user stories like a product manager..."&lt;/em&gt; That's when KiroSpecGuard was born.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Simple Breakthrough
&lt;/h2&gt;

&lt;p&gt;I created a security spec with just four natural language lines:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;"Prevent basic XSS vulnerabilities in all user input handling"
"Ensure all user input is sanitized before rendering to HTML"
"Block direct DOM manipulation with untrusted data"
"Follow OWASP Top 10 security practices"
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Kiro converted these into working security logic that scans my code &lt;strong&gt;as I type&lt;/strong&gt;. No complex setup. No security expertise needed.&lt;/p&gt;

&lt;h2&gt;
  
  
  What Blew Me Away
&lt;/h2&gt;

&lt;p&gt;The most impressive moment? When Kiro caught an XSS vulnerability in my code before I even saved the file. My &lt;code&gt;on_file_save.kiro&lt;/code&gt; hook automatically flagged dangerous patterns like &lt;code&gt;.innerHTML =&lt;/code&gt; with user input and suggested the secure alternative.&lt;/p&gt;

&lt;p&gt;Instead of spending hours writing security rules, I got instant protection. Instead of dreading audits, I had documentation automatically generated.&lt;/p&gt;

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

&lt;p&gt;Security shouldn't be an afterthought. With KiroSpecGuard, it's built right into my workflow - like a seatbelt that puts itself on while I drive.&lt;/p&gt;

&lt;p&gt;In just one weekend, I built something that would have taken me weeks. All because Kiro lets me describe what I need in plain English, then handles the heavy lifting.&lt;/p&gt;

&lt;h1&gt;
  
  
  kiro #hookedonkiro
&lt;/h1&gt;

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