NestJS JavaScript (Node.js) पूर्ण गाइड: उदाहरण सहित

शुरुआती लोगों के लिए ऑनलाइन Python प्रशिक्षक

Python आसानी से सीखें बिना सिद्धांत के बोझ के। स्वचालित जांच के साथ व्यावहारिक कार्य हल करें और ब्राउज़र में सीधे कोड लिखें।

पाठ्यक्रम शुरू करें

NestJS क्या है और इसकी आवश्यकता क्यों है?

NestJS एक प्रोग्रेसिव फ्रेमवर्क है जो Node.js पर कुशल, विश्वसनीय और स्केलेबल सर्वर-साइड एप्लिकेशन बनाने के लिए उपयोग किया जाता है। यह Angular से प्रेरित एक अभिव्यंजक आर्किटेक्चर का उपयोग करता है और डिफ़ॉल्ट रूप से TypeScript पर बनाया गया है, लेकिन यह शुद्ध JavaScript को भी पूरी तरह से सपोर्ट करता है। NestJS Express (डिफ़ॉल्ट) या Fastify जैसी लोकप्रिय लाइब्रेरीज़ की निचले स्तर की डिटेल्स को एब्सट्रैक्ट करता है, और डेवलपर को कोड को व्यवस्थित करने के लिए एक शक्तिशाली टूलसेट प्रदान करता है: मॉड्यूल, कंट्रोलर, सर्विसेज़, प्रोवाइडर, मिडलवेयर, गार्ड्स, इंटरसेप्टर, पाइप्स और फिल्टर।

NestJS की आवश्यकता क्यों है? आधुनिक Node.js वेब डेवलपमेंट में अक्सर कोड को व्यवस्थित करने की समस्या होती है: Express पर साधारण स्क्रिप्ट जैसे-जैसे फंक्शनैलिटी बढ़ती है, 'स्पेगेटी' कोड में बदल जाती हैं। NestJS इस समस्या को एक स्पष्ट मॉड्यूलर संरचना और डिपेंडेंसी इंजेक्शन (Dependency Injection) के सिद्धांतों को लागू करके हल करता है। यह एप्लिकेशन के टेस्टिंग, रखरखाव और स्केलिंग को आसान बनाता है। यह फ्रेमवर्क REST API, GraphQL सर्वर, माइक्रोसर्विसेज़ और रियल-टाइम एप्लिकेशन (WebSockets) बनाने के लिए आदर्श है।

NestJS का मुख्य लाभ इसका इकोसिस्टम है। यह डेटाबेस (TypeORM, Mongoose, Prisma), ऑथेंटिकेशन (Passport), वैलिडेशन (class-validator), कॉन्फ़िगरेशन, क्यू (Bull), कैशिंग और कई अन्य चीज़ों के लिए आधिकारिक मॉड्यूल प्रदान करता है। इसके कारण, डेवलपर बिज़नेस लॉजिक पर ध्यान केंद्रित कर सकता है, न कि अलग-अलग लाइब्रेरीज़ को इंटीग्रेट करने पर।

इंस्टॉलेशन

NestJS को इंस्टॉल करने के लिए पैकेज मैनेजर npm (या yarn) का उपयोग किया जाता है। प्रोजेक्ट को जल्दी से बनाने के लिए CLI टूल को ग्लोबली इंस्टॉल करने की सलाह दी जाती है:

npm install -g @nestjs/cli

CLI इंस्टॉल करने के बाद, आप इस कमांड से एक नया प्रोजेक्ट बना सकते हैं:

nest new my-nest-project

इंस्टॉलेशन प्रक्रिया के दौरान, आपसे पैकेज मैनेजर (npm, yarn या pnpm) और भाषा (TypeScript — अनुशंसित, या JavaScript) चुनने के लिए कहा जाएगा। यदि आप किसी मौजूदा प्रोजेक्ट में NestJS जोड़ना चाहते हैं, तो मुख्य पैकेज इंस्टॉल करें:

npm install @nestjs/core @nestjs/common @nestjs/platform-express reflect-metadata rxjs

ध्यान दें: डेकोरेटर के काम करने के लिए reflect-metadata लाइब्रेरी अनिवार्य है।

त्वरित शुरुआत: न्यूनतम कार्यशील उदाहरण

आइए एक सरल REST API बनाते हैं जिसमें एक एंडपॉइंट होगा जो "Hello World" लौटाएगा।

चरण 1: app.controller.js फ़ाइल बनाएं

// app.controller.js
const { Controller, Get } = require('@nestjs/common');

@Controller()
export class AppController {
    @Get()
    getHello() {
        return 'Hello World!';
    }
}

चरण 2: app.module.js फ़ाइल बनाएं

// app.module.js
const { Module } = require('@nestjs/common');
const { AppController } = require('./app.controller');

@Module({
    controllers: [AppController],
})
export class AppModule {}

चरण 3: मुख्य फ़ाइल main.js बनाएं

// main.js
const { NestFactory } = require('@nestjs/core');
const { AppModule } = require('./app.module');

async function bootstrap() {
    const app = await NestFactory.create(AppModule);
    await app.listen(3000);
    console.log('सर्वर http://localhost:3000 पर चालू है');
}
bootstrap();

चरण 4: एप्लिकेशन चलाएं

node main.js

अब http://localhost:3000 पर जाएं — आपको "Hello World!" दिखाई देगा।

मुख्य तरीके, क्लासेज़ और डेकोरेटर

नीचे NestJS के 8 प्रमुख तत्वों को सिग्नेचर, विवरण और JavaScript उदाहरणों के साथ दिया गया है:

अनुशंसाएँ