NestJS Tutorials : An Introdcution To NestJS


आज के modern web development में, एक robust और scalable framework कि need होती है। NestJS एक ऐसा framework है जो TypeScript का use करके आपको powerful backend applications develop करने कि सुविधा देता है।

इस इस topic में हम NestJS को detail में समझेंगे जैसे कि इसके features, और इसका use कैसे करें, यह सब समझेंगे।

What is NestJS ?

NestJS एक progressive Node.js framework है जो server-side applications बनाने के लिए design किया गया है। यह Angular से inspired है, इसलिए इसकी architecture भी modular और easily testable है।

इसका main goal है आपको एक scalable और maintainable application architecture provide करना।

Features of NestJS

  • TypeScript Support : NestJS TypeScript का full support करता है, जो type safety और modern JavaScript features को use करने कि सुविधा देता है।

  • Modular Architecture : आप अपने application को modules में organize कर सकते हैं, जिससे code को manage करना और reusability बढ़ जाता है।

  • Dependency Injection : NestJS dependency injection का use करता है, जिससे आप easily services और components को manage कर सकते हैं।

  • Extensible : आप custom decorators, middleware, guards, और interceptors create कर सकते हैं, जिससे आप अपने application कि functionality को extend कर सकते हैं।

  • Built-inTesting : NestJS testing के लिए built-इन tools provide करता है, जिससे आप अपने applications को easily test कर सकते हैं।

NestJS Architecture

NestJS का architecture modular है और MVC (Model-View-Controller) pattern पर based है। इसमें कुछ key components हैं -

  • Modules : NestJS modules आपके application का core part होते हैं। हर module एक specific feature या functionality को represent करता है।

  • Controllers : Controllers incoming requests को handle करते हैं और responses return करते हैं. यह endpoints को define करते हैं।

  • Providers : Providers business logic को manage करते हैं। यह services या repositories होते हैं जो data को fetch या manipulate करने के लिए use होते हैं।

  • Middleware : Middleware requests के बीच में execute होते हैं और additional processing या logging करते हैं।

NestJS Installation

NestJS को install करना काफी simple है , आपको Node.js और npm कि need पड़ेगी। यहां पर हम NestJS CLI का use करेंगे।

1. Install NestJS CLI
npm i -g @nestjs/cli
2. Create a New Project
nest new project-name
3. Navigate to the Project Directory
cd project-name
4. Start the Development Server
npm run start

Structure of NestJS Application

जब आप अपना NestJS project create करते हैं, तो आपको कुछ default files और folders मिलते हैं -

project-name/
├── src/
│   ├── app.controller.ts
│   ├── app.controller.spec.ts
│   ├── app.module.ts
│   ├── app.service.ts
│   ├── app.service.spec.ts
│   └── main.ts
├── test/
│   └── app.e2e-spec.ts
├── package.json
├── tsconfig.build.json
├── tsconfig.json
├── nest-cli.json
└── README.md
  • src/ : इस folder में आपका main application code होता है।

  • app.module.ts : ये file application का root module होती है।

  • app.controller.ts : ये file आपके application के endpoints को define करती है।

  • app.service.ts : ये file business logic को manage करती है।

NestJs Example

चलिए एक छोटा सा example देखते हैं जिससे आप NestJS का use करके एक simple REST API create कर सकते हैं।

Create Controller

import { Controller, Get } from '@nestjs/common'; @Controller('hello') export class HelloController { @Get() getHello(): string { return 'Hello, World!'; } }
Update module

import { Module } from '@nestjs/common'; import { HelloController } from './hello.controller'; @Module({ controllers: [HelloController], }) export class AppModule {}

अब अगर आप server को run करते हैं और http://localhost:3000/hello पर request send हैं, तो आपको "Hello, World!" response मिलेगा।

Conclusion

NestJS एक powerful framework है जो आपको scalable और maintainable applications develop करने कि सुविधा देता है। इसकी modular architecture और TypeScript support इससे modern web development के लिए ideal choice बनाता है।

इस topic में हमने NestJS का introduction, features, installation, और एक simple example देखा।

Hey ! I'm Rahul founder of learnhindituts.com. Working in IT industry more than 4.5 years. I love to talk about programming as well as writing technical tutorials and blogs that can help to others .... keep learning :)

Get connected with me - LinkedIn Twitter Instagram Facebook