<?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: Swyom Sanjog</title>
    <description>The latest articles on DEV Community by Swyom Sanjog (@swyom_sanjog_4908464907cc).</description>
    <link>https://dev.to/swyom_sanjog_4908464907cc</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%2F3711927%2F4115e6c1-8b0b-4abc-86ee-50781aceb0ef.png</url>
      <title>DEV Community: Swyom Sanjog</title>
      <link>https://dev.to/swyom_sanjog_4908464907cc</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/swyom_sanjog_4908464907cc"/>
    <language>en</language>
    <item>
      <title>Virtual DOM</title>
      <dc:creator>Swyom Sanjog</dc:creator>
      <pubDate>Tue, 05 May 2026 17:16:31 +0000</pubDate>
      <link>https://dev.to/swyom_sanjog_4908464907cc/virtual-dom-2a89</link>
      <guid>https://dev.to/swyom_sanjog_4908464907cc/virtual-dom-2a89</guid>
      <description>&lt;p&gt;Hi everyone, my name is P Swyom Sanjog. Welcome back to my blog—I hope you’re all doing well. Today, I’m bringing a new topic: &lt;strong&gt;Virtual DOM&lt;/strong&gt;. Let’s understand what the Virtual DOM is in simple terms. We’ll cover key questions like what it is, why it’s used, and how it works. So, let’s get started!&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Virtual Dom&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;So, let’s break down the topic into &lt;strong&gt;“Virtual”&lt;/strong&gt; and &lt;strong&gt;“DOM.”&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Virtual&lt;/strong&gt; means something that exists digitally it’s not physically present but acts like a copy of a real object.&lt;br&gt;
&lt;strong&gt;DOM (Document Object Model)&lt;/strong&gt;, in simple terms it is a programming interface for the web pages and it represents the entire HTML document in a tree structure of objects.&lt;/p&gt;

&lt;p&gt;&lt;a href="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%2Farticles%2Ff6ct8asieep6lz95yupb.png" class="article-body-image-wrapper"&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%2Farticles%2Ff6ct8asieep6lz95yupb.png" alt=" " width="800" height="752"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;so &lt;strong&gt;virtual Dom&lt;/strong&gt; is a type of interface where it compare the changes with old Dom of the system or in simple term "an interface efficiently tracking changes in a lightweight copy of the real object."&lt;/p&gt;

&lt;p&gt;&lt;a href="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%2Farticles%2Fl5x0ip1qc7kzg6q6gyfd.png" class="article-body-image-wrapper"&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%2Farticles%2Fl5x0ip1qc7kzg6q6gyfd.png" alt=" " width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Why the Virtual Dom exist ? what the need of it ?&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;Imagine you’re editing a document.You just want to change one word, but instead of editing that word, you rewrite the entire page every time. which is a slow process. That’s exactly how the real DOM can behave. &lt;/p&gt;

&lt;p&gt;The Virtual DOM is like a smart middle layer.It doesn’t replace the real DOM—it just makes working with more efficient, faster, and smoother.&lt;/p&gt;

&lt;p&gt;The virtual Dom is necessary because it make the web apps faster and smarter by avoiding unnecessary updates. lets take a real life example imagine : &lt;/p&gt;

&lt;p&gt;Real DOM → Writing directly on the final exam paper.&lt;br&gt;
Virtual DOM → First writing on rough paper then correct the mistakes then write only the final answer .&lt;/p&gt;

&lt;p&gt;**&lt;/p&gt;

&lt;h2&gt;
  
  
  Simple mini Project based on Virtual DOM concept
&lt;/h2&gt;

&lt;p&gt;**&lt;/p&gt;

&lt;p&gt;&lt;a href="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%2Farticles%2Fbtaaivi7tx3nxswqojrz.png" class="article-body-image-wrapper"&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%2Farticles%2Fbtaaivi7tx3nxswqojrz.png" alt=" " width="800" height="440"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;result :&lt;/p&gt;

&lt;p&gt;&lt;a href="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%2Farticles%2Fe4cmwrutigj7hif8ispj.png" class="article-body-image-wrapper"&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%2Farticles%2Fe4cmwrutigj7hif8ispj.png" alt=" " width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="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%2Farticles%2Ffz3k6zqbp49soh17bocq.png" class="article-body-image-wrapper"&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%2Farticles%2Ffz3k6zqbp49soh17bocq.png" alt=" " width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;When you click the &lt;strong&gt;Increment&lt;/strong&gt; or &lt;strong&gt;Decrement&lt;/strong&gt; button, React doesn’t reload the whole page. Instead of it updates the &lt;code&gt;count&lt;/code&gt; using &lt;code&gt;useState&lt;/code&gt;, and then quickly creates a new version of the UI in memory this is called the Virtual DOM . It compares this new version with the previous one and notices that only the number has changed. So instead of rebuilding everything, React updates just that small part of the count text on the screen. This makes the app feel fast and smooth because only the necessary change is applied, not the entire UI.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;**&lt;/p&gt;

&lt;h2&gt;
  
  
  Simple Conclusion
&lt;/h2&gt;

&lt;p&gt;**&lt;br&gt;
React DOM helps in rendering the page on the browser faster than the native HTML pages. By only changing the specific part of the DOM tree rather than re-rendering the entire tree again . &lt;/p&gt;

&lt;p&gt;That is the core reason why Virtual DOM manipulation is prefferred over Real DOM manipulation. &lt;/p&gt;

</description>
      <category>beginners</category>
      <category>javascript</category>
      <category>tutorial</category>
      <category>webdev</category>
    </item>
    <item>
      <title>The Beginner’s Guide to React Native for Mobile Devlopment</title>
      <dc:creator>Swyom Sanjog</dc:creator>
      <pubDate>Sun, 25 Jan 2026 16:59:27 +0000</pubDate>
      <link>https://dev.to/swyom_sanjog_4908464907cc/the-beginners-guide-to-react-native-for-mobile-development-58kl</link>
      <guid>https://dev.to/swyom_sanjog_4908464907cc/the-beginners-guide-to-react-native-for-mobile-development-58kl</guid>
      <description>&lt;p&gt;Hi everyone, once again welcome to my blog. I hope you’re all doing well. I also hope you’ve read my previous blog, where I talked about my project "BookBazaar". However, I didn’t explain the tech stack—what it is and why I chose it. In this blog, I’ll talk about React Native: what it is, why I chose it, and why I didn’t go with Swift or other frameworks. Let’s get started! &lt;/p&gt;

&lt;h2&gt;
  
  
  What is React Native ?
&lt;/h2&gt;

&lt;p&gt;React native is a powerful and widely used framework for building mobile applications that work on cross-platforms like Android and IOS . Instead of developing separate apps for each platform, developers can write a single codebase and use it on both devices. &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;In simple terms React Native is a framework that  people use to build mobile apps for cross platforms like Android and IOS, making the developers more faster and more efficient it is based on JavaScript and TypeScript and allow developers to create apps that feel smooth and truly native in performance and make user experience more comfortable.  &lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Because of its flexibility, faster development time and strong community supports, React Native has become a popular choice for developers and companies who want to build high-quality mobile apps while saving time, effort and cost .&lt;/p&gt;

&lt;p&gt;&lt;a href="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%2Farticles%2Fz5u9n1b5ojdzq49kbpq2.webp" class="article-body-image-wrapper"&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%2Farticles%2Fz5u9n1b5ojdzq49kbpq2.webp" alt=" " width="780" height="496"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  History of React Native
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;When Facebook first wanted to bring its service to mobile phones, they didn’t build a native app like most big tech companies. Instead, they used a mobile website built with HTML5. At first, this seemed like a good idea, but over time it caused many problems, especially with performance and user experience. The app felt slow and didn’t work as smoothly as native apps. In 2012, Mark Zuckerberg openly admitted that this was a big mistake, saying that Facebook relied too much on HTML instead of native technology.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Learning from this, Facebook’s developers started looking for a better solution. In 2013, a Facebook engineer named Jordan Walke discovered a new way to create iOS user interfaces using JavaScript. This idea was exciting because JavaScript was mostly used for web development at that time. To explore this further, Facebook organized an internal hackathon to see how much of mobile app development could be done using JavaScript.&lt;/p&gt;

&lt;p&gt;This experiment led to the creation of &lt;strong&gt;React Native&lt;/strong&gt;. At first, it was made only for &lt;strong&gt;iOS&lt;/strong&gt;, but later Facebook also added support for &lt;strong&gt;Android&lt;/strong&gt;. In &lt;strong&gt;2015&lt;/strong&gt;, React Native was shared as an open-source framework so that anyone could use it.&lt;/p&gt;

&lt;p&gt;React Native quickly became popular among developers. In just a few years, many developers from around the world started contributing to it on Github. This fast growth showed that developers trust React Native and like using it to build modern mobile apps.&lt;/p&gt;

&lt;h2&gt;
  
  
  What Make React Native unique ?
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;React Native is different from tools like &lt;strong&gt;Cordova&lt;/strong&gt; and &lt;strong&gt;PhoneGap&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Cordova and PhoneGap mostly show a &lt;strong&gt;web page inside a mobile app&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Because of this, apps made with them can feel &lt;strong&gt;slow&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;React Native does &lt;strong&gt;not&lt;/strong&gt; use web pages inside apps.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="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%2Farticles%2Fr25c23ysq8o141mo49m5.png" class="article-body-image-wrapper"&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%2Farticles%2Fr25c23ysq8o141mo49m5.png" alt=" " width="800" height="533"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Who Should Learn React Native?
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Beginners who want to start mobile app development.&lt;/li&gt;
&lt;li&gt;Web developers who already know JavaScript.&lt;/li&gt;
&lt;li&gt;Developers who want to build apps for both Android and iOS.&lt;/li&gt;
&lt;li&gt;Students looking to learn modern and in-demand development skills.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;React Native is beginner-friendly and a good choice if you want to build real mobile apps without learning many languages.&lt;/p&gt;

&lt;h2&gt;
  
  
  How React Native Works (Simple Explanation)
&lt;/h2&gt;

&lt;p&gt;React Native works by letting developers write mobile app code using &lt;strong&gt;JavaScript or TypeScript&lt;/strong&gt;. This code decides how the app looks and behaves. React Native then connects this code with the phone’s native system and turns it into real native components like buttons, text, and views. These components run directly on Android and iOS, just like normal native apps. Because of this, React Native apps feel fast, smooth, and truly native, while developers can still use one codebase for both platforms.&lt;/p&gt;

&lt;p&gt;&lt;a href="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%2Farticles%2F54v9l30bz3wnae920hor.png" class="article-body-image-wrapper"&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%2Farticles%2F54v9l30bz3wnae920hor.png" alt=" " width="800" height="595"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Final Thoughts
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;React Native is a great choice for beginners who want to start mobile app development. It lets developers build high-quality apps faster using a single codebase. Because it uses real native components, apps feel smooth and perform well. That’s why React Native is trusted by developers and companies all around the world.&lt;br&gt;
This is everything I’ve covered about React Native so far—its basics, history, and how it works according to my knowledge. If I missed anything important, feel free to comment below! I’d love to hear your thoughts and questions. In my next blog, I’ll continue with my BookBazaar project, where I left off, and cover things I couldn’t explain in this post.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;That’s all for now. Good night, and happy coding! 🌙🚀&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>programming</category>
      <category>android</category>
      <category>reactnative</category>
    </item>
    <item>
      <title>I Started Building My First React Native App – BookBazaar</title>
      <dc:creator>Swyom Sanjog</dc:creator>
      <pubDate>Sun, 18 Jan 2026 17:47:40 +0000</pubDate>
      <link>https://dev.to/swyom_sanjog_4908464907cc/i-started-building-my-first-react-native-app-bookbazaar-aop</link>
      <guid>https://dev.to/swyom_sanjog_4908464907cc/i-started-building-my-first-react-native-app-bookbazaar-aop</guid>
      <description>&lt;p&gt;Hello everyone 👋&lt;br&gt;
I’m a Computer Science student who recently started learning React Native, and I decided the best way to learn is by building real projects.&lt;/p&gt;

&lt;p&gt;So today, I officially started working on my first app called BookBazaar 📚&lt;/p&gt;

&lt;p&gt;🤔 What is BookBazaar?&lt;/p&gt;

&lt;p&gt;BookBazaar is a book exchange mobile app where users can explore, share, and exchange books.&lt;br&gt;
The goal of this project is not just to build an app—but to learn React Native step by step.&lt;/p&gt;

&lt;p&gt;🧭 What I Learned Today&lt;/p&gt;

&lt;p&gt;Today, I learned how the navigation system works in React Native.&lt;/p&gt;

&lt;p&gt;I explored:&lt;/p&gt;

&lt;p&gt;How screens connect with each other&lt;/p&gt;

&lt;p&gt;How Stack Navigator manages screen flow&lt;/p&gt;

&lt;p&gt;How apps move from Splash → Login → Home&lt;/p&gt;

&lt;p&gt;Instead of just watching tutorials, I learned this by actually building the navigation inside my project, which made the concepts much clearer.&lt;/p&gt;

&lt;p&gt;🧠 Challenges I Faced&lt;/p&gt;

&lt;p&gt;At first, navigation felt confusing:&lt;/p&gt;

&lt;p&gt;Too many screens&lt;/p&gt;

&lt;p&gt;Errors while navigating&lt;/p&gt;

&lt;p&gt;Understanding stack behavior&lt;/p&gt;

&lt;p&gt;But after debugging and testing step by step, things started making sense.&lt;br&gt;
This experience reminded me that errors are part of the learning process.&lt;/p&gt;

&lt;p&gt;&lt;a href="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%2Farticles%2Ftw0ec5rh6zgugflhbbj0.png" class="article-body-image-wrapper"&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%2Farticles%2Ftw0ec5rh6zgugflhbbj0.png" alt=" " width="800" height="360"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="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%2Farticles%2Fhffatsf2zzl592o9fajp.png" class="article-body-image-wrapper"&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%2Farticles%2Fhffatsf2zzl592o9fajp.png" alt=" " width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;🚀 What’s Next?&lt;/p&gt;

&lt;p&gt;Next, I plan to:&lt;/p&gt;

&lt;p&gt;Improve the UI&lt;/p&gt;

&lt;p&gt;Add Bottom Tab Navigation&lt;/p&gt;

&lt;p&gt;Work on authentication &amp;amp; data handling&lt;/p&gt;

&lt;p&gt;I’ll keep sharing my progress as I build BookBazaar.&lt;/p&gt;

&lt;p&gt;🤝 Let’s Connect&lt;/p&gt;

&lt;p&gt;If you’re also learning React Native or building your first app:&lt;/p&gt;

&lt;p&gt;Drop your suggestions 💬&lt;/p&gt;

&lt;p&gt;Share your experience&lt;/p&gt;

&lt;p&gt;Follow me for more updates on my dev journey 🚀&lt;/p&gt;

&lt;p&gt;Thanks for reading! 😊&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>learning</category>
      <category>programming</category>
      <category>buildinpublic</category>
    </item>
  </channel>
</rss>
