<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Backend Brains]]></title><description><![CDATA[A beginner backend developer's journey — real lessons, mistakes, tips &amp; API struggles shared weekly 💻]]></description><link>https://backend-brains.hashnode.dev</link><generator>RSS for Node</generator><lastBuildDate>Sat, 17 Oct 2026 12:20:12 GMT</lastBuildDate><atom:link href="https://backend-brains.hashnode.dev/rss.xml" rel="self" type="application/rss+xml"/><language><![CDATA[en]]></language><ttl>60</ttl><item><title><![CDATA[What Happens When You Hit “Sign Up”? (Beginner-Friendly Breakdown)]]></title><description><![CDATA[When you click “Sign Up” on any website — Instagram, Netflix, or even a small app — a lot happens behind the scenes in just a fraction of a second.Here’s a simple, beginner-friendly breakdown of the entire process.

1. You Fill the Form & Hit Submit
...]]></description><link>https://backend-brains.hashnode.dev/what-happens-when-you-hit-sign-up-beginner-friendly-breakdown</link><guid isPermaLink="true">https://backend-brains.hashnode.dev/what-happens-when-you-hit-sign-up-beginner-friendly-breakdown</guid><dc:creator><![CDATA[Shrashti from Backend Brains]]></dc:creator><pubDate>Mon, 17 Nov 2025 10:09:34 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1763374155229/827f0050-ab52-4451-8374-df44b66f1250.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>When you click <strong>“Sign Up”</strong> on any website — Instagram, Netflix, or even a small app — a lot happens behind the scenes in just a fraction of a second.<br />Here’s a <strong>simple, beginner-friendly</strong> breakdown of the entire process.</p>
<hr />
<h2 id="heading-1-you-fill-the-form-amp-hit-submit"><strong>1. You Fill the Form &amp; Hit Submit</strong></h2>
<p>Example:</p>
<ul>
<li><p>Name</p>
</li>
<li><p>Email</p>
</li>
<li><p>Password</p>
</li>
</ul>
<p>Your browser now sends this data to the backend using a <strong>POST request</strong>.</p>
<p>Something like:</p>
<pre><code class="lang-json">{
  <span class="hljs-attr">"name"</span>: <span class="hljs-string">"Shrashti"</span>,
  <span class="hljs-attr">"email"</span>: <span class="hljs-string">"shrashti@example.com"</span>,
  <span class="hljs-attr">"password"</span>: <span class="hljs-string">"mypassword123"</span>
}
</code></pre>
<h2 id="heading-2-backend-validates-the-input"><strong>2. Backend Validates the Input</strong></h2>
<p>The backend checks:</p>
<ul>
<li><p>Is the email valid?</p>
</li>
<li><p>Is the password long enough?</p>
</li>
<li><p>Did the user enter all required fields?</p>
</li>
<li><p>Does this email already exist?</p>
</li>
</ul>
<p>If something is wrong → backend sends an error back.</p>
<hr />
<h2 id="heading-3-password-is-never-stored-directly"><strong>3. Password Is Never Stored Directly</strong></h2>
<p>This is the MOST important step.</p>
<p>Your password is converted into a <strong>hashed version</strong> using algorithms like <strong>bcrypt</strong>.</p>
<p>For example:</p>
<p><code>"mypassword123"</code> → <code>"$2b$10$7hGd..."</code></p>
<p>This hash is what gets stored in the database.<br />Not the real password.</p>
<p>Even the developer <strong>cannot</strong> see the real password later.</p>
<hr />
<h2 id="heading-4-user-is-saved-in-the-database"><strong>4. User Is Saved in the Database</strong></h2>
<p>The backend creates a new user entry like:</p>
<pre><code class="lang-json">{
  <span class="hljs-attr">"id"</span>: <span class="hljs-string">"12345"</span>,
  <span class="hljs-attr">"name"</span>: <span class="hljs-string">"Shrashti"</span>,
  <span class="hljs-attr">"email"</span>: <span class="hljs-string">"shrashti@example.com"</span>,
  <span class="hljs-attr">"passwordHash"</span>: <span class="hljs-string">"$2b$10$7hGd..."</span>,
  <span class="hljs-attr">"createdAt"</span>: <span class="hljs-string">"2025-01-01"</span>
}
</code></pre>
<p>That’s your account creation moment 🎉</p>
<h2 id="heading-5-the-server-creates-a-token-optional-but-common"><strong>5. The Server Creates a Token (Optional but Common)</strong></h2>
<p>Many apps log you in automatically after sign-up.</p>
<p>So the server generates a <strong>JWT token</strong>, which basically says:</p>
<blockquote>
<p>“This person is now logged in.”</p>
</blockquote>
<p>That token is sent back to your browser.</p>
<hr />
<h2 id="heading-6-browser-stores-the-token"><strong>6. Browser Stores the Token</strong></h2>
<p>Your browser saves the token (usually in cookies or localStorage).<br />Now every request you make will include this token so the server knows it's you.</p>
<p>This is how you stay logged in.</p>
<hr />
<h2 id="heading-in-short">⭐ <strong>In Short</strong></h2>
<p>When you hit <strong>Sign Up</strong>:</p>
<ol>
<li><p>Form data → sent to backend</p>
</li>
<li><p>Backend validates it</p>
</li>
<li><p>Password is hashed</p>
</li>
<li><p>User record is stored</p>
</li>
<li><p>Token is generated</p>
</li>
<li><p>Browser stores login info</p>
</li>
</ol>
<p>All of this happens in less than <strong>0.2 seconds</strong>.</p>
<hr />
<h2 id="heading-final-note">⭐ Final Note</h2>
<p>This entire flow is the backbone of user registration in <strong>almost every website and app</strong>.<br />Understanding it helps you understand both <strong>backend</strong> and <strong>authentication</strong> more clearly — especially if you’re learning Node.js, Django, or any backend framework.</p>
]]></content:encoded></item><item><title><![CDATA[What Happens When You Hit Login? (A Simple Backend Breakdown)]]></title><description><![CDATA[Ever wondered what really happens behind the scenes when you click that “Login” button? Let’s explore how your app securely verifies you in seconds.
🪴 Introduction
We all use the “Login” button every day — on Instagram, Spotify, Netflix — but have y...]]></description><link>https://backend-brains.hashnode.dev/what-happens-when-you-hit-login-a-simple-backend-breakdown</link><guid isPermaLink="true">https://backend-brains.hashnode.dev/what-happens-when-you-hit-login-a-simple-backend-breakdown</guid><category><![CDATA[#backendbrains]]></category><dc:creator><![CDATA[Shrashti from Backend Brains]]></dc:creator><pubDate>Thu, 06 Nov 2025 12:40:30 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/stock/unsplash/4Kb_U5iZG8Y/upload/399df4fee59ad85a025d529999703b57.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Ever wondered what really happens behind the scenes when you click that “Login” button? Let’s explore how your app securely verifies you in seconds.</p>
<h3 id="heading-introduction">🪴 <strong>Introduction</strong></h3>
<p>We all use the “Login” button every day — on Instagram, Spotify, Netflix — but have you ever thought about <em>what happens behind it</em>?</p>
<p>As a backend developer and intern, I’ve learned that the “Login” process is like a short story where your browser, server, and database all talk to each other to confirm:</p>
<blockquote>
<p>“Hey, is this really you?”</p>
</blockquote>
<p>In this post, let’s break it down step-by-step in a simple way 🌱</p>
<h3 id="heading-step-1-you-click-login">⚙️ <strong>Step 1: You Click ‘Login’</strong></h3>
<p>When you enter your username and password and click <strong>Login</strong>, your frontend (website or app) collects that information and prepares to send it to the backend server — usually via an <strong>API request</strong> like this:</p>
<pre><code class="lang-javascript">POST /login { <span class="hljs-string">"email"</span>: <span class="hljs-string">"shrashti@example.com"</span>, <span class="hljs-string">"password"</span>: <span class="hljs-string">"mypassword123"</span> }
</code></pre>
<h3 id="heading-step-2-backend-receives-the-request">🧩 <strong>Step 2: Backend Receives the Request</strong></h3>
<p>The backend (often a Node.js + Express app) receives this data, validates it, and checks:</p>
<ul>
<li><p>Are all fields present?</p>
</li>
<li><p>Is the data format correct?</p>
</li>
</ul>
<p>If anything’s wrong (say, missing password), it sends back an error right away.</p>
<hr />
<h3 id="heading-step-3-database-check">🗄️ <strong>Step 3: Database Check</strong></h3>
<p>Once the data looks fine, the backend connects to the <strong>database</strong> (like MongoDB) and searches for a matching email or username.</p>
<p>If the user exists, it fetches the stored (hashed) password.</p>
<h3 id="heading-step-4-password-verification">🔐 <strong>Step 4: Password Verification</strong></h3>
<p>The backend never stores your real password — instead, it stores a <strong>hashed</strong> version (using libraries like bcrypt).<br />When you log in, it compares the hash of the password you entered with the stored one.</p>
<p>If they match → ✅ you’re verified.<br />If not → ❌ “Invalid Credentials.</p>
<hr />
<h3 id="heading-step-5-generating-a-token-session">🎟️ <strong>Step 5: Generating a Token (Session)</strong></h3>
<p>Once verified, the backend creates a <strong>JWT token (JSON Web Token)</strong> or session ID.<br />This token proves that you’re logged in, so you don’t need to re-enter your password every time.</p>
<p>Your browser stores it securely (in cookies or local storage).</p>
<hr />
<h3 id="heading-step-6-accessing-your-account">🔁 <strong>Step 6: Accessing Your Account</strong></h3>
<p>Now, when you visit your profile or dashboard, the frontend sends that token to the backend with every request — and the backend checks:</p>
<blockquote>
<p>“Is this a valid, unexpired token?”</p>
</blockquote>
<p>If yes, it serves your personalized data (profile, messages, etc.).</p>
<p>And that’s how you get instant access 🎯</p>
<h3 id="heading-conclusion">🌿 <strong>Conclusion</strong></h3>
<p>So next time you hit “Login,” remember — it’s not magic ✨<br />It’s a smart conversation between your frontend, backend, and database to make sure your data stays <em>yours</em>.</p>
<p>Learning how this flow works is one of the most fun parts of backend development — and this tiny process is the foundation for almost every secure app you use.</p>
]]></content:encoded></item><item><title><![CDATA[What is an API? Explained with Pizza 🍕 (Beginner-Friendly)]]></title><description><![CDATA[Ever ordered pizza online? Congrats — you’re using APIs already!
In the world of backend development, API stands for Application Programming Interface — but let’s simplify that.
🍕 Pizza Analogy:

🍕 How an API Works – Pizza Edition
1. User
🧍🏽‍♀️ Y...]]></description><link>https://backend-brains.hashnode.dev/what-is-an-api-explained-with-pizza-beginner-friendly</link><guid isPermaLink="true">https://backend-brains.hashnode.dev/what-is-an-api-explained-with-pizza-beginner-friendly</guid><category><![CDATA[APIs]]></category><category><![CDATA[backend]]></category><dc:creator><![CDATA[Shrashti from Backend Brains]]></dc:creator><pubDate>Wed, 09 Jul 2025 18:47:00 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1752083763558/06762709-518c-4584-acbc-83289cc6980f.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Ever ordered pizza online? Congrats — you’re using APIs already!</p>
<p>In the world of backend development, <strong>API</strong> stands for <strong>Application Programming Interface</strong> — but let’s simplify that.</p>
<h3 id="heading-pizza-analogy">🍕 Pizza Analogy:</h3>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1752086074994/de9e496d-d3ce-458b-ae44-92ba0745cc88.png" alt class="image--center mx-auto" /></p>
<h3 id="heading-how-an-api-works-pizza-edition">🍕 <strong>How an API Works – Pizza Edition</strong></h3>
<h4 id="heading-1-user">1. <strong>User</strong></h4>
<p>🧍🏽‍♀️ <em>You (the customer)</em><br />You say:</p>
<blockquote>
<p>"I want a Margherita!"<br />✅ This represents the <strong>client (frontend)</strong> — making a request for data.</p>
</blockquote>
<h4 id="heading-2-api-waiter">2. <strong>API (Waiter)</strong></h4>
<p>🤵 <em>The waiter receives your request</em><br />He passes it to the kitchen without changing anything — just delivering the message.<br />✅ The <strong>API</strong> acts as a <strong>messenger</strong> between the client and server.</p>
<h4 id="heading-3-kitchen-backendserver">3. <strong>Kitchen (Backend/Server)</strong></h4>
<p>👨‍🍳 <em>The chef prepares the pizza (data)</em><br />Backend processes your request, performs logic, accesses the database, etc.<br />✅ This is the <strong>server/backend</strong>, which prepares the "response".</p>
<h4 id="heading-4-api-waiter">4. <strong>API (Waiter)</strong></h4>
<p>🍕 <em>Waiter picks up the pizza and brings it to you</em><br />✅ API delivers the result (data) back to the frontend.</p>
<h4 id="heading-5-user-receives-the-pizza-response">5. <strong>User receives the Pizza (Response)</strong></h4>
<p>😋 <em>You get the pizza you asked for!</em><br />✅ You receive the <strong>response</strong> — e.g., a JSON object.</p>
<p>That’s how API works!</p>
<h3 id="heading-real-tech-version">🧠 Real Tech Version:</h3>
<p>When you make a request like something searching on Google or any browser, your browser sends an request to a server, which processes the request and send back the response — usually in the form of data(JSON).</p>
<p>An API defines:</p>
<ul>
<li><p>How to request data</p>
</li>
<li><p>What format to expect</p>
</li>
<li><p>What happens if request fails</p>
</li>
</ul>
<h3 id="heading-quick-example">✅ Quick Example:</h3>
<p>GET /order?item=margherita</p>
<p>Backend responds;</p>
<pre><code class="lang-plaintext">{
  "status": "success",
  "order": "1 Margherita Pizza"
}
</code></pre>
<h3 id="heading-my-take-as-a-backend-intern">🧩 My Take as a Backend Intern:</h3>
<p>Learning APIs felt scary at first. But using analogies and small projects helped me get comfortable. Now I build and use daily.</p>
<h3 id="heading-follow-my-journey">🙌 Follow My Journey:</h3>
<p>This is my first post as part of my backend dev journey at <a class="user-mention" href="https://hashnode.com/@backendbrains26">Shrashti from Backend Brains</a> .<br />I’ll be posting weekly learnings, struggles, code examples, and beginner guides here.<br />Let’s grow together 🚀</p>
<blockquote>
<p>🍕 APIs are like ordering pizza!</p>
<p>You're the customer.<br />API is your waiter.<br />Backend is the kitchen.<br />JSON is the pizza!</p>
<p>🍴 Simple, right? Follow <a class="user-mention" href="https://hashnode.com/@backendbrains26">Shrashti from Backend Brains</a> for more backend dev analogies, tips, and guides!</p>
<p>#API #backend #webdevelopment #backendbrains</p>
</blockquote>
]]></content:encoded></item></channel></rss>