Приложение создано по мотивам статьи на Хабре: Разрабатываем десктопное приложение для заметок с помощью Tauri (React + Rust) и несколько доработано:
- Приложение не требует настройки клавиш запуска на ярлыке, а выполняет это в коде программы.
- При запуске сразу появляется в трее. У уконки в трее реализовано меню показать/выход.
- При повторном нажатии на комбинацию клавиш или клавиши
Escприложение не закрывается, как в оригинале. - При потери фокуса, например просто выполнив клик ЛКМ на другом приложении или рабочем столе, или при нажатии клавиши
Esc, приложение прячется в трей. - Сохранение содержимого окна при потери фокуса, например приложение можно времнно
спрятатьи потом продолжить что уже заводили. - Смена иконки приложения.
Поскольку приложение при запуске сразу помещается в трэй и на панели задач не видно, - идеально для авто-запуска.
Показ окна ввода выполняется нажатием комбинации клавиш Ctrl + Shift + Q.
- Для сохранения введенного текста просто нажимаем
Enter - Для того что-бы спрятать окно нажимаем клавишу
Esc, либо просто переключаясь на любое другое приложение по ЛКМ.
В программе используется проект Tauri, который и позволяет без особых усилий связать бэкенд на Rus с фронтендом на Typescript. Напрямую сайт к сожалению не доступен, вы знаете что делать... Как минимум можно посетить страничку проекта на GitHub:
Так-же в проекте используется Vite для сборки приложения и поддержки hot reload - сам отслеживает изменения и пересобирает DEV проект налету.
Соответственно требования для сборки все есть тут
Коротко для Windows:
- Microsoft C++ Build Tools
- Установленный Node.js
- Установленный yarn
- WebView2 - уже установлен в Windows 10 и выше. Но можно взять тут Evergreen Bootstrapper и установить.
- VBSCRIPT (for MSI installers) обычно уже установлен, но если получаем ошибку
failed to run light.exeто:- Open Settings → Apps → Optional features → More Windows features
- Locate VBSCRIPT in the list and ensure it’s checked
- Click Next and restart your computer if prompted
- Собственно сам Rust либо так через winget:
winget install --id Rustlang.Rustup.- Rust поддерживает разные типы toolchain, обычно нам достаточно выполнить
rustup default stable-msvc
- Rust поддерживает разные типы toolchain, обычно нам достаточно выполнить
====
- Запуск для разработки:
yarn tauri dev
- Создание релиза ( сборка сразу создает установщик в виде
exeиmsi):
yarn tauri build