WebAssembly (WASM) एक पोर्टेबल, निम्न-स्तरीय बाइनरी कोड प्रारूप है जो जावास्क्रिप्ट की तरह ही आधुनिक ब्राउज़रों पर चलता है। वास्तव में, WebAssembly भी जावास्क्रिप्ट के साथ इंटरऑपरेबल है। आप अधिकांश प्रोग्राम सोर्स कोड को WebAssembly में ट्रांसपाइल कर सकते हैं और इसे जावास्क्रिप्ट के साथ या बिना ब्राउज़र पर चला सकते हैं।

जंग तेज है, जिससे भाषा WebAssembly कार्यक्रमों के निर्माण के लिए एक व्यवहार्य विकल्प बन जाती है। वेब ऐप्स बनाने के लिए आपके द्वारा उपयोग किए जाने वाले टूल के समर्थन के साथ, सहायता के लिए कई जंग पुस्तकालय और ढांचे हैं।

1. गूलर पुस्तकालय

गूलर एक तेज़, एर्गोनोमिक और सहज सॉलिडजेएस जैसा प्रतिक्रियाशील ढांचा है। आप इसका उपयोग रस्ट में वेब एप्लिकेशन बनाने के लिए कर सकते हैं जो WebAssembly की शक्ति का लाभ उठाते हैं। Sycamore अधिकांश कार्यक्षमता प्रदान करता है जिसकी आपको Rust में एक वेब ऐप फ्रंटएंड बनाने की आवश्यकता होगी, इसलिए आपको जावास्क्रिप्ट लिखने की आवश्यकता नहीं होगी।

Sycamore JS-sys या Web-Sys का उपयोग करके Wasm-Bindgen पर एक राउटर और जावास्क्रिप्ट इंटरऑपरेबिलिटी भी प्रदान करता है। परियोजना जल्द ही परीक्षण और सीएसएस कार्यक्षमता जारी करने का इरादा रखती है।

Sycamore का उपयोग करने के लिए, आपको Rust के हाल के संस्करण की आवश्यकता होगी—the wasm32-अज्ञात-अज्ञात लक्ष्य। अपने एप्लिकेशन को बनाने और बंडल करने के लिए आपको ट्रंक की भी आवश्यकता होगी। चूंकि साइकैमोर नया है, इसलिए उत्पादन में मुख्य शाखा पुस्तकालय का उपयोग करना जोखिम भरा होगा, सिवाय इसके कि आप पहले के रिलीज का सहारा लेते हैं।

2. यू फ्रेमवर्क

एव WebAssembly का उपयोग करके मल्टीथ्रेडेड फ्रंटएंड वेब ऐप बनाने के लिए एक रस्ट फ्रेमवर्क है। यह आपको रस्ट कोड लिखने और अपने रस्ट कोड को WASM में ट्रांसपाइल करने की अनुमति देता है, जो WASM सपोर्ट वाले किसी भी डिवाइस पर चल सकता है। Yew JavaScript के साथ इंटरऑपरेबल है (आप अपने. का उपयोग कर सकते हैं) एनपीएम पैकेज), और फ्रेमवर्क HTML तत्वों के साथ रस्ट के साथ बातचीत करने के लिए एक मैक्रो प्रदान करता है, जैसे रिएक्ट में JSX।

आप ट्रंक एप्लिकेशन बंडलर या WASMPack का उपयोग करके यू के साथ शुरुआत कर सकते हैं। आरंभ करने के तरीके के लिए दस्तावेज़ देखें, HTML के साथ सहभागिता करें और डोम एपीआई और अपने रस्ट कोड को WebAssembly में ट्रांसपाइल करें।

यू परियोजना बहुत लोकप्रिय है, जीथब पर बीस हजार से अधिक सितारे और पांच हजार उपयोगकर्ता हैं। यू स्थिर है, लेकिन परियोजना उत्पादन के लिए तैयार नहीं है, और कोड आधार बदल रहा है, इसलिए आपको त्रुटियों और विरामों का अनुभव हो सकता है।

3. पर्सी लाइब्रेरी

पर्सी WebAssembly द्वारा संचालित फ्रंटएंड वेब ऐप बनाने के लिए रस्ट लाइब्रेरी का एक संग्रह है। पर्सी तत्काल सर्वर-साइड प्रतिपादन का समर्थन करता है। परियोजना खोज-इंजन-अनुकूल एकल-पृष्ठ अनुप्रयोगों (एसपीए) के निर्माण में उत्कृष्टता प्राप्त करती है।

पर्सी प्रदान करता है एचटीएमएल! आभासी डोम उत्पन्न करने के लिए मैक्रो। आप इन्हें फ्रंटएंड में डीओएम तत्वों में प्रस्तुत कर सकते हैं या अपने आवेदन के बैकएंड में संचालन के लिए उनका उपयोग कर सकते हैं।

पर्सी अभी भी बहुत नया है, और यद्यपि पुस्तकालय उत्पादन के लिए तैयार नहीं है, यह परियोजना बहुत लोकप्रिय है, जीथब पर दो हजार से अधिक सितारे हैं।

4. बीज ढांचा

बीज रस्ट में तेज़ वेब ऐप्स बनाने के लिए बैटरी-शामिल, पूर्ण-स्टैक WebAssembly-संचालित ढांचा है। सीड फ्रेमवर्क एक टेम्प्लेटिंग सिस्टम प्रदान करता है जो यू के JSX जैसे सिंटैक्स के बजाय मैक्रो सिंटैक्स का उपयोग करता है। इसमें उत्पादकता बढ़ाने के लिए एक अंतर्निर्मित राज्य प्रबंधन प्रणाली भी है।

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

आप अपने वेब एप्लिकेशन के बैकएंड के लिए सीड का भी उपयोग कर सकते हैं। बीज रूटिंग और प्रमाणीकरण समर्थन और ऑथो एकीकरण के साथ आरईएसटी या ग्राफक्यूएल एपीआई बनाने के लिए कार्यक्षमता प्रदान करता है।

मूनज़ून फ्रंटएंड और बैकएंड अनुप्रयोगों के लिए उपयोग में आसान, पूर्ण-स्टैक, WebAssembly-समर्थित ढांचा है। आप फ्रंटएंड पर HTML, CSS और JavaScript लिखे बिना या बैकएंड पर REST, GraphQL या SQL लिखे बिना रस्ट लिख सकते हैं। मूनज़ून तेज़, सरल, स्केलेबल और एसईओ के अनुकूल है। यह वेब ऐप्स बनाने के लिए एक सीएलआई एप्लिकेशन प्रदान करता है जो तैनात करना आसान है।

मूनज़ून परियोजना दर्शन बिना किसी विशेष शब्दावली, कृत्रिम बाधाओं या हठधर्मिता के एक बहुत ही सरल उपकरण बनाना है। इसका उपयोग करके, आप अपनी इच्छानुसार वेब एप्लिकेशन बनाने पर ध्यान केंद्रित कर सकते हैं। फ्रंट एंड बनाने के लिए आपको WASM-Pack स्थापित करना होगा। मूनज़ून एप्लिकेशन का बैकएंड एक्टिक्स-वेब और ताना पर चलता है, दोनों लोकप्रिय रस्ट बैकएंड फ्रेमवर्क हैं। मूनज़ून प्रमाणीकरण कार्यक्षमता भी प्रदान करता है।

मूनज़ून दस्तावेज़ीकरण इस समय होस्ट नहीं किया गया है। टूल का उपयोग करने के लिए, आप मार्कडाउन फाइलों को देख सकते हैं डॉक्स प्रोजेक्ट के माध्यम से फ़ोल्डर गिटहब भंडार.

आपने WebAssembly के साथ बातचीत की हो सकती है

WebAssembly को पहली बार 2017 में जारी किया गया था, और वर्ल्ड वाइड वेब कंसोर्टियम (W3C) ने WebAssembly को 2019 में एक वेब मानक बना दिया। 2019 से, Cloudflare, Google और Dropbox जैसी कंपनियों ने उत्पादन में तकनीक का उपयोग किया है।

Google धरती WebAssembly का उपयोग करता है, Cloudflare इसका उपयोग Cloudflare श्रमिकों के लिए करता है, और Dropbox अपनी वेबसाइट पर एक कोडेक के लिए WebAssembly का उपयोग करता है।