Look Scanned में, हम बेहतर दस्तावेज़ीकरण और अधिक सुरक्षित विकास प्रथाओं को प्रदान करने के लिए अपने इन्फ्रास्ट्रक्चर को लगातार सुधार रहे हैं। आज, हम अपनी How-To दस्तावेज़ीकरण साइट के एक महत्वपूर्ण अपग्रेड के बारे में विवरण साझा करने के लिए उत्साहित हैं: कस्टम Vue + Vite एप्लिकेशन से VitePress में माइग्रेट करना, जबकि साथ ही npm Trusted Publishers के साथ हमारी CI/CD सुरक्षा को बढ़ाना।
📚 हमने VitePress में क्यों माइग्रेट किया
हमारी How-To दस्तावेज़ीकरण साइट (github.com/lookscanned/how-to) Look Scanned के लिए व्यापक उपयोग गाइड के रूप में कार्य करती है। जबकि हमारा पिछला Vue + Vite सेटअप अच्छी तरह से काम करता था, हमने पहचाना कि VitePress सामग्री-संचालित दस्तावेज़ीकरण साइट के लिए एक बेहतर विकल्प होगा।
VitePress क्या है?
VitePress एक स्थिर साइट जनरेटर है जो विशेष रूप से दस्तावेज़ीकरण के लिए डिज़ाइन किया गया है। Vite और Vue 3 के ऊपर निर्मित, यह दोनों दुनियाओं के सर्वश्रेष्ठ को जोड़ता है: बॉक्स से बाहर शक्तिशाली दस्तावेज़ीकरण सुविधाओं के साथ बिजली-तेज़ विकास अनुभव।
माइग्रेशन के प्रमुख लाभ
🎯 दस्तावेज़ीकरण के लिए बेहतर आर्किटेक्चर
- फ़ाइल-आधारित राउटिंग: प्रत्येक markdown फ़ाइल स्वचालित रूप से एक पेज बन जाती है, सामग्री संगठन को सहज बनाती है
- बिल्ट-इन दस्तावेज़ीकरण सुविधाएं: विषय-सूची, खोज, अंतर्राष्ट्रीयकरण, और अधिक पूर्व-कॉन्फ़िगर किए गए हैं
- स्थिर साइट जनरेशन: पूर्व-रेंडर किया गया HTML उत्कृष्ट SEO और त्वरित पेज लोड प्रदान करता है
⚡ बेहतर डेवलपर अनुभव
- तत्काल हॉट रीलोड: विकास के दौरान परिवर्तन तुरंत दिखाई देते हैं
- Markdown-प्रथम: सामग्री पर ध्यान केंद्रित करें, घटक स्कैफोल्डिंग पर नहीं
- Vue घटक समर्थन: जब आवश्यक हो, हम अभी भी markdown के भीतर कस्टम Vue घटकों का उपयोग कर सकते हैं
🔧 आसान रखरखाव
- स्पष्ट संरचना: दस्तावेज़ीकरण सम्मेलनों का पालन करता है, योगदानकर्ताओं के लिए संज्ञानात्मक भार को कम करता है
- अधिक स्थिर बिल्ड: VitePress की राय वाली संरचना अधिक पुनरुत्पादक बिल्ड की ओर ले जाती है
- बेहतर सहयोग: टीम के सदस्य गहरे Vue ज्ञान के बिना दस्तावेज़ीकरण में योगदान कर सकते हैं
🔒 npm Trusted Publishers के साथ बढ़ी हुई सुरक्षा
VitePress माइग्रेशन के साथ, हमने एक महत्वपूर्ण सुरक्षा सुधार लागू किया: OIDC प्रमाणीकरण का उपयोग करते हुए npm Trusted Publishers।
पारंपरिक npm टोकन के साथ समस्या
पहले, npm पर पैकेज प्रकाशित करने के लिए रिपॉजिटरी सीक्रेट्स में लंबे समय तक चलने वाले NPM_TOKEN को संग्रहीत करने की आवश्यकता होती थी। इस दृष्टिकोण में कई कमियां हैं:
- सुरक्षा जोखिम: टोकन गलती से उजागर या समझौता किए जा सकते हैं
- प्रबंधन ओवरहेड: टोकन को मैन्युअल रोटेशन और अपडेट की आवश्यकता होती है
- ऑडिट चुनौतियां: यह ट्रैक करना मुश्किल है कि किसने क्या और कब प्रकाशित किया
समाधान: OIDC-आधारित विश्वसनीय प्रकाशन
npm Trusted Publishers GitHub Actions से सीधे सुरक्षित, टोकन-मुक्त प्रकाशन को सक्षम करने के लिए OpenID Connect (OIDC) का लाभ उठाता है। यह कैसे काम करता है:
- कोई संग्रहीत सीक्रेट नहीं: टोकन सहेजने के बजाय, GitHub Actions npm से अल्पकालिक क्रेडेंशियल का अनुरोध करता है
- पहचान सत्यापन: npm सत्यापित करता है कि प्रकाशन अनुरोध अधिकृत GitHub रिपॉजिटरी से आया
- स्वचालित क्रेडेंशियल प्रबंधन: क्रेडेंशियल स्वचालित रूप से जारी किए जाते हैं और जल्दी समाप्त हो जाते हैं
वास्तविक दुनिया के लाभ
यह परिवर्तन हमारे विकास वर्कफ़्लो में तत्काल सुधार लाता है:
- ✅ अब टोकन प्रबंधन नहीं: npm टोकन बनाने, संग्रहीत करने या घुमाने की कोई आवश्यकता नहीं
- ✅ कम हमला सतह: अल्पकालिक क्रेडेंशियल एक्सपोजर जोखिम को कम करते हैं
- ✅ बेहतर ऑडिट क्षमता: प्रत्येक प्रकाशन क्रिया एक विशिष्ट GitHub Actions रन से जुड़ी होती है
- ✅ आधुनिक सर्वोत्तम प्रथाएं: शून्य-विश्वास सुरक्षा सिद्धांतों के साथ संरेखित
तकनीकी नोट: npm Trusted Publishers का समर्थन करने के लिए, हमने अपनी CI कॉन्फ़िगरेशन को Node.js lts/* का उपयोग करने के लिए अपडेट किया, यह सुनिश्चित करते हुए कि हमारे पास OIDC प्रमाणीकरण के लिए आवश्यक नवीनतम npm संस्करण है।
📦 रिलीज़ टाइमलाइन
19 दिसंबर 2025 को तीन रिलीज़ के माध्यम से माइग्रेशन पूरा हुआ:
- v2.0.0: Vue + Vite से VitePress में कोर माइग्रेशन (ब्रेकिंग चेंज)
- v2.0.1: उचित Node.js संस्करण के साथ npm Trusted Publishers का समर्थन करने के लिए CI फिक्स
- v2.0.2:
@fontsource/noto-monoको devDependencies में ले जाकर प्रदर्शन सुधार
🌍 निरंतर बहुभाषी समर्थन
एक महत्वपूर्ण नोट: हमारा How-To दस्तावेज़ीकरण बहुभाषी PDF उत्पन्न करता है जो हमेशा मुख्य Look Scanned एप्लिकेशन में उदाहरण फ़ाइलों के रूप में उपयोग किए गए हैं (lookscanned.io/en/scan पर उपलब्ध)। यह VitePress माइग्रेशन उस कार्यक्षमता को नहीं बदलता है—यह केवल हमारे दस्तावेज़ीकरण इन्फ्रास्ट्रक्चर को बनाए रखने और सुधारने के लिए एक बेहतर नींव प्रदान करता है।
💡 उपयोगकर्ताओं के लिए इसका क्या अर्थ है
यदि आप Look Scanned के दस्तावेज़ीकरण का उपयोग करते हैं:
- समान पहुंच, बेहतर अनुभव: दस्तावेज़ीकरण बेहतर लोडिंग और नेविगेशन के साथ समान URL पर बना रहता है
- अधिक विश्वसनीय: स्थिर साइट जनरेशन का अर्थ है तेज़ लोड और बेहतर स्थिरता
- बेहतर खोज और खोज: VitePress की बिल्ट-इन खोज आपको तेज़ी से उत्तर खोजने में मदद करती है
- निरंतर PDF समर्थन: बहुभाषी PDF जनरेशन पहले की तरह जारी रहता है
🚀 आगे क्या है
इन्फ्रास्ट्रक्चर अपग्रेड पूर्ण होने के साथ, हम सामग्री सुधारों पर ध्यान केंद्रित कर रहे हैं:
- विस्तारित उपयोग मामले: अधिक व्यावहारिक उदाहरण और चरण-दर-चरण गाइड
- निरंतरता सुधार: स्पष्टता के लिए बहुभाषी शब्दावली को परिष्कृत करना
- बेहतर PDF निर्यात: क्रॉस-ब्राउज़र PDF जनरेशन अनुभव में सुधार
आज ही Look Scanned आज़माएं
Look Scanned ब्राउज़र-आधारित, गोपनीयता-प्रथम PDF स्कैनिंग प्रभाव प्रदान करता है बिना आपकी फ़ाइलों को कहीं भी अपलोड किए। बेहतर दस्तावेज़ीकरण शुरू करना पहले से कहीं अधिक आसान बनाता है।
👉 अपने ब्राउज़र में तेज़, सुरक्षित दस्तावेज़ स्कैनिंग का अनुभव करने के लिए lookscanned.io पर जाएं।