इस प्रोजेक्ट के बारे में

Fuel Core, Fuel v2 प्रोटोकॉल के लिए Rust में लिखा गया आधिकारिक Fuel क्लाइंट कार्यान्वयन है, जो एक फुल नोड के रूप में कार्य करता है। रिपॉज़िटरी में नोड बाइनरी, सहायक crates, और Fuel नोड को बिल्ड, टेस्ट और चलाने के लिए टूलिंग शामिल है। ## नेटवर्क संस्करण README में विभिन्न Fuel नेटवर्कों में वर्तमान में उपयोग किए जा रहे संस्करण सूचीबद्ध हैं: - Fuel Ignition: 0.48.1 - Testnet: 0.48.1 - Devnet: 0.48.1 रिपॉज़िटरी सोर्स से Ignition नोड चलाने के लिए v0.45.1 के checkout tag का भी संदर्भ देती है, जो नवीनतम तालिका संस्करण से भिन्न हो सकता है। ## बिल्डिंग सिस्टम आवश्यकताओं में cmake, pkg-config, clang जैसे सामान्य बिल्ड टूल्स, और `wasm32-unknown-unknown` target के साथ Rust शामिल हैं। macOS (Homebrew), Debian (apt), और Arch (pacman) के लिए प्लेटफ़ॉर्म-विशिष्ट सेटअप कमांड दिए गए हैं। बिल्ड कमांड: - `make build` रिलीज़-शैली की नोड बाइनरी बिल्ड के लिए - `cargo xtask build` डेवलपमेंट बिल्ड के लिए, जो GraphQL schema को भी पुनः जनरेट करता है ## नोड चलाना डॉक्युमेंटेशन लिंक नोड ऑपरेटरों को mainnet (Ignition) या लोकल नेटवर्क नोड चलाने के लिए Fuel docs की ओर इंगित करते हैं। नोड को सीधे `fuel-core run` से भी लॉन्च किया जा सकता है; उदाहरणों में गैर-स्थायी स्थिति के लिए `--db-type in-memory` और स्वचालित ब्लॉक उत्पादन अक्षम करने के लिए `--poa-instant=false` का उपयोग दिखाया गया है। डिफ़ॉल्ट डेटाबेस RocksDB है, और in-memory मोड का उपयोग न किए जाने पर स्थिति स्थायी रहती है। ## टेस्टिंग और योगदान प्रोजेक्ट योगदानकर्ताओं को परिवर्तन पुश करने या pull requests खोलने से पहले `source ci_checks.sh` चलाने के लिए प्रोत्साहित करता है। यह स्क्रिप्ट सभी CI जाँचें चलाती है, जिनमें टेस्ट भी शामिल हैं। crates प्रकाशित करने, पुराने डेटाबेस त्रुटियों (`rm -rf ~/.fuel/db`), macOS फ़ाइल डिस्क्रिप्टर सीमाओं, और `RUST_LOG` या `HUMAN_LOGGING` के माध्यम से लॉग स्तर कॉन्फ़िगरेशन के लिए भी समस्या-निवारण नोट्स हैं। ## GraphQL सेवा क्लाइंट कार्यक्षमता `/v1/graphql` पर GraphQL सेवा endpoint के माध्यम से उजागर की जाती है। बिल्ड के बाद schema `crates/client/assets/schema.sdl` पर उपलब्ध हो जाता है। सेवा एक `submit` mutation की अपेक्षा करती है जो Fuel विशिष्टताओं के अनुसार hex-encoded बाइनरी प्रारूप में एक Transaction स्वीकार करता है। ## Docker और Kubernetes डिप्लॉयमेंट एसेट्स `deployment/` के अंतर्गत शामिल हैं, जिनमें एक Dockerfile और एक Kubernetes manifest है। कमांड दिखाते हैं कि Docker इमेज कैसे बनाएँ और Kubernetes volume, deployment, और service संसाधन कैसे बनाएँ/हटाएँ।