Skip to content

Portuguese, and one registry of the languages neVus speaks - #37

Merged
5 commits merged into
developfrom
feature/languages
Oct 2, 2026
Merged

5 commits merged into
developfrom
feature/languages

Conversation

@jalmena

@jalmena jalmena commented Oct 2, 2026

Copy link
Copy Markdown
Owner

Languages (1.1.0)

The interface, the emails, the calendar feed, the webhooks, the push greeting and the reports speak Portuguese (European) as well as English and Spanish. The languages are listed once, in nevus.languages; parity tests keep every catalogue complete, and the descriptive-language check runs over the Portuguese texts with its own word list. DEVELOPMENT.md describes how to add the next language.

The Portuguese texts were written by the maintainer and should be read by a native speaker before 1.1.0.

Merged locally as a fast-forward once the checks pass.

@jalmena
jalmena force-pushed the feature/languages branch 3 times, most recently from 932c060 to 4f8381a Compare October 2, 2026 11:46
…h measurement

Each measurement now carries descriptive numbers: from the confirmed outline,
the perimeter, the compactness (1 for a circle) and the ratio of the two
diameters; from the photograph, the colour of the mark and of the skin around
it in CIELAB, their contrast (ΔE) and the spread of the mark's lightness. When
the reference card is in the photo its grey patch, printed to read as #777777,
sets exposure and white balance first, so the values compare between visits;
otherwise they are what the camera saw and say so. Nothing has a threshold or
an interpretation: the numbers describe.

They are stored with the measurement, shown with each measurement of a visit,
plotted and tabulated in the size chart with their own series, exported in the
CSV, printed in the reports in both languages and backfilled for earlier
measurements with `nevus reanalyze --analyzer descriptors`. The model card has
a section for them, with the measured gates and the limits of colour from a
phone camera.

Signed-off-by: Jose David <josedalmena@gmail.com>
Compactness and the colour contrast with the skin appear as series and as
table columns when the measurements carry them, with the note that says what
they describe.

Signed-off-by: Jose David <josedalmena@gmail.com>
With NEVUS_WEB_PUSH on, a person turns notifications on for the device
they hold, under Settings: once a day, after the reminder hour and only
when marks are due, the device shows how many wait for a photo and the
first names. Each message is encrypted on the server for that one device
(RFC 8291) and signed with the server's key pair (VAPID), made on first
use and stored sealed; the browsers' push services relay what they
cannot read. Endpoints are HTTPS only; a device is forgotten after five
failures or when the service reports it gone. A test message checks the
path at once.

The service worker is now a source file of the frontend, built with
Workbox through vite-plugin-pwa (injectManifest): the same caching as
before, plus the push and notification-click handlers. The end-to-end
backends run with the flag on. The deployment guide, the privacy and
security documents and the threat model (addendum for 1.1.0) describe
the channel.

Signed-off-by: Jose David <josedalmena@gmail.com>
The interface, the emails, the calendar feed, the webhooks, the push
greeting and the reports speak Portuguese (European) as well as English
and Spanish. The languages are listed once, in nevus.languages; the API
types, the stored preferences, the reports and the lint read that list,
so adding the next one is the procedure DEVELOPMENT.md now describes.

Two tests keep the catalogues honest: every language has the same keys
and placeholders as English, in the app and in the backend, and the
descriptive-language check runs over the Portuguese texts with its own
word list. The README's status paragraph describes the released state.

Signed-off-by: Jose David <josedalmena@gmail.com>
…he new mark actions

A visit to the clinician is a consulta; what the person records about a
mark is an observação, as Spanish now says vistazo. The Portuguese
catalogue also gains the hint for placing a mark in a selected zone and
the action that moves a mark to the trash.

Signed-off-by: Jose David <josedalmena@gmail.com>
@jalmena
jalmena force-pushed the feature/languages branch from 4f8381a to 9da5207 Compare October 2, 2026 14:37
@jalmena jalmena closed this pull request by merging all changes into develop in 268c850 Oct 2, 2026
@jalmena
jalmena deleted the feature/languages branch October 2, 2026 14:37
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.

1 participant