
Deno Desktop, Deno projelerini bağımsız masaüstü uygulamalarına dönüştürüyor
Deno 2.9 ile gelen deno desktop komutu, Deno projelerini dağıtılabilir masaüstü ikili dosyalarına derliyor. Belgeler aracı, küçük varsayılan paketler ve yerleşik güncellemeyle Electron ve Tauri'ye alternatif sunuyor.
Deno, tek bir TypeScript dosyasından Next.js uygulamasına kadar herhangi bir Deno projesini bağımsız bir masaüstü programına dönüştüren deno desktop komutunu duyurdu. Çıktı, projenin kodunu, Deno çalışma ortamını ve bir web render motorunu her platform için tek bir pakette birleştiren dağıtılabilir bir ikili dosya. Özellik Deno 2.9.0'dan itibaren kullanılabilir.
Electron ve Tauri'ye karşı konumlandırma
Belgeler, aracı Electron, Tauri ve Electrobun gibi mevcut web tabanlı yığınların ödünlerine yanıt olarak sunuyor: büyük ikili dosyalar, eksik platform desteği, JavaScript ekosistemine sınırlı erişim, yerleşik güncelleme mekanizmasının olmaması ve çerçeve entegrasyonunun bulunmaması. Deno'nun yanıtı net: varsayılan WebView arka ucu, ikili dosyaları küçük tutmak için işletim sisteminin kendi web görünümünü kullanıyor, npm ekosisteminin tamamı ise Node uyumluluk katmanı üzerinden erişilebilir kalıyor. macOS, Windows ve Linux'ta aynı render davranışını isteyenler CEF tabanlı paketlenmiş Chromium arka ucunu seçebiliyor.
Çerçeve algılama ve süreç içi bağlantılar
Next.js, Astro, Fresh, Remix, React Router, Nuxt, SvelteKit, SolidStart, TanStack Start veya Vite SSR projelerine yönlendirildiğinde komut, release modunda üretim sunucusunu ya da --hmr ile sıcak yeniden yükleme destekli geliştirme sunucusunu çalıştırıyor; çoğu çerçeve özel bir bağdaştırıcı gerektirmiyor. Arka uç ile arayüz arasındaki iletişim soket tabanlı IPC yerine süreç içi kanallardan geçiyor: değerler çağrı sınırında yine kodlanıyor, ancak Deno kodu ile web görünümü arasında süreçler arası gidiş-dönüş yok. Tek bir makineden macOS, Windows ve Linux için derleme yapılabiliyor; arka uçlar yerel olarak derlenmek yerine gerektiğinde indiriliyor.
Güncellemeler ve örnek uygulama
Otomatik güncelleme yerleşik: tek bir latest.json bildirimi ve bsdiff yamaları yayınlanıyor; çalışma ortamı düzenli olarak kontrol ediyor, uyguluyor ve başlatma başarısız olursa otomatik olarak önceki sürüme dönüyor. En küçük uygulama, Deno.serve() çağıran tek bir dosya; derlenen ikili dosya bu yerel HTTP sunucusuna bakan bir pencere açıyor ve Deno, web görünümünün gittiği adrese kendiliğinden bağlanıyor, yani port veya ana makine adı belirtmeye gerek kalmıyor. Belgeler tam örnek olarak denidian'ı gösteriyor: Markdown notları, vikibağlantıları ve grafik görünümü olan Obsidian tarzı bir not uygulaması; Deno.BrowserWindow ile pencere yönetimini, uygulama menülerini, --hmr ile geliştirmeyi ve dağıtım için paketlemeyi kapsıyor.
Belgeler ayrıca deno.json içindeki desktop bloğuyla yapılandırmayı, CEF, webview ve raw arka uçlarını, HTTP sunumunu, çerçeve gereksinimlerini, pencere yaşam döngüsü ve olayları, WebGPU render'ını, bağlantıları, menüleri, tray ve dock entegrasyonunu, yerel diyalogları ve bildirimleri, DevTools'u, hata raporlamayı, çapraz derlemeyi ve kurulum paketlerini ele alıyor.
SiTech — AI destekli web geliştirme
Hızlı ve modern web siteleri kuruyor, AI'yı gerçek iş akışlarına taşıyoruz. Projeniz veya sorunuz mu var? Yardımcı olmaktan mutluluk duyarız.