harbour-maree

Previsioni di marea universali per Sailfish OS — client nativo Silica con motore armonico locale (nessuna API di maree: calcolo offline, per sempre).

Funzionalità

  • Motore armonico a 7 costituenti (M2, S2, N2, K1, O1, P1, K2): h(t) = Z₀ + Σ Aᵢ·cos(ωᵢt + φᵢ), calcolato localmente
  • 16 porti noti con costanti realistiche (Italia + Londra, New York, San Francisco, Tokyo, Sydney, Honolulu)
  • Ricerca libera delle città: geocoding OpenStreetMap (Nominatim) con fallback su dataset locale offline; le costanti arrivano dal porto noto entro 222 km, altrimenti da una stima sintetica da lat/lon (etichettata)
  • Card "porto più vicino" in evidenza quando si apre una città cercata
  • Grafico 24/48/72 h con alte/basse maree marcate e orari, tap per altezza in un punto
  • Fase lunare e alba/tramonto calcolati
  • Italiano e inglese (selettore lingua nelle impostazioni, applicata al riavvio; catalogo .qm nel data dir dell'app)
  • Preferenze salvate: lingua, porto preferito (aperto all'avvio e mostrato sulla cover), unità (m/ft), intervallo del grafico

Build

Serve il Sailfish SDK.

sfdk target install SailfishOS-5.0.0.62-aarch64   # o il target del dispositivo
sfdk target use SailfishOS-5.0.0.62-aarch64
sfdk build            # produce l'RPM in RPMS/
sfdk deploy           # installa sul dispositivo connesso

Target consigliati: aarch64 (Jolla Phone 2026, Xperia 10 II/III), armv7hl (Xperia X, Jolla C), x86_64 (emulatore).

Struttura

src/                C++: main.cpp (lingua + translator), settings
                    (QSettings: language, preferredPort, unit, days)
qml/js/tides.js     motore armonico (ES5 puro, compatibile Qt 5.6):
                    costanti, predizione, estremi, stima sintetica,
                    geocoding locale, luna, sole
qml/pages/          MainPage (porti + ricerca libera), DetailPage
                    (grafico canvas, eventi, card porto vicino, astro),
                    SettingsPage (lingua, unità, intervallo, porto)
qml/cover/          cover con porto preferito e prossima marea
translations/       harbour-maree.ts (EN sorgente), harbour-maree_it.ts
icons/              icone 86/108/128/172 (make_icons.py, stile harbour)
rpm/                spec e desktop file (SailJail: Internet)

Configurazione

File: ~/.config/harbour/maree/maree.conf (QSettings, zona persistente della sandbox SailJail). Chiavi: language (system/en/it), preferredPort, unit (m/ft), days (1/2/3).

Limiti noti

  • Le costanti dei porti sono sintetiche ma realistiche; la stima da lat/lon non distingue bacini chiusi (Mediterraneo) da oceano aperto.
  • Precisione di un vero modello globale (FES2014/TPXO9): ~10–20 cm in oceano aperto; il motore è predisposto a ricevere le costanti da griglia.
  • Non per navigazione.
  • La lingua si applica al riavvio dell'app.

Licenza

MIT

S
Description
Universal tide predictions for Sailfish OS — harmonic model, free city search, EN/IT
Readme
402 KiB
Languages
JavaScript 83%
QML 13.4%
C++ 2.4%
Python 0.8%
QMake 0.4%