Přejít k navigační liště

Zdroják » Zprávičky » Deno přichází s novou funkcí: desktopové aplikace přímo z TypeScriptu

Deno přichází s novou funkcí: desktopové aplikace přímo z TypeScriptu

Zprávičky ‐ ‐ Webový vývoj ‐

Nálepky:

Deno chystá příkaz deno desktop, který umožní z běžného Deno projektu, od jednoduchého TypeScript souboru až po Next.js aplikaci, vytvořit samostatnou desktopovou aplikaci. Výstupem je redistribuovatelný binární soubor, který v sobě obsahuje kód, Deno runtime i webový renderovací engine.

Funkce zatím není ve stabilní verzi, přijde s Deno v2.9.0 a lze ji vyzkoušet přes deno upgrade canary.

Proč to Deno dělá?

Webové technologie jsou nejrozšířenější UI toolkit na světě. Existující desktopová řešení postavená na webových stackách (Electron, Tauri, Electrobun) mají každé své nevýhody: příliš velké binárky, chybějící podpora platforem, žádný ekosystém JavaScriptu, chybějící mechanismus aktualizací nebo integrace frameworků.

deno desktop se snaží tyto kompromisy vyřešit:

  • Malé binárky s plnou Node.js kompatibilitou – standardně používá systémový WebView, volitelně lze přepnout na bundlovaný Chromium (CEF) pro konzistentní renderování napříč platformami.
  • Automatická detekce frameworků – stačí namířit deno desktop na projekt v Next.js, Astro, Fresh, Remix, Nuxt, SvelteKit, SolidStart a dalších; žádné změny kódu nejsou potřeba.
  • In-process komunikace místo IPC – komunikace mezi backendem a UI probíhá přes in-process kanály, nikoliv přes sockety, takže odpadá meziprocesorový overhead.
  • Cross-kompilace z jednoho stroje – z jednoho počítače lze sestavit binárky pro macOS, Windows i Linux.
  • Vestavěné auto-aktualizace – stačí publikovat manifest latest.json a bsdiff patche; runtime sám stáhne, aplikuje, a v případě chyby vrátí aktualizaci zpět.

Jak to vypadá v praxi?

Spustit desktopovou aplikaci je opravdu jednoduché – jeden soubor s Deno.serve() handlerem, příkaz deno desktop main.ts, a výsledkem je okno s lokálním HTTP serverem. Vzniklý binární soubor lze spustit přímo bez jakýchkoliv dalších závislostí.

Jde o zajímavou alternativu k Electronu – výrazně jednodušší na nastavení a s mnohem menší velikostí výsledné aplikace.

Komentáře

Odebírat
Upozornit na
guest
0 Komentářů
Nejstarší
Nejnovější Nejvíce hlasů

Spacer.gif a tabulky v tabulkách: Jak se kdysi dělaly webové stránky

Kdo dnes napíše display: grid a za minutu má hotový třísloupcový layout, těžko si představí, jakou akrobacii to stálo před pětadvaceti lety. Webové stránky tehdy držely pohromadě vnořené tabulky, průhledné obrázky o velikosti jednoho pixelu a pevná víra, že to nikdo neotevře v jiném prohlížeči. Pojďme si připomenout, jak to fungovalo, proč to fungovalo a proč jsme s tím museli skončit.

Rust pomohl vrátit JPEG XL do Chromu. Stačí to k úspěchu na webu?

Před čtyřmi lety Google podporu JPEG XL z Chromu odstranil. Teď formát vrací s dekodérem v Rustu, který vznikl na popud vývojářů Firefoxu. AVIF přitom může nabídnout menší soubory a bezeztrátový WebP rychlejší dekódování. JPEG XL má jiné přednosti: velkou fotografii dokáže zobrazovat už během stahování a staré JPEGy zmenší bez další ztráty kvality. Vedle historie jeho návratu se podíváme na výsledky srovnání, bezeztrátovou kompresi i praktické nasazení jednotlivých formátů na webu.