<?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: Kajal Deore</title>
    <description>The latest articles on DEV Community by Kajal Deore (@kajal_deore_abfd80bf25222).</description>
    <link>https://dev.to/kajal_deore_abfd80bf25222</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%2F2604136%2Fbf31c042-9a3f-47c5-b140-96f90dac614b.png</url>
      <title>DEV Community: Kajal Deore</title>
      <link>https://dev.to/kajal_deore_abfd80bf25222</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/kajal_deore_abfd80bf25222"/>
    <language>en</language>
    <item>
      <title>MERN Stack Practice</title>
      <dc:creator>Kajal Deore</dc:creator>
      <pubDate>Tue, 28 Jan 2025 05:14:17 +0000</pubDate>
      <link>https://dev.to/kajal_deore_abfd80bf25222/-52ga</link>
      <guid>https://dev.to/kajal_deore_abfd80bf25222/-52ga</guid>
      <description>&lt;div class="ltag__link"&gt;
  &lt;a href="/kajal_deore_abfd80bf25222" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__pic"&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%2Fuser%2Fprofile_image%2F2604136%2Fbf31c042-9a3f-47c5-b140-96f90dac614b.png" alt="kajal_deore_abfd80bf25222"&gt;
    &lt;/div&gt;
  &lt;/a&gt;
  &lt;a href="https://dev.to/kajal_deore_abfd80bf25222/10-practical-components-to-build-while-learning-mern-stack-3a9b" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__content"&gt;
      &lt;h2&gt;10 Practical Components to Build While Learning MERN Stack&lt;/h2&gt;
      &lt;h3&gt;Kajal Deore ・ Jan 19&lt;/h3&gt;
      &lt;div class="ltag__link__taglist"&gt;
        &lt;span class="ltag__link__tag"&gt;#webdev&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#react&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#mern&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#fullstack&lt;/span&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
&lt;/div&gt;


</description>
      <category>webdev</category>
      <category>javascript</category>
      <category>beginners</category>
      <category>react</category>
    </item>
    <item>
      <title>10 Practical Components to Build While Learning MERN Stack</title>
      <dc:creator>Kajal Deore</dc:creator>
      <pubDate>Sun, 19 Jan 2025 17:11:32 +0000</pubDate>
      <link>https://dev.to/kajal_deore_abfd80bf25222/10-practical-components-to-build-while-learning-mern-stack-3a9b</link>
      <guid>https://dev.to/kajal_deore_abfd80bf25222/10-practical-components-to-build-while-learning-mern-stack-3a9b</guid>
      <description>&lt;p&gt;The MERN stack—comprising MongoDB, Express.js, React.js, and Node.js—is an excellent choice for full-stack development. If you’re diving into MERN development and prefer a hands-on approach, building modular components is a great way to hone your skills. Here are 10 practical components and features you can create to strengthen your MERN stack expertise:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1. Authentication System&lt;/strong&gt;&lt;br&gt;
Start with the basics: create secure login and sign-up forms. Add validation on both the frontend (React) and backend (Node.js with Express). Use JSON Web Tokens (JWT) for user authentication and include a "Forgot Password" feature to handle password resets.&lt;/p&gt;

&lt;p&gt;Key Features:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;User authentication with JWT.&lt;/li&gt;
&lt;li&gt;Password hashing using Bcrypt.&lt;/li&gt;
&lt;li&gt;Email-based password reset functionality.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;2. User Dashboard&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Design a personalized dashboard that displays user-specific data after login. This project will help you manage protected routes and dynamically fetch user-related content from your backend.&lt;/p&gt;

&lt;p&gt;Key Features:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Personalized greetings.&lt;/li&gt;
&lt;li&gt;Display recent activity or saved items.&lt;/li&gt;
&lt;li&gt;Editable profile information.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;3. CRUD Operations&lt;/strong&gt;&lt;br&gt;
CRUD (Create, Read, Update, Delete) operations are the backbone of any application. For practice, build a task manager or a simple blog application.&lt;/p&gt;

&lt;p&gt;Key Features:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Add, view, edit, and delete tasks or posts.&lt;/li&gt;
&lt;li&gt;Maintain a database using MongoDB.&lt;/li&gt;
&lt;li&gt;Use pagination for listing tasks or posts.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;4. E-Commerce Features&lt;/strong&gt;&lt;br&gt;
Step into the world of e-commerce by creating components for product listing, cart management, and order processing.&lt;/p&gt;

&lt;p&gt;Key Features:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Product filtering and sorting.&lt;/li&gt;
&lt;li&gt;Cart and wishlist functionality.&lt;/li&gt;
&lt;li&gt;Order summary and history pages.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;5. Social Media Features&lt;/strong&gt;&lt;br&gt;
Simulate a mini social network by creating user profiles, a follow/unfollow system, and post interactions.&lt;/p&gt;

&lt;p&gt;Key Features:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;User profiles with editable details.&lt;/li&gt;
&lt;li&gt;Post creation, likes, and comments.&lt;/li&gt;
&lt;li&gt;Display a feed of posts from followed users.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;6. File Management System&lt;/strong&gt;&lt;br&gt;
Implement a file upload and management system to allow users to upload profile pictures or documents.&lt;/p&gt;

&lt;p&gt;Key Features:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;File upload using Multer.&lt;/li&gt;
&lt;li&gt;Display uploaded files in the user interface.&lt;/li&gt;
&lt;li&gt;Limit file types and sizes for uploads.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;7. Real-time Features&lt;/strong&gt;&lt;br&gt;
Build real-time functionality like chat or notifications using Socket.io. This will help you learn how to handle WebSocket communication.&lt;/p&gt;

&lt;p&gt;Key Features:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Real-time messaging between users.&lt;/li&gt;
&lt;li&gt;Live notifications for actions like receiving a message or a new follower.&lt;/li&gt;
&lt;li&gt;Indication of online/offline status.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;8. Admin Panel&lt;/strong&gt;&lt;br&gt;
Create an admin dashboard to manage users, content, and analytics. This project will teach you about role-based access control (RBAC).&lt;/p&gt;

&lt;p&gt;Key Features:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;View and manage users.&lt;/li&gt;
&lt;li&gt;Assign roles and permissions.&lt;/li&gt;
&lt;li&gt;Display site activity metrics.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;9. API Integration&lt;/strong&gt;&lt;br&gt;
Practice integrating third-party APIs by building a feature-rich application.&lt;/p&gt;

&lt;p&gt;Key Features:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Integrate a weather API to display forecasts.&lt;/li&gt;
&lt;li&gt;Fetch news articles from a public news API.&lt;/li&gt;
&lt;li&gt;Combine multiple APIs for a dashboard-like experience.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;10. Mapping and Location Features&lt;/strong&gt;&lt;br&gt;
Learn how to work with location-based features using mapping APIs like Google Maps.&lt;/p&gt;

&lt;p&gt;Key Features:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Add a map interface.&lt;/li&gt;
&lt;li&gt;Allow users to pin and search locations.&lt;/li&gt;
&lt;li&gt;Display routes between two points.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Final Thoughts&lt;/strong&gt;&lt;br&gt;
Building modular components not only enhances your technical knowledge but also gives you a portfolio of mini-projects to showcase your skills. Start with simpler components and gradually move to more complex features. By the time you’ve completed these projects, you’ll be proficient in the MERN stack and ready to tackle full-scale applications.&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>react</category>
      <category>mern</category>
      <category>fullstack</category>
    </item>
    <item>
      <title>Getting Started with MERN Stack: A Beginner's Guide</title>
      <dc:creator>Kajal Deore</dc:creator>
      <pubDate>Sun, 12 Jan 2025 08:42:41 +0000</pubDate>
      <link>https://dev.to/kajal_deore_abfd80bf25222/getting-started-with-mern-stack-a-beginners-guide-3b6f</link>
      <guid>https://dev.to/kajal_deore_abfd80bf25222/getting-started-with-mern-stack-a-beginners-guide-3b6f</guid>
      <description>&lt;h2&gt;
  
  
  What is the MERN Stack?
&lt;/h2&gt;

&lt;p&gt;MERN is like the Avengers of web development—a team of superheroes working together to create awesome web apps. Here’s the squad:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;MongoDB&lt;/strong&gt;: The chill database that stores your data in JSON-like documents. Flexible, just like your plans on a Friday night.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Express.js&lt;/strong&gt;: The backend wizard that makes server-side development a breeze. Think of it as the brain behind the operation.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;React.js&lt;/strong&gt;: The cool kid on the block, responsible for building dynamic and interactive user interfaces. Your users will love it.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Node.js&lt;/strong&gt;: The silent powerhouse that runs JavaScript on the server. It’s like the friend who’s always there when you need them.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Together, they make web development smooth, fast, and—dare we say it—fun.&lt;/p&gt;




&lt;h2&gt;
  
  
  Why Choose MERN?
&lt;/h2&gt;

&lt;p&gt;Here’s why MERN is worth your time (and sleepless nights):&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;One Language to Rule Them All&lt;/strong&gt;: JavaScript everywhere! Frontend, backend, database—all in one language. It’s like having a universal remote.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Scalability Goals&lt;/strong&gt;: From your tiny side project to the next billion-dollar app, MERN scales like a pro.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Community Power&lt;/strong&gt;: Got stuck? Google it. The MERN community probably has a meme—uh, solution—for your problem.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Customizable AF&lt;/strong&gt;: Open-source tech means you can tweak it to your heart’s content. Go wild (but maybe keep some sanity).&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Setting Up Your Environment
&lt;/h2&gt;

&lt;p&gt;Before you start building your MERN masterpiece, you need to set the stage. Here’s your checklist:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Node.js and npm&lt;/strong&gt;: Get them from &lt;a href="https://nodejs.org/" rel="noopener noreferrer"&gt;Node.js official website&lt;/a&gt;. They’re like bread and butter—can’t live without them.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;MongoDB&lt;/strong&gt;: Download it from &lt;a href="https://www.mongodb.com/" rel="noopener noreferrer"&gt;MongoDB official website&lt;/a&gt;. Pro tip: Don’t let the NoSQL term scare you. It’s not a big deal.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Code Editor&lt;/strong&gt;: VS Code is the Netflix of code editors. Everyone uses it, and it’s great.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Verify your setup like a boss:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;node &lt;span class="nt"&gt;-v&lt;/span&gt;
npm &lt;span class="nt"&gt;-v&lt;/span&gt;
mongo &lt;span class="nt"&gt;--version&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  Your First MERN App
&lt;/h2&gt;

&lt;h3&gt;
  
  
  1. &lt;strong&gt;Initialize the Project&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Start by creating a new project. Think of it as your baby.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;mkdir &lt;/span&gt;mern-app
&lt;span class="nb"&gt;cd &lt;/span&gt;mern-app
npm init &lt;span class="nt"&gt;-y&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  2. &lt;strong&gt;Set Up the Backend&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Install the backend goodies:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;npm &lt;span class="nb"&gt;install &lt;/span&gt;express mongoose dotenv
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Create an &lt;code&gt;index.js&lt;/code&gt; file and give life to your backend:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;express&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;require&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;express&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;mongoose&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;require&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;mongoose&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="nf"&gt;require&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;dotenv&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;).&lt;/span&gt;&lt;span class="nf"&gt;config&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;

&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;app&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;express&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;PORT&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;process&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;env&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;PORT&lt;/span&gt; &lt;span class="o"&gt;||&lt;/span&gt; &lt;span class="mi"&gt;5000&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

&lt;span class="c1"&gt;// Middleware&lt;/span&gt;
&lt;span class="nx"&gt;app&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;use&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;express&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;json&lt;/span&gt;&lt;span class="p"&gt;());&lt;/span&gt;

&lt;span class="c1"&gt;// Routes&lt;/span&gt;
&lt;span class="nx"&gt;app&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;get&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;/&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;req&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;res&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nx"&gt;res&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;send&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Welcome to the MERN Stack!&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;});&lt;/span&gt;

&lt;span class="c1"&gt;// MongoDB Connection&lt;/span&gt;
&lt;span class="nx"&gt;mongoose&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;connect&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;process&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;env&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;MONGO_URI&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="na"&gt;useNewUrlParser&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="kc"&gt;true&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;useUnifiedTopology&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="kc"&gt;true&lt;/span&gt; &lt;span class="p"&gt;})&lt;/span&gt;
  &lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;then&lt;/span&gt;&lt;span class="p"&gt;(()&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;MongoDB Connected&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt;
  &lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="k"&gt;catch&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;err&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;err&lt;/span&gt;&lt;span class="p"&gt;));&lt;/span&gt;

&lt;span class="nx"&gt;app&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;listen&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;PORT&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;`Server running on port &lt;/span&gt;&lt;span class="p"&gt;${&lt;/span&gt;&lt;span class="nx"&gt;PORT&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;`&lt;/span&gt;&lt;span class="p"&gt;));&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  3. &lt;strong&gt;Set Up the Frontend&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Switch gears to the frontend:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;npx create-react-app client
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Kickstart the React server:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;cd &lt;/span&gt;client
npm start
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  4. &lt;strong&gt;Connect Backend and Frontend&lt;/strong&gt;
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Use the &lt;code&gt;axios&lt;/code&gt; library to talk to your backend like besties.&lt;/li&gt;
&lt;li&gt;Add this proxy setting in the React &lt;code&gt;package.json&lt;/code&gt; file to avoid awkward silences:
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="nl"&gt;"proxy"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"http://localhost:5000"&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Now, watch your frontend and backend have a smooth convo.&lt;/p&gt;




&lt;h2&gt;
  
  
  Learning Resources
&lt;/h2&gt;

&lt;p&gt;Here’s your MERN stack syllabus (minus the boring lectures):&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://reactjs.org/docs/getting-started.html" rel="noopener noreferrer"&gt;React Documentation&lt;/a&gt; (for when React ghosts you).&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://expressjs.com/" rel="noopener noreferrer"&gt;Express.js Docs&lt;/a&gt; (your backend cheat sheet).&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.mongodb.com/docs/" rel="noopener noreferrer"&gt;MongoDB Docs&lt;/a&gt; (database for dummies).&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://nodejs.org/en/docs/" rel="noopener noreferrer"&gt;Node.js Docs&lt;/a&gt; (JavaScript runs the world—or at least this stack).&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Tips for Beginners
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Keep It Simple&lt;/strong&gt;: Don’t build the next Facebook right away. Start with a to-do list. Trust us.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Learn by Doing&lt;/strong&gt;: Reading is great, but nothing beats rolling up your sleeves and coding.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Google is Your BFF&lt;/strong&gt;: Stuck? Someone, somewhere, has already faced the same problem.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Master JavaScript&lt;/strong&gt;: It’s the backbone of MERN. Nail the basics, and the rest will follow.&lt;/li&gt;
&lt;/ol&gt;




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

&lt;p&gt;The MERN stack is your golden ticket to the web development world. It’s powerful, beginner-friendly, and super fun to work with. So, what are you waiting for? Fire up your terminal, and let’s get coding!&lt;/p&gt;

&lt;p&gt;Remember, every expert was once a beginner who refused to give up. You got this! 🚀&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>javascript</category>
      <category>mern</category>
      <category>fullstack</category>
    </item>
    <item>
      <title>A Beginner’s Guide to GSSOC, SWOC, Open Source and the GitHub Glow-Up</title>
      <dc:creator>Kajal Deore</dc:creator>
      <pubDate>Sun, 05 Jan 2025 09:55:26 +0000</pubDate>
      <link>https://dev.to/kajal_deore_abfd80bf25222/gssoc-swoc-and-the-github-glow-up-a-beginners-guide-to-open-source-4kc0</link>
      <guid>https://dev.to/kajal_deore_abfd80bf25222/gssoc-swoc-and-the-github-glow-up-a-beginners-guide-to-open-source-4kc0</guid>
      <description>&lt;p&gt;&lt;strong&gt;Contributing to Open Source with GSSOC &amp;amp; SWOC&lt;/strong&gt;  &lt;/p&gt;

&lt;p&gt;If you’ve registered for &lt;strong&gt;&lt;a href="https://gssoc.girlscript.tech/" rel="noopener noreferrer"&gt;GSSOC (GirlScript Summer of Code)&lt;/a&gt;&lt;/strong&gt; or &lt;strong&gt;&lt;a href="https://www.socialwinterofcode.com/" rel="noopener noreferrer"&gt;SWOC (Social Winter of Code)&lt;/a&gt;&lt;/strong&gt; but still find yourself asking:&lt;/p&gt;

&lt;p&gt;❔ &lt;em&gt;How do I actually contribute to an open-source project?&lt;/em&gt;&lt;br&gt;&lt;br&gt;
❔ &lt;em&gt;Where do I start?&lt;/em&gt;&lt;br&gt;&lt;br&gt;
❔ &lt;em&gt;"Merge conflicts" sound intimidating to you?&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Don't worry—you’re not alone! (I had the same issue) 😅  &lt;/p&gt;

&lt;p&gt;Let me be a little shameless here…&lt;br&gt;&lt;br&gt;
👩‍💻 Check out my GitHub profile — &lt;a href="https://github.com/KajalDeore04" rel="noopener noreferrer"&gt;KajalDeore04&lt;/a&gt;. Follow me or give my repo a star and make me famous! 🌟  &lt;/p&gt;



&lt;p&gt;First of all, let me tell you that contributing to open source is truly amazing. I didn’t realize how much I’d enjoy it when I first registered.  &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Why YOU should start contributing:&lt;/strong&gt;  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Test your programming skills and become a &lt;em&gt;God-level programmer&lt;/em&gt;! 🗿
&lt;/li&gt;
&lt;li&gt;Get better at using Git and GitHub. Your GitHub graph will be stacked! 💪🔥
&lt;/li&gt;
&lt;li&gt;End the cycle of sitting and wondering, "Where do I even start coding?"
&lt;/li&gt;
&lt;/ul&gt;


&lt;h3&gt;
  
  
  Steps to Get Started:
&lt;/h3&gt;
&lt;h4&gt;
  
  
  Step 1: Find a Bug or Suggest a Feature
&lt;/h4&gt;

&lt;p&gt;Start by exploring the repository for issues. Found a bug or want to add something cool? Create an issue or pick one that’s already listed and wait until the admin assigns it to you. Boom, you're ready to dive in! 🏊‍♂️  &lt;/p&gt;
&lt;h4&gt;
  
  
  Step 2: Fork the Repo 🍴
&lt;/h4&gt;

&lt;p&gt;Fork the repository you want to work on—this creates your personal copy of the project. Essential, since you can’t directly edit the admin’s repository.  &lt;/p&gt;
&lt;h4&gt;
  
  
  Step 3: Create a Local Repository 📁
&lt;/h4&gt;

&lt;p&gt;Click on "Code" and copy the Link.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;git clone &amp;lt;copied &lt;span class="nb"&gt;link&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt;  
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h4&gt;
  
  
  Step 4: Start Working in Your Code Editor 💻
&lt;/h4&gt;

&lt;p&gt;Solve the issue and once done…  &lt;/p&gt;

&lt;h4&gt;
  
  
  Step 5: Create a New Branch 🌿
&lt;/h4&gt;

&lt;p&gt;Never work directly on the main branch. Instead, create a new branch for each task:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;git checkout &lt;span class="nt"&gt;-b&lt;/span&gt; &lt;span class="s2"&gt;"branch-name"&lt;/span&gt;  
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Use descriptive names:  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;For bugs: &lt;code&gt;bug/&amp;lt;issueNo&amp;gt;-&amp;lt;bugName&amp;gt;&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;For features: &lt;code&gt;feat/&amp;lt;issueNo&amp;gt;-&amp;lt;featName&amp;gt;&lt;/code&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;
  
  
  Step 6: Push Your Code ✨
&lt;/h4&gt;

&lt;p&gt;Stage your changes:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;git add &lt;span class="nb"&gt;.&lt;/span&gt;  
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Commit with a message:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;git commit &lt;span class="nt"&gt;-m&lt;/span&gt; &lt;span class="s2"&gt;"commit message"&lt;/span&gt;  
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Push it to your branch:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;git push  
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Set the upstream branch when prompted:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;git push &lt;span class="nt"&gt;--set-upstream&lt;/span&gt; origin branch-name  
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h4&gt;
  
  
  Step 7: The PR Party 🎉
&lt;/h4&gt;

&lt;p&gt;Create a Pull Request (PR) to share your changes.  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Select your branch for merging.
&lt;/li&gt;
&lt;li&gt;Mention the issue you’re solving using keywords like &lt;code&gt;fixes: #42&lt;/code&gt;.
&lt;/li&gt;
&lt;li&gt;Describe your changes—why you made them and how they work. Attach screenshots if applicable! 📸
&lt;/li&gt;
&lt;/ul&gt;




&lt;h3&gt;
  
  
  After Party — Keep the Main Branch Fresh 🌱
&lt;/h3&gt;

&lt;p&gt;Once your PR is complete:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;git switch main  
git pull upstream main  
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Create your next branch from the updated main:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;git checkout &lt;span class="nt"&gt;-b&lt;/span&gt; &lt;span class="s2"&gt;"new-branch-name"&lt;/span&gt;  
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h3&gt;
  
  
  Uh-Oh, Merge Conflicts! 😱
&lt;/h3&gt;

&lt;p&gt;When merge conflicts occur:  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Pull the latest changes:
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;  git pull upstream main  
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;Resolve conflicts by deciding what stays and what goes:
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;  git add &lt;span class="nb"&gt;.&lt;/span&gt;  
  git rebase &lt;span class="nt"&gt;--continue&lt;/span&gt;  
  git commit &lt;span class="nt"&gt;-m&lt;/span&gt; &lt;span class="s2"&gt;"Resolved merge conflicts."&lt;/span&gt;  
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;Push your changes:
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;  git push &lt;span class="nt"&gt;-f&lt;/span&gt;  
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h4&gt;
  
  
  Pro Tip: Stay Updated 🔄
&lt;/h4&gt;

&lt;p&gt;Keep your fork synced with the original repository to avoid conflicts:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;git pull upstream main  
git push  
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;p&gt;&lt;strong&gt;That’s It! 🎉&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
Still here? Checkout my GitHub profile — &lt;a href="https://github.com/KajalDeore04" rel="noopener noreferrer"&gt;KajalDeore04&lt;/a&gt;. Follow me or give my repo a star and make me famous! 😅🌟  &lt;/p&gt;

&lt;p&gt;Congratulations! You’ve mastered the art of contributing like a pro. Keep your branches tidy, PRs descriptive, and screenshots plentiful. Happy coding, and may the Git be with you! ✨  &lt;/p&gt;

</description>
      <category>git</category>
      <category>github</category>
      <category>opensource</category>
      <category>webdev</category>
    </item>
  </channel>
</rss>
