Files
IdP/tauri_app/README.md
2026-07-02 16:19:06 +03:00

2.4 KiB
Raw Blame History

Lendry ID Super App

Tauri v2 приложение для macOS, iOS и Android. Использует тот же React/Tailwind/shadcn UI стиль, что и apps/frontend, через Vite alias:

'@': '../apps/frontend'

Запуск

npm install
npm --workspace @lendry/tauri-app run tauri:dev

Web build

npm --workspace @lendry/tauri-app run build

Mobile bootstrap

npm --workspace @lendry/tauri-app run android:init
npm --workspace @lendry/tauri-app run ios:init

После генерации проверьте src-tauri/mobile-permissions.md и добавьте camera permissions, если CLI не внёс их автоматически.

Docker APK build

Сборка подписанного release APK через install.sh (Docker + Android SDK + release keystore):

./install.sh --build-apk

Или пункт 12 в интерактивном меню ./install.sh.

Готовый файл:

apps/frontend/public/downloads/lendry-id.apk

Keystore и пароли создаются автоматически при первой сборке и сохраняются в tauri_app/.secrets/ (не коммитятся в git).

После этого кнопка «Скачать приложение» на странице входа скачивает APK через:

/download/android

Собрать только через Docker-образ (без install.sh):

docker build -f tauri_app/Dockerfile.apk -t lendry-id-tauri-apk-builder .
mkdir -p apps/frontend/public/downloads tauri_app/.secrets
docker run --rm \
  -v "$(pwd)/apps/frontend/public/downloads:/out" \
  -v "$(pwd)/tauri_app/.secrets:/workspace/tauri_app/.secrets" \
  -e PUBLIC_API_URL=https://sso.example.ru/idp-api \
  -e PUBLIC_FRONTEND_URL=https://sso.example.ru \
  lendry-id-tauri-apk-builder

Переменные окружения

VITE_API_URL=https://sso.example.ru/idp-api
VITE_FRONTEND_URL=https://sso.example.ru

Реализованные модули

  • Chats: wrapper существующего web UI /family, чтобы не дублировать messenger.
  • Security: QR scanner + approve /auth/advanced/qr/session/:sessionId/approve, список сессий и revoke.
  • Authenticator: offline TOTP RFC 6238 с хранением seeds в tauri-plugin-stronghold.