🚂
Express Basics & Setup

What is Express.js?

Minimal Web Framework for Node
💡 Plain Node ka http module, EK KHAALI PLOT jaisa hai — deewar, darwaza, plumbing SAB KHUD banana padta hai. Express, USI plot par PEHLE SE bani hui EK FRAME hai: routing, middleware aur request parsing ka DHAANCHA ready milta hai, tum sirf apne kamre sajaate ho.

Express.js, Node.js ke liye EK MINIMAL aur UNOPINIONATED web framework hai. "Unopinionated" ka matlab hai ki Express tumhe folder structure, database ya template engine choose karne par FORCE nahi karta — wo sirf HTTP server banane ka boring kaam aasaan karta hai.

Express, Node ke built-in http module ke UPAR EK PATLI LAYER hai. Har Express app, andar se http.createServer() hi use karta hai — Express uske upar routing, middleware chain aur request/response helpers (res.json, req.params) add kar deta hai.

const express = require("express");
const app = express();

app.get("/", (req, res) => res.send("Hello Express!"));

app.listen(3000, () => console.log("Server on http://localhost:3000"));
🚂
Plain Node ka http module, EK KHAALI PLOT jaisa hai — deewar, darwaza, plumbing SAB KHUD banana padta hai. Express, USI plot par PEHLE SE bani hui EK FRAME hai: routing, middleware aur request parsing ka DHAANCHA ready milta hai, tum sirf apne kamre sajaate ho.
1 / 2
⚡ Quick Recap
  • Express = Node.js ke liye minimal, unopinionated web framework
  • Node ke http module ke upar ek patli layer — routing + middleware + helpers deta hai
  • Framework tumhe structure choose karne par force nahi karta, flexibility tumhaare paas hai
On this page (2 subtopics)

Plain Node ke http module mein har cheez MANUAL hai — URL khud parse karo, method khud check karo, JSON body ko chunks se khud jodo, headers khud set karo. Express yahi boilerplate hata deta hai: routing table, middleware chain, aur req/res par convenience methods (req.params, res.json) de deta hai.

// Plain Node
const http = require("http");
http.createServer((req, res) => {
  if (req.url === "/users" && req.method === "GET") {
    res.writeHead(200, { "Content-Type": "application/json" });
    res.end(JSON.stringify(users));
  }
}).listen(3000);

// Express — wahi kaam
app.get("/users", (req, res) => res.json(users));

Rails ya Django tumhe batate hain ki files kahan rakhni hain aur ORM kaunsa use karna hai. Express kuch nahi batata — DB, folder structure, auth strategy, template engine sab tumhaari choice hai. Ye FLEXIBILITY hai aur ZIMMEDAARI bhi: chhote projects mein tez, bade projects mein convention khud decide karni padti hai.

💡Tip: Naye project mein pehle din hi folder convention (routes/, controllers/, services/, middleware/) tay kar lo — Express khud enforce nahi karega.