GitHub पर TypeScript: 7 रिपॉजिटरी जो आपके कोड को बेहतर बनाएंगी

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

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

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

TypeScript नया मानक क्यों है, और सबसे अच्छा कोड कहाँ खोजें?

\n\n

यदि आप JavaScript में लिखते हैं और अभी तक TypeScript पर स्विच नहीं किया है, तो आप समय बर्बाद कर रहे हैं। गंभीरता से। TypeScript (या TS) केवल JS के ऊपर एक "एड-ऑन" नहीं है। यह सख्त टाइपिंग, ऑटो-कम्प्लीशन, बिना कुछ तोड़ने के डर के रिफैक्टरिंग और निश्चित रूप से ओपन सोर्स कोड है जिसे सीखा जा सकता है (और सीखना चाहिए)।

\n\n

इस लेख में हम यह नहीं बताएंगे कि TypeScript कैसे स्थापित करें। इसके बजाय, हम GitHub पर जाएंगे और 7 सर्वश्रेष्ठ रिपॉजिटरी का विश्लेषण करेंगे जो न केवल सुंदर समाधान दिखाएंगी बल्कि आपको अधिक स्वच्छ, सुरक्षित और स्केलेबल कोड लिखने में भी मदद करेंगी। प्रत्येक प्रोजेक्ट एक ट्यूटोरियल है, जो वास्तविक कोड में लिखा गया है।

\n\n

हम रिपॉजिटरी में क्या ढूंढ रहे हैं?

\n\n
    \n
  • आर्किटेक्चरल पैटर्न — प्रोजेक्ट को कैसे बनाया जाए ताकि एक महीने बाद उसे हटाने का मन न हो।
  • \n
  • सख्त टाइपिंग के उदाहरण — जहाँ TS 100% अपना प्रभाव दिखाता है।
  • \n
  • वास्तविक लाभ — लाइब्रेरी जिन्हें अभी लागू किया जा सकता है।
  • \n
\n\n

चलिए शुरू करते हैं!

\n\n

1. NestJS — गंभीर अनुप्रयोगों के लिए फ्रेमवर्क

\n\n

रिपॉजिटरी: github.com/nestjs/nest

\n\n

NestJS शायद TypeScript पर सबसे सुंदर फ्रेमवर्क है। यह Angular (मॉड्यूल, डेकोरेटर, DI) से विचार उधार लेता है और सर्वर कोड को कला का नमूना बना देता है।

\n\n

क्यों सीखना चाहिए:

\n
    \n
  • मॉड्यूल में स्पष्ट विभाजन।
  • \n
  • GraphQL, WebSockets, RabbitMQ के लिए अंतर्निहित समर्थन।
  • \n
  • दस्तावेज़ीकरण — अनुकरणीय उदाहरण।
  • \n
\n\n

रिपॉजिटरी से कोड का उदाहरण (कंट्रोलर और सर्विस):

\n\n
// cats.controller.ts\nimport { Controller, Get, Post, Body } from '@nestjs/common';\nimport { CatsService } from './cats.service';\nimport { CreateCatDto } from './dto/create-cat.dto';\nimport { Cat } from './interfaces/cat.interface';\n\n@Controller('cats')\nexport class CatsController {\n  constructor(private catsService: CatsService) {}\n\n  @Post()\n  async create(@Body() createCatDto: CreateCatDto) {\n    this.catsService.create(createCatDto);\n  }\n\n  @Get()\n  async findAll(): Promise<Cat[]> {\n    return this.catsService.findAll();\n  }\n}\n
\n\n

डेकोरेटर @Controller, @Get और सख्त इंटरफ़ेस Cat पर ध्यान दें। यह केवल कोड नहीं है — यह एक टेम्पलेट है जिस पर सैकड़ों हजारों प्रोजेक्ट बनाए जाते हैं।

\n\n

2. Prisma — ORM जो परेशान नहीं करता

\n\n

रिपॉजिटरी: github.com/prisma/prisma

\n\n

Prisma TypeScript और Node.js के लिए एक आधुनिक ORM (Object-Relational Mapping) है। यह आपके डेटाबेस स्कीमा के आधार पर स्वचालित रूप से टाइप जनरेट करता है। इसका मतलब है कि "फ़ील्ड मौजूद नहीं है" जैसी त्रुटि रनटाइम के बजाय कम्पाइलेशन चरण में पकड़ी जाएगी।

\n\n

आप क्या सीखेंगे: "Schema-first" दृष्टिकोण और ऑटो-जनरेशन ऑफ टाइप्स।

\n\n

दस्तावेज़ीकरण से उदाहरण:

\n\n
// schema.prisma\nmodel User {\n  id    Int     @id @default(autoincrement())\n  email String  @unique\n  name  String?\n  posts Post[]\n}\n\nmodel Post {\n  id        Int     @id @default(autoincrement())\n  title     String\n  content   String?\n  author    User    @relation(fields: [authorId], references: [id])\n  authorId  Int\n}\n\n// usage.ts\nimport { PrismaClient } from '@prisma/client';\n\nconst prisma = new PrismaClient();\n\nasync function main() {\n  const user = await prisma.user.create({\n    data: {\n      email: 'alice@prisma.io',\n      name: 'Alice',\n      posts: {\n        create: { title: 'Hello World' },\n      },\n    },\n  });\n  console.log(user);\n}\n
\n\n

Prisma इस बात का एक आदर्श उदाहरण है कि कैसे TypeScript डेटा के साथ काम को सुरक्षित और तेज़ बना सकता है।

\n\n

3. RxJS — रिए

ब्लॉग

पुस्तक अनुशंसाएँ