15 puan yazan GN⁺ 2024-11-22 | 5 yorum | WhatsApp'ta paylaş
  • Electrobun, TypeScript ile yazılmış ultra hızlı, hafif ve çapraz platform masaüstü uygulamalarını geliştirmek, güncellemek ve dağıtmak için eksiksiz bir çözüm sunmayı hedefliyor
  • Ana süreci çalıştırmak ve webview TypeScript kodunu bundle etmek için bun kullanıyor; ayrıca zig ile yazılmış native binding'ler içeriyor
  • Başlıca özellikler

    • TypeScript: Ana süreç ve webview için TypeScript yazabilir, tek bir dille kolayca çalışabilirsiniz.
    • Hızlı: Ana süreç ile webview süreci arasındaki izolasyon, güvenlik ve performans sağlarken hızlı ve type-safe RPC'yi kolayca uygulamanıza olanak tanır.
    • Küçük: Yaklaşık 12 MB'lık küçük self-extracting uygulama paketi ve 4 KB kadar küçük uygulama güncellemeleri sayesinde sık dağıtım yaparken bant genişliği maliyetlerini azaltabilirsiniz.
    • Tam entegre: 5 dakika içinde kod yazmaya başlayıp 10 dakika içinde dağıtıma çıkabileceğiniz tamamen entegre bir iş akışı sunar.

5 yorum

 
tsboard 2024-11-27

Bun’ı kullandıkça gerçekten daha çok sevdim. Her şeyden önce, hızlı çalışma hedefini hâlâ sadakatle sürdürmesi oldukça etkileyici görünüyor. Umarım bu proje başarılı olur.

 
aer0700 2024-11-23

Mevcut nodejs ile geliştirilmiş şeyleri bunjs ile yeniden yazma denemelerinden biri mi acaba?
Bun’ı henüz kullanmadım, ayrıca zaten node ile geliştiriyorum ve yaptıklarımı da Bun’a taşıma gibi bir planım yok...
10 yıl sonra ne olur bilinmez gerçi. Ne olur ne olmaz, biraz kurcalamak gerekir sanırım.

 
tinywolf 2024-11-23

wails de küçük çapta kullanışlıdır.

 
pmc7777 2024-11-22

Tauri'ye benziyor ama farklı doğrultudaki denemeleri sık sık görmek güzel.

 
GN⁺ 2024-11-22
Hacker News görüşleri
  • Electrobun, Tauri'ye benziyor ancak hızlı ve yerel kısımları Zig kullanarak uygulayan ve ön uç/UI tarafına daha fazla odaklanan bir proje

    • Bu ilginç bir öneri, ancak çok büyük bir iş yükü gerektiriyor
  • Electrobun geliştiricisi, projenin erken aşamada olduğunu ve yol haritasının güncellenmesi gerektiğini belirtiyor

    • Tauri gibi sistem webview'ını kullanıyor ve Chromium'u pakete dahil etmiyor
    • Electron gibi Bun'ı ana süreç olarak kullanıyor; böylece ana ve tarayıcı bağlamında TypeScript kullanılabiliyor
    • C/Objective-C ile yazılmış yerel binding'ler Zig wrapper'larıyla sarılıyor ve Bun süreci tarafından çalıştırılıyor
    • Çapraz platformu hedefliyor, ancak önceliği kararlılığa veriyor
    • CLI; güncellemeler, kod imzalama gibi işleri yönetiyor ve S3 ya da statik dosya barındırıcılarına yüklenebilecek build artifact'leri üretebiliyor
    • Zig ile optimize edilmiş bsdiff uygulaması sayesinde 4KB boyutunda güncellemeleri otomatik olarak oluşturuyor
    • Zstd kullanan kendi Zig self-extract mekanizmasıyla ilk indirme boyutunu en aza indiriyor
    • Bun ile tarayıcı süreci arasında, yalnızca method signature'larını ve handler'ları yazmayı gerektiren şifreli bir RPC mekanizması sunuyor
    • OOPIF uygulaması sayesinde, yüksek performanslı ve kullanımı kolay izole tarayıcı bağlamları HTML <electrobun-webview> öğesiyle gömülebiliyor
  • İşletim sistemi bazlı özellikleri tamamen TypeScript ile nasıl yönettiğini ve Tauri ile karşılaştırıldığında boyut ve hız açısından ne farklar olduğunu merak eden yorumlar var

  • Electrobun'un rendering engine'i hakkında bir soru var; proje adı Electron'u çağrıştırsa da bundan bahsedilmiyor

    • Electrobun Playground uygulamasının boyutu 50.4MB ve bunun büyük kısmını Bun runtime'ı oluşturuyor
  • Electrobun'un nasıl gelişeceğini izlemenin ilginç olduğu, hemen dahil olunmasa da harika bir proje olarak değerlendirildiği yönünde bir görüş var

  • Electrobun'un, Node.js'in Bun ile ve Chromium'un WebView ile değiştirilmiş hali olan bir Electron olduğu yönünde bir görüş var

  • Çapraz platform uygulamaları oluşturmak için ne kadar çok alternatif olursa o kadar iyi olduğu söyleniyor

  • Electrobun'un NeutralinoJS, Electrino, DeskGap gibi bir başka webview tabanlı framework olup olmadığı ve Node yerine Bun kullanmasının dışında ne avantaj sunduğu soruluyor

    • Gerçekten hafif çapraz platform masaüstü uygulamaları için Qt, GTK, wxWidgets, FLTK 1.4 gibi webview tabanlı olmayan yerel framework'lerin kullanılmasının daha iyi olacağı öneriliyor
  • Ana süreç ile webview süreci arasındaki izolasyonun doğurduğu performans sorunlarından endişe eden bir görüş var

    • Verilerin IPC bridge üzerinden paylaşılması gerekiyor ve bu da paylaşılan tüm verilerin kopyalanmasını gerektiriyor
    • Örneğin, ffmpeg ile video decode edilirken her kareyi render etmeden önce decode edilmiş görüntünün kopyalanması gerekiyor
  • Electron'a alternatif olarak Bun kullanmak iyi olsa da, Electron'dan daha iyi olmanın düşük bir çıta olduğu değerlendiriliyor

    • Bun'ın FreeBSD'de çalışmasını beklediğini ve bunun Noel istek listesinde yer aldığını belirten bir yorum var