<?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: Rounak Bakshi</title>
    <description>The latest articles on DEV Community by Rounak Bakshi (@saturn_ring).</description>
    <link>https://dev.to/saturn_ring</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%2F3153125%2F4304ed10-a1f0-479f-80fe-2ee52be2106c.png</url>
      <title>DEV Community: Rounak Bakshi</title>
      <link>https://dev.to/saturn_ring</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/saturn_ring"/>
    <language>en</language>
    <item>
      <title>Whispr a chat app...</title>
      <dc:creator>Rounak Bakshi</dc:creator>
      <pubDate>Sat, 28 Jun 2025 10:50:14 +0000</pubDate>
      <link>https://dev.to/saturn_ring/whispr-a-chat-app-5dp0</link>
      <guid>https://dev.to/saturn_ring/whispr-a-chat-app-5dp0</guid>
      <description>&lt;h1&gt;
  
  
  I Built a Real-Time Chat App Using MERN + Socket.IO and Deployed It to Render as my &lt;em&gt;FIRST MERN&lt;/em&gt; Project..🚀
&lt;/h1&gt;

&lt;p&gt;Hey everyone! 👋&lt;/p&gt;

&lt;p&gt;I've just finished building &lt;strong&gt;Whispr&lt;/strong&gt; — a sleek real-time chat application using the MERN stack + Socket.IO. It supports private messaging, profile uploads, and real-time socket updates, all styled with Tailwind CSS as well as responsive for every device.&lt;/p&gt;

&lt;h2&gt;
  
  
  🔗 Check it Out
&lt;/h2&gt;

&lt;p&gt;👉 Live App: &lt;a href="https://whispr-a-chat-app.onrender.com" rel="noopener noreferrer"&gt;https://whispr-a-chat-app.onrender.com&lt;/a&gt;&lt;br&gt;&lt;br&gt;
📦 GitHub Repo: &lt;a href="https://github.com/rou-nak-cloud/Whispr" rel="noopener noreferrer"&gt;Whispr on GitHub&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  🛠️ What I Used
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Frontend&lt;/strong&gt;: React (Vite), Zustand, Tailwind, React Hot Toast&lt;br&gt;&lt;br&gt;
&lt;strong&gt;Backend&lt;/strong&gt;: Express, MongoDB, Mongoose, JWT, Cloudinary&lt;br&gt;&lt;br&gt;
&lt;strong&gt;WebSocket&lt;/strong&gt;: Socket.IO&lt;br&gt;&lt;br&gt;
&lt;strong&gt;Deployment&lt;/strong&gt;: Render (Free tier)&lt;/p&gt;

&lt;h2&gt;
  
  
  🔥 Key Features
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;👤 Auth with JWT &amp;amp; cookies&lt;/li&gt;
&lt;li&gt;⚡ Real-time chat updates&lt;/li&gt;
&lt;li&gt;💡 Profile management&lt;/li&gt;
&lt;li&gt;🌐 Live WebSocket handling (online/offline)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Would love your feedback or ideas for next features (emoji support, group chat, etc). 🙌&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>programming</category>
      <category>beginners</category>
      <category>react</category>
    </item>
    <item>
      <title>Library.com</title>
      <dc:creator>Rounak Bakshi</dc:creator>
      <pubDate>Sun, 25 May 2025 09:08:07 +0000</pubDate>
      <link>https://dev.to/saturn_ring/librarycom-3a8i</link>
      <guid>https://dev.to/saturn_ring/librarycom-3a8i</guid>
      <description>&lt;h1&gt;
  
  
  🚀 New Release: Library Books API v1.1.0 — Now with Auth and Enhanced Filtering!
&lt;/h1&gt;

&lt;p&gt;Hey Devs! 👋&lt;/p&gt;

&lt;p&gt;I'm excited to share that version &lt;strong&gt;1.1.0&lt;/strong&gt; of my &lt;strong&gt;Library Books Backend API&lt;/strong&gt; is now live! This update brings a bunch of quality-of-life improvements, especially for developers building full-stack apps with user authentication and MongoDB.&lt;/p&gt;




&lt;h2&gt;
  
  
  🔑 Key Features
&lt;/h2&gt;

&lt;h3&gt;
  
  
  🔐 User Authentication (Login + Logout)
&lt;/h3&gt;

&lt;p&gt;You can now register users, securely log them in using JWT tokens, and manage access to protected routes!&lt;/p&gt;

&lt;h3&gt;
  
  
  📚 Book Management with MongoDB
&lt;/h3&gt;

&lt;p&gt;All book data is stored in MongoDB, with support for:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Adding new books&lt;/li&gt;
&lt;li&gt;Retrieving all books&lt;/li&gt;
&lt;li&gt;Filtering free books based on &lt;code&gt;price&lt;/code&gt; ("Free", "0", or 0)&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  🛠 Improved API Responses
&lt;/h3&gt;

&lt;p&gt;Consistent JSON responses across all routes — no more missing fields!&lt;/p&gt;




&lt;h2&gt;
  
  
  🐛 Bug Fixes
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Fixed &lt;code&gt;"Illegal arguments: string, undefined"&lt;/code&gt; caused by using &lt;code&gt;User.find()&lt;/code&gt; instead of &lt;code&gt;findOne()&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Resolved a &lt;strong&gt;MongoDB Atlas&lt;/strong&gt; connection failure due to bad auth.&lt;/li&gt;
&lt;li&gt;Ensured that the &lt;code&gt;price&lt;/code&gt; field is always included in the book data returned from the database.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  🧪 Example Book Object
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"name"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Story Book"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"title"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"A Friend and a Foe"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"price"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Free"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"category"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Story"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"image"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"https://cdn.pixabay.com/photo/2018/01/18/09/13/book-3089857_1280.jpg"&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  GitHUB repo:
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/rou-nak-cloud/Library_Of_Books" rel="noopener noreferrer"&gt;https://github.com/rou-nak-cloud/Library_Of_Books&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>webdev</category>
      <category>react</category>
      <category>learning</category>
      <category>github</category>
    </item>
    <item>
      <title>Build a PDF Maker with React, Tailwind, Mammoth.js, and PDFKit</title>
      <dc:creator>Rounak Bakshi</dc:creator>
      <pubDate>Tue, 13 May 2025 10:22:20 +0000</pubDate>
      <link>https://dev.to/saturn_ring/build-a-pdf-maker-with-react-tailwind-mammothjs-and-pdfkit-1iol</link>
      <guid>https://dev.to/saturn_ring/build-a-pdf-maker-with-react-tailwind-mammothjs-and-pdfkit-1iol</guid>
      <description>&lt;p&gt;Hey Friends! &lt;br&gt;
I just wrapped up a full-stack project that converts .docx files into clean, downloadable PDFs — all from a modern web interface.&lt;/p&gt;

&lt;p&gt;Tech Stack Used: &lt;br&gt;
 Frontend: React + Tailwind CSS&lt;br&gt;
 Backend: Node.js + Express&lt;/p&gt;

&lt;p&gt;Libraries:&lt;br&gt;
Mammoth.js – for extracting clean HTML from .docx files&lt;br&gt;
PDFKit – for generating professional PDFs&lt;br&gt;
Multer – for handling file uploads&lt;/p&gt;

&lt;p&gt;Key Features:&lt;br&gt;
 Upload .docx files&lt;br&gt;
 Preview content in clean HTML (no messy Word styles)&lt;br&gt;
 Generate and download fully styled PDFs&lt;br&gt;
 Mobile responsive UI&lt;br&gt;
 Seamless UX with React and Tailwind&lt;/p&gt;

&lt;p&gt;🔗 GitHub Repo:&lt;br&gt;
 Check out the full code here:&lt;br&gt;
 &lt;a href="https://github.com/rou-nak-cloud/PDF-Maker" rel="noopener noreferrer"&gt;https://github.com/rou-nak-cloud/PDF-Maker&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;What I Learned...&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Handling file uploads with Multer in Express&lt;/li&gt;
&lt;li&gt;Parsing .docx files cleanly using Mammoth.js&lt;/li&gt;
&lt;li&gt;Dynamically generating PDFs server-side with PDFKit&lt;/li&gt;
&lt;li&gt;Structuring a React project with Tailwind and Axios&lt;/li&gt;
&lt;li&gt;Ensuring responsive design from start to finish&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Thanks for reading &amp;amp; happy coding!! 🔧&lt;/p&gt;

</description>
      <category>productivity</category>
      <category>beginners</category>
      <category>react</category>
      <category>learning</category>
    </item>
    <item>
      <title>Animated GTA6-Inspired Landing Page with React + GSAP</title>
      <dc:creator>Rounak Bakshi</dc:creator>
      <pubDate>Mon, 12 May 2025 09:22:08 +0000</pubDate>
      <link>https://dev.to/saturn_ring/animated-gta6-inspired-landing-page-with-react-gsap-253h</link>
      <guid>https://dev.to/saturn_ring/animated-gta6-inspired-landing-page-with-react-gsap-253h</guid>
      <description>&lt;p&gt;Hey devs! 👋&lt;br&gt;
I just wrapped up building a fun and animated GTA6-style landing page using:&lt;/p&gt;

&lt;p&gt;🚀 React&lt;br&gt;
🎨 Tailwind CSS&lt;br&gt;
🌀 GSAP for smooth, timeline-based animations&lt;/p&gt;

&lt;p&gt;This was a creative frontend challenge for me — especially layering visuals like characters, backgrounds, getting them by many many prompts to get the actual images and scroll hints using pure CSS and motion.&lt;/p&gt;

&lt;p&gt;📸 Screenshots + Code:&lt;br&gt;
🔗 GitHub Repo: &lt;a href="https://github.com/rou-nak-cloud/GTA6" rel="noopener noreferrer"&gt;https://github.com/rou-nak-cloud/GTA6&lt;/a&gt;&lt;br&gt;
🎞️ Live Preview: &lt;a href="https://gta6-ead8.onrender.com" rel="noopener noreferrer"&gt;https://gta6-ead8.onrender.com&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Let me know what you think — open to feedback and collab ideas!&lt;/p&gt;

</description>
      <category>react</category>
      <category>tailwindcss</category>
      <category>gsap</category>
      <category>webdev</category>
    </item>
  </channel>
</rss>
