15 पॉइंट द्वारा GN⁺ 2024-11-22 | 5 टिप्पणियां | WhatsApp पर शेयर करें
  • Electrobun का लक्ष्य Typescript में लिखे गए अल्ट्रा-फ़ास्ट, हल्के, क्रॉस-प्लेटफ़ॉर्म डेस्कटॉप एप्लिकेशन को बनाने, अपडेट करने और डिप्लॉय करने के लिए एक पूर्ण समाधान प्रदान करना है
  • यह main process चलाने के लिए bun का उपयोग करता है, webview Typescript को bundle करता है, और zig में लिखे गए native bindings शामिल करता है
  • मुख्य विशेषताएँ

    • Typescript: आप main process और webview के लिए Typescript लिख सकते हैं, जिससे एक ही भाषा में आसानी से काम किया जा सकता है.
    • तेज़: main और webview process के बीच isolation सुरक्षा और performance सुनिश्चित करता है, और तेज़, type-safe RPC को आसानी से implement किया जा सकता है.
    • छोटा: लगभग 12MB का छोटा self-extracting app bundle और केवल 4KB जितने छोटे app updates के साथ आप बार-बार डिप्लॉय कर सकते हैं और bandwidth लागत बचा सकते हैं.
    • पूर्ण एकीकरण: यह एक पूरी तरह integrated workflow प्रदान करता है, जिसमें आप 5 मिनट के भीतर code लिखना शुरू कर सकते हैं और 10 मिनट के भीतर डिप्लॉय कर सकते हैं.

5 टिप्पणियां

 
tsboard 2024-11-27

जितना ज़्यादा मैंने Bun का इस्तेमाल किया, उतना ही यह मुझे वास्तव में पसंद आया। सबसे बढ़कर, यह अब तक भी तेज़ी से काम करने के अपने लक्ष्य पर ईमानदारी से कायम है, जो बहुत प्रभावशाली लगता है। उम्मीद है कि यह प्रोजेक्ट सफल होगा।

 
aer0700 2024-11-23

क्या यह उन कोशिशों में से एक है जिसमें पहले nodejs में विकसित चीज़ों को bunjs में फिर से लिखा जा रहा है?
मैंने अभी तक Bun इस्तेमाल नहीं किया है, और मैं पहले से ही node में बना रहा हूँ, इसलिए जो बना लिया है उसे Bun में ले जाने की भी कोई योजना नहीं है...
हालाँकि 10 साल बाद क्या होगा, कौन जाने। एहतियात के तौर पर इसे थोड़ा छूकर देखना तो चाहिए।

 
tinywolf 2024-11-23

wails भी हल्के-फुल्के इस्तेमाल के लिए काफ़ी काम का है।

 
pmc7777 2024-11-22

अच्छा लगता है कि Tauri जैसे, लेकिन अलग दिशा में किए गए प्रयास अक्सर देखने को मिलते हैं।

 
GN⁺ 2024-11-22
Hacker News राय
  • Electrobun, Tauri जैसा है, लेकिन यह Zig का उपयोग करके तेज़ और native हिस्सों को implement करता है, और frontend/UI हिस्से पर ज़्यादा फोकस करता है

    • यह एक दिलचस्प प्रस्ताव है, लेकिन इसके लिए बहुत बड़े काम की ज़रूरत है
  • Electrobun के डेवलपर ने बताया कि प्रोजेक्ट अभी शुरुआती चरण में है, और roadmap को अपडेट करने की ज़रूरत है

    • यह Tauri की तरह system webview का उपयोग करता है, और Chromium को bundle नहीं करता
    • Electron की तरह Bun को main process के रूप में इस्तेमाल करता है, जिससे main और browser context दोनों में TypeScript का उपयोग होता है
    • C/Objective-C में लिखे native bindings को Zig wrapper में लपेटा गया है, जिन्हें Bun process चलाता है
    • cross-platform लक्ष्य है, लेकिन फिलहाल प्राथमिकता stability पर है
    • CLI updates, code signing आदि संभालता है, और build artifacts बनाकर उन्हें S3 या static file host पर upload कर सकता है
    • Zig में optimized bsdiff implementation के ज़रिए 4KB आकार के updates अपने-आप generate करता है
    • Zstd का उपयोग करने वाले अपने Zig self-extract mechanism से शुरुआती download size को न्यूनतम रखा जाता है
    • Bun और browser process के बीच एक encrypted RPC mechanism देता है, जिसमें सिर्फ method signatures और handlers लिखने होते हैं
    • OOPIF implementation के ज़रिए performant और इस्तेमाल में आसान isolated browser context को HTML <electrobun-webview> element के रूप में embed किया जा सकता है
  • कुछ लोगों ने पूछा कि pure TypeScript में OS-specific features को कैसे manage किया जाता है, और Tauri की तुलना में size और speed में क्या अंतर है

  • Electrobun के rendering engine को लेकर सवाल है, और प्रोजेक्ट का नाम Electron की ओर इशारा करता है, लेकिन इसका ज़िक्र नहीं है

    • Electrobun Playground app का आकार 50.4MB है, जिसमें ज़्यादातर हिस्सा Bun runtime का है
  • कुछ लोगों का कहना है कि Electrobun की growth देखना दिलचस्प होगा; वे अभी इसमें शामिल नहीं होंगे, लेकिन इसे एक शानदार project मानते हैं

  • एक राय यह है कि Electrobun मूल रूप से Electron है, जिसमें Node.js की जगह Bun और Chromium की जगह WebView है

  • cross-platform apps बनाने के लिए जितने ज़्यादा alternatives हों, उतना बेहतर है

  • कुछ लोगों ने पूछा कि क्या Electrobun, NeutralinoJS, Electrino, DeskGap जैसे एक और webview-based framework है, और Node की जगह Bun इस्तेमाल करने के अलावा इसका फायदा क्या है

    • सुझाव दिया गया कि सच में lightweight cross-platform desktop apps के लिए Qt, GTK, wxWidgets, FLTK 1.4 जैसे non-webview native frameworks का उपयोग बेहतर होगा
  • कुछ लोगों ने main process और webview process के बीच isolation से होने वाली performance समस्याओं पर चिंता जताई

    • data share करने के लिए IPC bridge का उपयोग करना पड़ता है, और इसका मतलब है कि हर shared data को copy करना होगा
    • उदाहरण के लिए, ffmpeg से video decode करते समय render करने से पहले हर frame की decoded image को copy करना होगा
  • Electron के विकल्प के रूप में Bun का उपयोग अच्छा है, लेकिन Electron से बेहतर होना कोई बहुत ऊँचा मानदंड नहीं है

    • उन्होंने कहा कि वे Bun के FreeBSD पर चलने का इंतज़ार कर रहे हैं, और यह उनकी Christmas wishlist में शामिल है