Replies: 2 comments 10 replies
-
Разве это не кардинальные ли изменения? |
Beta Was this translation helpful? Give feedback.
-
В общем у меня сегодня была весёлая ночка))Deno с webview:Ситуация следующая, работает, очень даже неплохо, на винде подвязывается Edge. Можно собрать его в exe, размер получается около 50мб, по крайней мере это всяко лучше электрона с его 120мб, при этом доступен тот же функционал браузера, разве что придётся дописывать апи для общения между кодом и рантаймом лаунчера. Также есть ещё пара вариантов, но я их пока не пробовал: tauri, Ultralight Попытки собрать лаунчер-сервер в бинарник:Попробовал ещё несколько вариантов, сейчас ориентировался только на размер, функционально не проверял nexe: бинарь с 12 нодой и хелоу ворлдом - 28мбТакже попробовал собрать ручками используя dgiagio/warp: бинарь с 14 нодой и хелоу ворлдом - 22мбКстати интересное наблюдение, одна только папка с npm весит 20мб (сам exe ноды весит ~50мб)
|
Beta Was this translation helpful? Give feedback.
-
У меня есть несколько идей на этот счёт. Скорее больше долгоиграющие и которые возможно будут реализовываться после релиза, чем то что будет внедряться именно сейчас.
Во первых на стороне лаунчер-сервера перейти на использование ЯПНесомненный плюс - сборка в нативку.Dart
. По первым тестам, по крайней мере, он мне показался приятным. Синтаксис напоминает Javascript/Typescript, работает шустро.Простой
Hello World
собирается в экзешник размером в ~4,5мб. В сравнение текущий код лаунчер-сервера на node.js собирается в exe размером около 75мб (как я понял это сам код интерпретатора node.js и соответственно код лаунчер-сервера), при помощи утилиты pkg от vercel (бывший zeit, разрабы next.js),при этом имеет некоторые ограничения в работе файловой системы из-за чего в текущем варианте не работоспособно (нужно немного менять работу с файловой системой https://www.npmjs.com/package/pkg#snapshot-filesystem).Второе: избавиться от электрона на стороне лаунчера. CEF возможно и удобно, но его размер малость напрягает))Как вариант можно использовать webview + deno + биндинги webview для deno
Beta Was this translation helpful? Give feedback.
All reactions