React Code Smells पहचानने का सबसे बेहतरीन टूल (React Doctor)

BBetter Stack
Computing/SoftwareJob SearchInternet Technology

Transcript

00:00:00React को हाल ही में React Doctor नाम का एक नया एंटी-पैटर्न स्कैनिंग टूल मिला है।
00:00:05इसे Aidan Bai ने बनाया है, वही बेहद प्रतिभाशाली डेवलपर जिन्होंने Million.js,
00:00:11React Grab, React Scan और Amy को बनाया है।
00:00:14और आज के वीडियो में, हम इस टूल को करीब से देखेंगे, समझेंगे कि यह कैसे काम करता है
00:00:19और खुद इसे आजमाकर देखेंगे।
00:00:20इसमें काफी मज़ा आने वाला है, तो चलिए शुरू करते हैं।
00:00:27तो React Doctor एक साधारण CLI टूल है जिसे सामान्य React एंटी-पैटर्न्स का पता लगाने के लिए बनाया गया है,
00:00:33जैसे कि अनावश्यक use effects, एक्सेसिबिलिटी की समस्याएं या प्रॉप ड्रिलिंग।
00:00:38परदे के पीछे, यह OX lint का उपयोग करता है, जो रस्ट (Rust) में लिखा गया
00:00:43सबसे तेज़ जावास्क्रिप्ट लिंटर्स में से एक है।
00:00:44और क्योंकि OX lint रस्ट पर बना है, यह कोड की हज़ारों लाइनों को
00:00:49मिलीसेकंड में स्कैन कर सकता है।
00:00:50यह आपके प्रोजेक्ट का एब्सट्रैक्ट सिंटैक्स ट्री या AST बनाने के लिए इसका उपयोग करता है,
00:00:56जिसमें हुक यूसेज, प्रॉप स्ट्रक्चर्स और कंपोनेंट बाउंड्रीज़ जैसे विशिष्ट React पैटर्न्स को खोजा जाता है।
00:01:01यह 47 से अधिक बेहतरीन React प्रथाओं पर आधारित है और इसमें मददगार स्कैन शामिल हैं,
00:01:08जैसे कि गलती से हार्ड-कोड की गई सुरक्षा कुंजियों को खोजना, या फिर लोडिंग स्टेट पैटर्न की
00:01:13जांच करना और एक विस्तृत रिपोर्ट देना कि इसे कब इस्तेमाल करना चाहिए
00:01:19और इसके बजाय use transition का उपयोग कब करना बेहतर है।
00:01:21और यह प्रोजेक्ट पूरी तरह से ओपन सोर्स है और अभी काफी नया है।
00:01:25इसलिए समुदाय के लिए इस प्रोजेक्ट में योगदान देने का यह एक शानदार अवसर है,
00:01:30जहाँ आप अन्य अच्छी प्रैक्टिस चेक जोड़ सकते हैं जो आपको लगता है कि यहाँ कम हैं।
00:01:33मुझे लगता है कि इस प्रोजेक्ट का सबसे शानदार हिस्सा इसका UI है।
00:01:36इसका डिज़ाइन और लुक बहुत ही बेहतरीन है, साथ ही OX lint की बदौलत यह बहुत तेज़ है।
00:01:42इन सबके अलावा, आप इसे अपने कोडिंग एजेंट के लिए एक स्किल के रूप में चला सकते हैं
00:01:47और इसे प्रोग्रामेटिक रूप से भी इस्तेमाल कर सकते हैं, जैसे कि Node.js API पर।
00:01:52अब चलिए इस टूल को खुद आज़माते हैं।
00:01:54मेरे पास यह React-आधारित कोड प्रोजेक्ट है जो एक बेसिक स्टॉक चार्ट विज़ुअलाइज़ेशन टूल है,
00:02:00जिसे मैंने छह साल पहले लिखा था, जब AI का चलन भी नहीं था।
00:02:04यह देखना बहुत दिलचस्प होगा कि छह साल पहले मैंने React कोड कितना अच्छा लिखा था।
00:02:09तो मैं अपने रिपॉजिटरी में React doctor कमांड चलाने जा रहा हूँ।
00:02:12और जैसा कि आप देख सकते हैं, हमें तुरंत परिणाम मिल जाता है।
00:02:15और यह देखिए।
00:02:16मेरे प्रोजेक्ट का स्कोर लगभग परफेक्ट है।
00:02:18यह जानकर दिल को सुकून मिलता है कि छह साल पहले भी मैं
00:02:24अच्छी गुणवत्ता वाला React कोड लिख रहा था।
00:02:25ठीक है, देखते हैं कि इसने क्या खोजा है।
00:02:27हमें की (key) के रूप में AI का उपयोग करने के बारे में चेतावनी मिली है, जो बहुत सही है।
00:02:31और फिर इसने यह भी पहचाना कि recharts एक भारी लाइब्रेरी है।
00:02:35इसलिए यह मुझे इसके बजाय लेज़ी लोडिंग का उपयोग करने की सलाह देता है।
00:02:38और फिर इसने यह भी गौर किया कि मेरे पास एक ही use effect में चार use state कॉल्स हैं।
00:02:44और मुझे use reducer का उपयोग करने पर विचार करना चाहिए।
00:02:46ये सभी बहुत ही वैध बिंदु हैं।
00:02:48धन्यवाद, React doctor।
00:02:49और अब चलिए इसे एक बड़े कोड बेस पर चला कर देखते हैं।
00:02:52यहाँ एक बहुत ही लोकप्रिय CRM प्रोजेक्ट है जिसे “20” कहा जाता है, जो माना जाता है कि
00:02:57सेल्सफोर्स का एक ओपन सोर्स विकल्प है।
00:02:59और यह React में लिखा गया है।
00:03:00तो चलिए इस रेपो को क्लोन करते हैं और देखते हैं कि React doctor इसका मूल्यांकन कैसे करता है।
00:03:04और इसे चलाने के बाद, हम देख सकते हैं कि React doctor खुद ही पहचान लेता है
00:03:08कि यह प्रोजेक्ट एक मोनो रेपो (mono repo) है, और यह पैकेजों को पहचानता है।
00:03:12तो चलिए पहले उनके मार्केटिंग वेबसाइट पैकेज का स्कोर देखते हैं।
00:03:15और जैसा कि हम यहाँ देख सकते हैं, यह भी काफी अच्छा है।
00:03:18हमें एक एरर मिली है, लेकिन वह सिर्फ एक गायब ऑल्ट (alt) टैग है।
00:03:22तो मैं कहूँगा कि कुल मिलाकर, यह बहुत अच्छा स्कोर है।
00:03:25ठीक है, अब चलिए फ्रंट पैकेज की जांच करते हैं।
00:03:30इसने थोड़ा खराब प्रदर्शन किया, क्योंकि हमें 99 एरर मिले, लेकिन यह अभी भी सुरक्षित ज़ोन में है।
00:03:35तो यहाँ मैं आपको यह सलाह दूँगा।
00:03:37यदि आप एक डेवलपर हैं जो अपने गिटहब पोर्टफोलियो को सुधारना चाहते हैं, तो यह टूल
00:03:41विभिन्न ओपन सोर्स प्रोजेक्ट्स को स्कैन करने और उन जगहों की पहचान करने के लिए अच्छा है
00:03:47जहाँ आप महत्वपूर्ण योगदान दे सकते हैं।
00:03:48तो दोस्तों, यह था संक्षेप में React doctor। मुझे लगता है कि यह एक बहुत ही
00:03:52शानदार, हल्का और आसान टूल है जो आपके React प्रोजेक्ट्स की प्रूफरीडिंग और
00:03:58सत्यता की जांच करने में काफी मदद कर सकता है।
00:03:59और मैं भविष्य में निश्चित रूप से अपने प्रोजेक्ट्स में इसका उपयोग करूँगा।
00:04:03और दोस्तों, अगर आपको यह वीडियो उपयोगी लगा हो, तो कृपया वीडियो के नीचे
00:04:07लाइक बटन पर क्लिक करके मुझे बताएं।
00:04:09और हमारे चैनल को सब्सक्राइब करना न भूलें ताकि आप हमारे
00:04:14आने वाले किसी भी वीडियो को मिस न करें।
00:04:15मैं Better Stack से एंडरिस हूँ और मैं आपसे अगले वीडियो में मिलूँगा।

Key Takeaway

React Doctor एक तेज़ और शक्तिशाली रस्ट-आधारित टूल है जो React प्रोजेक्ट्स की गुणवत्ता सुधारने के लिए एंटी-पैटर्न्स को पहचानने और बेहतर कोडिंग प्रथाओं का सुझाव देने में मदद करता है।

Highlights

React Doctor एक नया ओपन-सोर्स CLI टूल है जिसे Aidan Bai द्वारा React कोड में एंटी-पैटर्न्स और 'कोड स्मेल्स' की पहचान करने के लिए बनाया गया है।

यह टूल रस्ट (Rust) आधारित OX lint का उपयोग करता है, जो इसे हज़ारों लाइनों के कोड को मिलीसेकंड में स्कैन करने की अत्यधिक गति प्रदान करता है।

यह 47 से अधिक बेहतरीन React प्रथाओं (best practices) की जांच करता है, जिसमें अनावश्यक use effects, एक्सेसिबिलिटी मुद्दे और प्रॉप ड्रिलिंग शामिल हैं।

इसमें एक प्रभावशाली UI है और इसे Node.js API के माध्यम से प्रोग्रामेटिक रूप से या कोडिंग एजेंट्स के लिए एक 'स्किल' के रूप में भी उपयोग किया जा सकता है।

डेवलपर्स के लिए यह ओपन-सोर्स योगदान देने और बड़े प्रोजेक्ट्स को स्कैन करके सुधार करने का एक शानदार अवसर प्रदान करता है।

Timeline

React Doctor का परिचय और कार्यक्षमता

इस खंड में एंडरिस ने React Doctor का परिचय दिया है, जिसे चर्चित डेवलपर Aidan Bai ने बनाया है। यह टूल मुख्य रूप से React के सामान्य एंटी-पैटर्न्स जैसे अनावश्यक use effects और सुरक्षा त्रुटियों को खोजने के लिए डिज़ाइन किया गया है। तकनीकी रूप से, यह रस्ट-आधारित OX lint का उपयोग करता है जो एब्सट्रैक्ट सिंटैक्स ट्री (AST) बनाकर कोड को बिजली की गति से स्कैन करता है। यह टूल 47 से अधिक मानकों पर आधारित है और डेवलपर्स को यह भी बताता है कि कब use transition जैसे आधुनिक हुक्स का उपयोग करना बेहतर है। यह पूरी तरह से ओपन-सोर्स है, जिससे समुदाय को इसमें नई जांच जोड़ने की अनुमति मिलती है।

अतिरिक्त सुविधाएँ और व्यक्तिगत प्रोजेक्ट का परीक्षण

वक्ता यहाँ टूल के आकर्षक UI और इसकी प्रोग्रामेटिक क्षमताओं के बारे में चर्चा करते हैं, जिसे Node.js API के साथ भी जोड़ा जा सकता है। टूल की क्षमता को परखने के लिए, एंडरिस इसे अपने छह साल पुराने स्टॉक चार्ट विज़ुअलाइज़ेशन प्रोजेक्ट पर चलाते हैं। परिणाम काफी सकारात्मक आते हैं, जहाँ टूल AI को 'की' (key) के रूप में उपयोग करने और भारी लाइब्रेरीज़ के लिए लेज़ी लोडिंग की सलाह देता है। इसके अतिरिक्त, यह एक ही use effect में कई use state के बजाय use reducer के उपयोग का सुझाव देता है। यह प्रदर्शन दिखाता है कि कैसे पुराने कोड को भी आधुनिक मानकों के अनुसार सुधारा जा सकता है।

बड़े ओपन-सोर्स प्रोजेक्ट (CRM '20') का विश्लेषण

यहाँ टूल का परीक्षण '20' नामक एक बड़े और लोकप्रिय ओपन-सोर्स CRM प्रोजेक्ट पर किया गया है। React Doctor स्वचालित रूप से पहचान लेता है कि यह एक मोनो-रेपो (mono-repo) है और अलग-अलग पैकेजों के लिए अलग स्कोर प्रदान करता है। मार्केटिंग वेबसाइट पैकेज में केवल एक छोटा एक्सेसिबिलिटी एरर (गायब ऑल्ट टैग) मिलता है, जबकि फ्रंट-एंड पैकेज में 99 त्रुटियां पाई जाती हैं। एंडरिस बताते हैं कि यह टूल उन डेवलपर्स के लिए वरदान है जो ओपन-सोर्स में योगदान देना चाहते हैं। वे बड़े रिपॉजिटरी को स्कैन करके उन क्षेत्रों की पहचान कर सकते हैं जहाँ महत्वपूर्ण सुधार की आवश्यकता है।

निष्कर्ष और भविष्य की संभावना

वीडियो के अंतिम भाग में, एंडरिस React Doctor को एक हल्का, उपयोग में आसान और अत्यंत प्रभावी प्रूफरीडिंग टूल बताते हैं। वे इसकी गति और रिपोर्टिंग की गुणवत्ता की सराहना करते हैं और भविष्य के अपने सभी प्रोजेक्ट्स में इसे शामिल करने की योजना बनाते हैं। दर्शकों को प्रोत्साहित किया जाता है कि वे इस टूल को आज़माएँ और अपने गिटहब पोर्टफोलियो को बेहतर बनाने के लिए इसका उपयोग करें। अंत में, वे चैनल को सब्सक्राइब करने और वीडियो को लाइक करने का अनुरोध करते हैं। यह खंड पूरे टूल की उपयोगिता को संक्षेप में प्रस्तुत करता है और डेवलपर्स को गुणवत्तापूर्ण कोड लिखने के लिए प्रेरित करता है।

Community Posts

No posts yet. Be the first to write about this video!

Write about this video