Alex
Я так понял только кастомные инсталляторы делать.
Alex
Никак, это версия софта с сервером у клиента
Григорий
после обновления до 20 электрона перестало работать переход по ссылке, моэжет кто сталкивался с этим?
Григорий
может кто сталкивался с отключением зума в приложении?
Григорий
куда не вотку webFrame он пишет что его не существует
Rewrite
Всем прив. Есть ли какие то статьи/рекомендации по разбитию фуллстек ембдед приложения? Я понимаю что можно делить на клиент-сервер или можно делать монолитом но не могу определиться, что лучше выбрать
Alex
Yarn add packageWithNodeDbName ? Или в чем проблема?
Например postgresql пакеты только предоставляют драйверы для работы с postgre, а мне нужно поставить и сам сервер.
Arsen
Например postgresql пакеты только предоставляют драйверы для работы с postgre, а мне нужно поставить и сам сервер.
Ну если кастомный инсталлятор делать не хочется, можно при первом запуске скачать бинарники постгреса и запустить его. Ну это если windows и хочется самостоятельно управлять этой зависимостью (апдеты ставить и т.д.). Но вцелом sql не очень удобен для работы из nodejs, если особых требований к базе нет, то я бы nosql поглядел или sqlite.
Alex
У наж жирная база со сложными запросами, в nosql такое будет жутко тормозить.
Alex
Сейчас это веб который надо завернуть в клиента для тех у кого нет интернета
Arsen
Ну типа для этого PWA придумали, чтоб без интернета сайты работали, но вам, опять же, виднее. Как по мне - синхронизация SQL со всеми их индексами - тот еще гемор в эксплуатации.
Alex
Да, поэтому и хочется завернуть и сервер и клиента и базу целиком в один инсталлятор
Alex
Сервер и клиент уже работают внутри электрона. Осталось поставить базу у клиента на машине. Можно взять кастомный инсталлятор, но может есть стандартные средства для этого
Arsen
Не, в электроне встроенного скачивателя postgres точно нет, может ли сборщик произвольные скрипты выполнять при установке - надо в доке читать. А при такой задаче я бы вообще подумал, не выкинуть ли электрон и не сложить ли все приложение вместе с веб-сервером и postgres просто в zip-архив -)
Rewrite
Если хочешь базу внутри приложения используй sqlite
Rewrite
Если хочешь постгрес, то тогда придется юзера обязать устанавливать отдельно постгрес, чтобы приложение работало)
Alex
Ну пользователя чтото заставлять такое себе
Alex
Надо ему дать кнопку, "сделай все красиво"
Rewrite
Надо ему дать кнопку, "сделай все красиво"
Если бы постгрес можно было устанавливать не заставляя делать юзера екстра мувы, то все бы использовали постгрес, а не sqlite
Rewrite
Это база, это нужно знать и понимать
Alex
Ну mssql я в кастомный инсталлятор заворачивал. И базу там создавал и миграции накатывал в инсталляторе
Alex
Ответ я уже понял, средствами электрон билдера этого не добиться
Alex
Спасибо
Rewrite
Ответ я уже понял, средствами электрон билдера этого не добиться
Нативные модули можно билдить через electron-rebuild, но в твоем случае у тебя не нативный и не модуль вообще
Alex
https://stackoverflow.com/questions/33152533/bundling-precompiled-binary-into-electron-app
Alex
Вроде бы рабочее решение в ответах
Григорий
Ответ я уже понял, средствами электрон билдера этого не добиться
Ну а сделать как все, типа показать юзеру, смотри нужно скачать ещё одну софтину, подожди 2 мин и все будет ок. Сейчас же куча приложений и игр так делают
Григорий
Особенно когда навязывают всякий мусор
Григорий
Нет интернета. Иногда даже диски отправляем ))
Ну значит в продукте отправлять сразу все установщики и контролировать их через электрон
Григорий
К примеру как та же nvidia, предлагает несколько приложений установить но там можно выбрать то что хочешь. А тут просто сказать, что это жизненно важно для приложения
Arsen
Если бы постгрес можно было устанавливать не заставляя делать юзера екстра мувы, то все бы использовали постгрес, а не sqlite
C select и update и sqlite легко справится, при этом он очень компактен, не жрет много ресурсов и для десктопных приложения вполне ок. На сайте sqlite даже бенч есть, что файлы в sqlite хранить выгоднее, чем на файловой системе. Тут лучше объяснить, почему sqlite часто применяется в десктопных приложениях и почти никогда в веб-приложениях: sqlite не заточен на параллельные запросы. То есть много одновременно работающих пользовательских запросов (тем более на запись) для него плохо. А вот в десктопных приложениях, так как одновременно работает один человек и последовательно, это не является проблемой. Поэтому sqlite часто применяется в десктопных приложениях, а в Android вообще встроенная база и все приложения его могут использовать не таская с собой бинарники. Приложения же electron и так раздутые, еще нехватало их массово на бинарники postgres раздувать там, где и sqlite за глаза -)
Arsen
Ну и еще в postgres в конфиге много всяких крутилок, если пользователь приложения найдет postgres и решит их покрутить, поддержка запарится потом это все поддерживать -) И это еще одна причина для десктопных приложений выбрать sqlite, а не "серьезную РСУБД".
Николай
В Хроме есть встроенная sql
maxim
В Хроме есть встроенная sql
Мы щас так дойдем до electron-store на json с типами и миграциями))
CybernatiC
Websql. Но лучше использовать что то современное что умеет и в оффлайн типа supabase
Arsen
Мы щас так дойдем до electron-store на json с типами и миграциями))
Если данных мало и обновляются они редко, хранить просто в json - тоже ок -)
Arsen
Плюс JSON я вижу в том, что будет работать на любых архитектурах и ОС, так как не тянет никаких зависимостей сверх того, что есть в Electron -) Если же другие базы используются, то надо смотреть будут ли они работать на всяких mac/arm и т.д., возникают ли с ними проблемы и насколько быстро они фиксятся.
CybernatiC
Это постгрес
Супабейз это как альтернатива файрбейсу и там есть js client
Alex
Супабейз это как альтернатива файрбейсу и там есть js client
Супабейз класная штука, реалтайм еще и селф хостед, но она использует постгрес как субд
Alex
А с фаербейзом я "хлебнул" больше не хочется)
polioan
Я относительно новичок, но мне действительно кажется это странным
polioan
Почему последняя нода выдает "SyntaxError: await is only valid in async functions and the top level bodies of modules"
polioan
При использовании top level await
maxim
При использовании top level await
Может надо в package указать type: module или как там?
tsarapoid
Почему последняя нода выдает "SyntaxError: await is only valid in async functions and the top level bodies of modules"
https://stackoverflow.com/questions/71912614/await-is-only-valid-in-async-functions-and-the-top-level-bodies-of-modules-as-it
Lexxizz
Кто-нибудь реализовывал seamless SSO? https://docs.microsoft.com/en-us/azure/active-directory/hybrid/how-to-connect-sso
Lexxizz
в браузере логинит без вопросов(не спрашивает юзернейм и пароль)
Lexxizz
а если в electron приложении- то спрашивает и то и то
Lexxizz
очень похоже, что нет доступа к данным системы
David
Привет. Есть ли кто нибудь, кто использует React Router в History Mode?
David
У меня проблема. Мне нужно использовать библиотеку типа Scrollspy, но она привязывается к ID элемента и добавляет хэши в URL. И когда роутер - HashRouter - они конфликтуют.
Ratatata
всем привет, вопрос по поводу self hosted fonts(electron + mui). по сути я просто скачиваю roboto с https://www.fontsquirrel.com/fonts/roboto и помещаю в public/fonts. Создаю файл global.css где указываю font faces и импортирую этот файл в _app.tsx, верно?
Ratatata
reactjs
Ratatata
просто на форумах советуют кидать шрифты в папку public/fonts
Григорий
просто на форумах советуют кидать шрифты в папку public/fonts
ну во первых желательно писать ответ на сообщение как ответ, иначе можно ждать следующего ответа до вечера а во вторых, еще к сожалению в electron+react не ставил шрифты, но по стандарту шрифты живут в assets в папке src, там же где и картинки
Григорий
WA
Привет, хочу сделать exe файл electron при запуске которого выполняется тест WebdriverIO и формируется Allure-report c выводом результата, в данный момент я делаю тест командой npm test, потом формирую репорт командой allure generate --clean allure-results и далее делаю exe файл командой electron builder --win, возможно ли сделать то что я хочу или нет? Если возможно пожалуйста подскажите как
ALΣX
Привет. Вопрос с отображением иконок в AppImage. В трее проблем нет, показывает все хорошо. Но вот на панели инструментов или в уведомлениях просто пустота. Я так понял, что в данном случае проблема именно в путях к изображению (в коде указаны относительные пути и все работает отлично на macOS и Windows), но вот на Linux (не знаю, если это только проблема AppImage) работать будет только с абсолютными путями. Т.е. если я загружу изображение иконки куда-то локально и пропишу абсолютный путь к ней, то она будет отображаться без проблем. Кто-то стыкался с подобным?
ALΣX
вот 2 примера, в 1 с использованием path не работает, во втором с абсолютным путем - все отлично
ALΣX
🅰️nimeCoder
Я фиксил это в одном приложении https://github.com/pavloniym/anilibrix/pull/34 Подробнее вот тут https://github.com/pavloniym/anilibrix/pull/34#pullrequestreview-972834224 Коммит: https://github.com/pavloniym/anilibrix/pull/34/commits/df99719abcf36cac02c4ad5de5ea8999c0723eb5
🅰️nimeCoder
У нас там используется electron-builder, но AppImage как то типа так пакуется, что картинки для панели задач нету, и есть два способа ее добавить - прописать в icon или создать .desktop файл
Григорий
какой-то недоделанный электрон, работал на версии 19.0.7, все прекрасно работало, поставил 20.0.0, там не работает открытие внешних ссылок вернул обратно на 19, все заработало узнал инфу как запустить ссылку через браузер, поставил снова 20 версию, но естсественно так просто ничего не заработает, вернул обратно на 19 конечная, теперь пишет то же сообщение что и на 20 версии, это пздц
Григорий
думаю ладно почищу кеш, нифига не работает
🅰️nimeCoder
Нужно чаще читать breaking changes у реализов
🅰️nimeCoder
А вообще мб и не стоит юзать ласт, за последней версией вы все равно не угонитесь, у электрона очень быстрый EOL