Skip to content

Update webui#116

Merged
cedelavergne-ledger merged 4 commits into
developfrom
cev/update_webui
Jun 18, 2026
Merged

Update webui#116
cedelavergne-ledger merged 4 commits into
developfrom
cev/update_webui

Conversation

@cedelavergne-ledger

Copy link
Copy Markdown
Contributor

Description

Migrate WebUI to Vite + react 18 + lumen

@cedelavergne-ledger cedelavergne-ledger changed the title Cev/update webui Update webui Jun 18, 2026
@codecov-commenter

codecov-commenter commented Jun 18, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 33.33333% with 4 lines in your changes missing coverage. Please review.
✅ Project coverage is 73.96%. Comparing base (2c64a14) to head (f52d5ea).

Files with missing lines Patch % Lines
src/password.c 33.33% 4 Missing ⚠️
Additional details and impacted files
@@           Coverage Diff            @@
##           develop     #116   +/-   ##
========================================
  Coverage    73.96%   73.96%           
========================================
  Files            7        7           
  Lines          361      361           
  Branches        41       41           
========================================
  Hits           267      267           
  Misses          88       88           
  Partials         6        6           
Flag Coverage Δ
unittests 73.96% <33.33%> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Replace the legacy Create-React-App / React 17 / yarn / Node 16 stack with
the reference stack used by app-openpgp:

- Vite 8 + React 18 + pnpm 11 + Node 22
- Ledger lumen design system (@ledgerhq/lumen-ui-react + lumen-design-core,
  Tailwind 3 with ledgerLivePreset), following the bundled ai-rules
- Vitest for the pure-logic units (charset mapping, metadata round-trip)
- vite-plugin-node-polyfills for the Buffer API used by the APDU layer

App rewritten with lumen (ThemeProvider/Banner/Tag/Button/...): Connect /
Backup / Restore / Disconnect flow, in-app notification banners (replacing
react-toastify) and an FAQ rebuilt with lumen tokens + react-markdown.

Transport stays WebUSB (the Passwords app uses the generic USB interface).
PasswordsManager keeps its APDU logic; disconnect() now releases the device
and an onDisconnect callback surfaces physical unplugs.

Icons reuse the device app glyph (glyphs/app_passwords_64px.gif): a white
open-padlock for the in-page logo (on the dark canvas) and a white padlock on
a black rounded tile for the favicon / PWA icons (visible on a white tab).
The manifest previously pointed at a non-existent favicon.svg; fixed.

Deploy workflow updated to pnpm + Node 22 + dist/; CNAME passwords.ledger.com
preserved (Vite base "/"). Also refresh the stale support link in the FAQ and
exclude pnpm-lock.yaml from codespell.
…f peaceiris

Switch the Web UI deployment to GitHub's native Pages flow.
PRs still build for validation; only pushes / manual runs deploy.

The passwords.ledger.com custom domain is preserved (kept in the repo Pages
settings and reinforced by dist/CNAME in the artifact).
@github-actions

Copy link
Copy Markdown
Contributor

Code coverage report

Code Coverage

Per-file coverage
Package Line Rate Branch Rate Health
src 41% 37%
Summary 41% (69 / 168) 37% (26 / 71)

Comment thread src/ctr_drbg.c Dismissed
Comment thread src/ctr_drbg.c Dismissed
Comment thread src/ctr_drbg.c Dismissed
Comment thread src/ctr_drbg.c Dismissed
@cedelavergne-ledger
cedelavergne-ledger merged commit 41952e1 into develop Jun 18, 2026
71 checks passed
@cedelavergne-ledger
cedelavergne-ledger deleted the cev/update_webui branch June 18, 2026 06:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants