प्लेबुक
मेननेट वेब3मॉडल और वॉलेट हार्डनिंग (3)
मेटामास्क-ओनली से Web3Modal + वॉलेटकनेक्ट + कॉइनबेस वॉलेटलिंक पर माइग्रेट करना; चेनआईडी, गैस और एड्रेस हार्डनिंग।
एनएफटी कलेक्शन मिंट और मेननेट हार्डनिंग
भाग 4 का 4
सीबीडी ऑल-स्टार्स और कॉन्फिडेंट गोरिल्लास टकसाल सतह: WIP व्हाइटलिस्ट फ़नल, IPFS मेटाडेटा, प्लेसहोल्डर → पाइपलाइन प्रकट करते हैं, और Web3Modal के साथ मेननेट वॉलेट हार्डनिंग।
मेननेट एकल वॉलेट धारणा को तोड़ता है
गोरिल्लास मेननेट 1.8, ऑल-स्टार्स/1.4 युग के window.ewhereum.enable() पथ को छोड़ देता है। Web3Modal कैशप्रदाता के साथ खुलता है; वॉलेटकनेक्ट (इन्फुरा आईडी) और कस्टम कॉइनबेस वॉलेटलिंक (चेनआईडी: 1) प्रदाता विकल्प में जोड़े गए हैं। ConnectWeb3 → ईथर Web3Provider → पता; अनुबंध उदाहरण अब मॉडल प्रदाता के माध्यम से बात करते हैं।```text Before (All-Stars / early) window.ethereum only → Web3
After (mainnet 1.8) Web3Modal ├─ WalletConnect (Infura) ├─ WalletLink / Coinbase (chainId 1) └─ injected (MetaMask) ↓ provider → ethers Web3Provider ↓ getNftContract(Web3(provider))
## पहले उल्लेख पर अवधारणाएँ```text
📦 Web3Modal
Çoklu cüzdan bağlantı UI'si; providerOptions ile WalletConnect/WalletLink enjekte edilir.
📦 WalletConnect
QR / mobil cüzdan köprüsü; Infura (veya RPC) id ister.
📦 WalletLink
Coinbase Wallet connector; appName, networkUrl, chainId ile kurulur.
📦 cacheProvider
Son başarılı provider'ı hatırlama; reconnect UX'i, stale session riski.
```आरपीसी/इन्फुरा प्रोजेक्ट आईडी कॉन्फ़िगरेशन है; प्लेबुक में कोई रहस्य नहीं रखा गया है। कुंजियाँ env में हैं, रेपो में नहीं।
## केवल मेटामास्क ही पर्याप्त क्यों नहीं है?
लैंडिंग एफएक्यू अभी भी मेटामास्क कह सकता है; मेननेट उपयोगकर्ता कॉइनबेस वॉलेट और मोबाइल वॉलेटकनेक्ट चाहते हैं। एकल इंजेक्षन पथ फ़नल को काटता है। 1.8 निर्णय: मोडल के साथ मल्टी-कनेक्टर, नेटवर्क: 'मेननेट'।```text
User segments
Desktop MetaMask
Mobile WC
Coinbase WalletLink
↓
one ConnectWeb3() API
```## कनेक्शन जीवनचक्र
ConnectWeb3: web3Modal.connect() → Web3Provider → getAddress। DisconnectWeb3: ClearCachedProvider + प्रदाता.डिस्कनेक्ट + पुनः लोड करें। getNetwork प्रदाता के माध्यम से नेटआईडी पढ़ता है। अनुबंध प्राप्तकर्ता प्रारंभिकस्टेट.प्रोवाइडर के साथ Web3.eth.Contract स्थापित करते हैं - लीगेसी ऐपवेब3() इन्फुरा फ़ॉलबैक मेननेट हस्ताक्षर पथ नहीं होना चाहिए।```text
connect → address
getNetwork → chainId check
mint/reveal only if chainId OK
disconnect → clear cache → reload
```## एडीआर: वॉलेट मुखौटा के रूप में वेब3मॉडल
निर्णय: टकसाल/प्रकटीकरण बर्तनों को सीधे window.ethereum से न जोड़ें; मॉडल मुखौटा पता और प्रदाता दें। प्लस: कनेक्टर जोड़ना एक उत्पाद निर्णय होगा। माइनस: ईथर + वेब3 डुअल स्टैक और कैशप्रोवाइडर पुरानी स्थिति। शमन: टकसाल से पहले चेनआईडी का दावा, डिस्कनेक्ट पर कैश साफ़ करना।```text
ADR-04 Web3Modal facade
UI → ConnectWeb3 / DisconnectWeb3
Utils → provider from modal state
Guard → chainId === 1 before send
Reject → wrong net / no provider
```## मेननेट विफलता प्लेबुक
1) उत्पादन में स्टब अनुबंध पते - टीएक्स 'सफल' के रूप में दिखाई देता है, स्थिति गलत है। 2) गलत नेटवर्क - हस्ताक्षर, रिंकीबी/गोरली में मेननेट आपूर्ति नहीं बदलती है। 3) गैस की कीमत: 0 - मेमपूल पर कम कीमत। 4) एबीआई बेमेल - मल्टीपलमिंट/रिवील एनकोड त्रुटि। 5) क्लाइंट बंडल में पिनाटा/इन्फुरा कुंजियाँ एम्बेड करना - गुप्त रिसाव (कभी प्रतिबद्ध न हों)।```text
Hardening checklist
✓ real mainnet addresses
✓ chainId === 1 gate
✓ dynamic gas / tip
✓ ABI ↔ deployment lock
✓ secrets in env only
इस एपिसोड में सबसे भ्रमित करने वाला मैचअप```text
❌ window.ethereum yeter, modal lüks ✓ Mainnet dönüşümü için çoklu connector ürün gereksinimidir
❌ cacheProvider = her zaman bağlı kal ✓ Stale provider'ı disconnect + clearCachedProvider ile temizle
❌ Infura/Pinata anahtarlarını constants'a yaz ✓ Anahtarlar env/secret store'da; client'a minimum scope
## आपके अपने सिस्टम की चेकलिस्ट
1. क्या कनेक्ट के बाद चेनआईडी === 1 का दावा किया गया है?
2. क्या टकसाल भेजने से पहले प्रदाता शून्य नहीं है?
3. क्या गैसप्राइस: 0 उत्पादन निर्माण में अटका हुआ है?
4. क्या एनएफटी/रिजर्व/नीलामी पते एक दूसरे और मेननेट से भिन्न हैं?
5. क्या वॉलेटकनेक्ट/वॉलेटलिंक कनेक्टर का वास्तव में परीक्षण डिवाइस पर परीक्षण किया गया था?
## इस अनुभाग से याद रखने योग्य बातें
1. 1.8 माइग्रेशन: केवल मेटामास्क → वेब3मॉडल मल्टी-वॉलेट मुखौटा।
2. मेननेट हार्डनिंग पता, नेटवर्क, गैस, एबीआई और गुप्त अनुशासन है।
3. डिस्कनेक्ट और कैश क्लियरिंग रीकनेक्ट यूएक्स का हिस्सा हैं।
> वॉलेट कनेक्ट करना कोई सुविधा नहीं है; गलत नेटवर्क पर हस्ताक्षर करना एक मूक उत्पादन घटना है।
FAQ
Frequently asked questions
Web3Modal क्या है?
मल्टी-वॉलेट कनेक्शन यूआई; वॉलेटकनेक्ट/वॉलेटलिंक को प्रदाता विकल्पों के साथ इंजेक्ट किया गया है।
वॉलेटकनेक्ट क्या है?
क्यूआर/मोबाइल वॉलेट ब्रिज; इन्फुरा (या आरपीसी) आईडी मांगता है।
क्या "विंडो.एथेरियम पर्याप्त, मोडल विलासिता" सही है?
मेननेट रूपांतरण के लिए मल्टी-कनेक्टर एक उत्पाद आवश्यकता है
यह अनुभाग क्या ठीक करता है?
यह अनुभाग मेननेट तैयारी चेकलिस्ट के साथ श्रृंखला को समाप्त करता है: वॉलेट विविधता, नेटवर्क सत्यापन, गैस, और पता/एबीआई अनुशासन। गोरिल्लास मेननेट 1.8, ऑल-स्टार्स/1.4 युग के window.ewhereum.enable() पथ को छोड़ देता है। Web3Modal कैशप्रदाता के साथ खुलता है; वॉलेटकनेक्ट (इन्फुरा आईडी) और कस्टम कॉइनबेस वॉलेटलिंक (चेनआईडी: 1) प्रदाता विकल्प में जोड़े गए हैं। ConnectWeb3 → ईथर Web3Provider → पता; अनुबंध उदाहरण अब मॉडल प्रदाता के माध्यम से बात करते हैं।
इंजीनियरिंग सिद्धांत सीखे गए
- एकल वॉलेट पहलू के पीछे मिंट उपयोगिताएँ प्राप्त करें।
- प्रत्येक भेजने से पहले चेनआईडी, पता और गैस सत्यापित करें।
- बंडल से रहस्य निकालें; वास्तविक उपकरणों पर कनेक्टर्स साबित करें।
जारी रखें पढ़ रहे हैं
जारी रखें पढ़ रहे हैं
श्रृंखला में अगला
प्लेसहोल्डर यूआरआई और ओनर रिवील लाइन
मिंट में, प्लेसहोल्डर मेटाडेटा, यूरिडेटा मैप, रिवील (टोकनआईडी, यूरीहैश) और रिवील सरफेस जिसे केवल मालिक ही खोल सकता है।
वही सिलसिला
आईपीएफएस (इंटरप्लेनेटरी फाइल सिस्टम) मेटाडेटा, मिंट और मल्टीपल मिंट
इन्फुरा आईपीएफएस + पिनाटा पिन, मेटाडेटा जेएसओएन, मिंट (टोकनआईडी, यूरी) और मल्टीपलमिंट: 0.1 ईटीएच × एन, 750 आपूर्ति।
वही सिलसिला
संग्रह लैंडिंग और WIP श्वेतसूची फ़नल
सीबीडी ऑल-स्टार्स मिंट लैंडिंग: #GETINTHEWIP, 750 स्लॉट, डिस्काउंट फ़नल और मेटामास्क-केवल मिंट सतह एक साथ कैसे आते हैं?