
Deno-მ გამოუშვა deno desktop: პროექტი დესკტოპ-აპლიკაციად იქცევა
Deno 2.9-ში გამოჩნდა deno desktop — ბრძანება, რომელიც Deno პროექტს გასავრცელებელ დესკტოპ-ბინარად აკომპილირებს. დოკუმენტაცია მას Electron-ისა და Tauri-ს ალტერნატივად წარმოადგენს.
Deno-მ გამოუშვა deno desktop — ბრძანება, რომელიც Deno-ს პროექტს, ერთი TypeScript ფაილიდან Next.js აპლიკაციამდე, დამოუკიდებელ დესკტოპ-პროგრამად აქცევს. შედეგია გასავრცელებელი ბინარული ფაილი, რომელიც პროექტის კოდს, Deno-ს გარემოსა და ვებ-რენდერინგის ძრავას ერთ პაკეტში აერთიანებს თითოეული პლატფორმისთვის. ფუნქცია Deno 2.9.0-დან არის ხელმისაწვდომი.
პოზიციონირება Electron-ისა და Tauri-ს წინააღმდეგ
დოკუმენტაცია ხელსაწყოს არსებული ვებ-სტეკების — Electron, Tauri, Electrobun — კომპრომისებზე პასუხად წარმოადგენს: დიდი ბინარები, პლატფორმების არასრული მხარდაჭერა, JavaScript ეკოსისტემაზე შეზღუდული წვდომა, განახლების მექანიზმის არარსებობა და ფრეიმვორკებთან ინტეგრაციის უქონლობა. Deno-ს პასუხი კონკრეტულია: ნაგულისხმევი WebView ბექენდი ოპერაციული სისტემის საკუთარ ვებ-ვიუს იყენებს და ბინარებს მცირეს ინახავს, სრული npm ეკოსისტემა კი Node-თან თავსებადობის შრის მეშვეობით რჩება ხელმისაწვდომი. ვისაც macOS-ზე, Windows-სა და Linux-ზე ერთნაირი რენდერინგი სჭირდება, CEF-ზე დაფუძნებული ჩაშენებული Chromium-ის ბექენდი შეუძლია აირჩიოს.
ფრეიმვორკების ავტომატური ამოცნობა და პროცესშიდა კავშირი
Next.js, Astro, Fresh, Remix, React Router, Nuxt, SvelteKit, SolidStart, TanStack Start ან Vite SSR პროექტზე მითითებისას ბრძანება release რეჟიმში წარმოების სერვერს, ხოლო --hmr-ით გაშვებისას ცხელი განახლების მქონე დეველოპმენტის სერვერს უშვებს; ფრეიმვორკების უმეტესობას სპეციალური ადაპტერი არ სჭირდება. ბექენდსა და ინტერფეისს შორის კომუნიკაცია სოკეტური IPC-ის ნაცვლად პროცესშიდა არხებით მიდის — მნიშვნელობები გადაცემისას კვლავ კოდირდება, მაგრამ Deno-ს კოდსა და ვებ-ვიუს შორის პროცესთაშორისი მიმოცვლა აღარ ხდება. ერთი მანქანიდან შესაძლებელია macOS-ის, Windows-ისა და Linux-ისთვის აწყობა, ბექენდები კი საჭიროებისამებრ ჩამოიტვირთება და ლოკალურად არ კომპილირდება.
განახლებები და სამუშაო მაგალითი
ავტომატური განახლება ჩაშენებულია: საკმარისია ერთი latest.json მანიფესტი და bsdiff პატჩები — გარემო პერიოდულად ამოწმებს, აყენებს და წარუმატებელი გაშვებისას ავტომატურად აბრუნებს წინა ვერსიას. მინიმალური აპლიკაცია ერთი ფაილია, რომელიც Deno.serve()-ს იძახებს; კომპილირებული ბინარი ფანჯარას ამ ლოკალურ HTTP სერვერზე ხსნის, Deno კი თავად უკავშირდება იმ მისამართს, რომელზეც ვებ-ვიუ გადადის — პორტისა თუ ჰოსტის მითითება საჭირო არ არის. დოკუმენტაცია სრულ მაგალითად denidian-ს მოიხსენიებს: Obsidian-ის სტილის ჩანაწერების აპლიკაცია Markdown ფაილებით, ვიკი-ბმულებითა და გრაფის ხედით, რომელიც Deno.BrowserWindow-ის მეშვეობით ფანჯრების მართვას, აპლიკაციის მენიუებს, --hmr-ით მუშაობასა და გავრცელებისთვის შეფუთვას მოიცავს.
დოკუმენტაცია ასევე აღწერს კონფიგურაციას deno.json-ის desktop ბლოკით, CEF, webview და raw ბექენდებს, HTTP სერვირებას, ფრეიმვორკების მოთხოვნებს, ფანჯრის სასიცოცხლო ციკლსა და მოვლენებს, WebGPU რენდერინგს, ბაინდინგებს, მენიუებს, tray-სა და dock-ის ინტეგრაციას, ნატიურ დიალოგებსა და შეტყობინებებს, DevTools-ს, შეცდომების რეპორტინგს, ჯვარედინ კომპილაციასა და ინსტალატორებს.
SiTech — AI-გაძლიერებული ვებ დეველოპმენტი
ვქმნით სწრაფ, თანამედროვე ვებსაიტებს და AI-ს ვაერთიანებთ ქართული ბიზნესებისთვის. გაქვთ პროექტი ან კითხვა? სიამოვნებით დაგეხმარებით.