Retour à la doc Guide5 min de lecture

Cette page a été traduite automatiquement et peut contenir des erreurs. Lire l'original en anglais

Mode hors ligne

Gérez votre budget en avion ou en escapade à la campagne. Comprenez comment Budgero met les modifications en file d'attente, fusionne les modifications concurrentes et maintient la cohérence des registres une fois reconnecté.

Dans ce guide

  • Comment les modifications hors ligne sont mises en file d'attente localement et rejouées lors de la reconnexion.
  • Ce qui se passe lorsque deux personnes modifient le même budget hors ligne.
  • Les quelques éléments qui nécessitent réellement une connexion — et leurs solutions de contournement.

Budgero est une application d'abord hors ligne, et non une application en ligne avec un cache. L'intégralité du budget réside sur votre appareil, chaque fonctionnalité fonctionne sans connexion, et la synchronisation est quelque chose qui arrive à vos modifications — et non quelque chose que vos modifications attendent.

Comment ça fonctionne

Budgero fonctionne comme une Progressive Web App avec votre budget stocké localement (dans l'IndexedDB de votre navigateur). Chaque action — ajouter une transaction, déplacer de l'argent, modifier une catégorie — s'applique immédiatement à la base de données locale. C'est vrai que vous soyez en ligne ou non ; la seule différence que la connexion fait est ce qui se passe ensuite :

  • En ligne : chaque modification est chiffrée et envoyée au serveur immédiatement, où d'autres appareils la récupèrent.
  • Hors ligne : les modifications s'accumulent dans une file de mutations chiffrées locale. Lorsque la connexion revient, la file est rejouée vers le serveur dans l'ordre, et vos autres appareils reçoivent les modifications comme si elles avaient été effectuées en direct.

Il n'y a pas de « mode hors ligne » à activer, pas de dégradation en lecture seule, et pas de limite sur ce que vous pouvez faire en étant déconnecté. Les transactions d'un voyage de deux semaines se synchronisent de la même manière que celles de deux minutes.

À quoi ressemble la synchronisation

La synchronisation est conçue pour être ennuyeuse. Les modifications sont dédupliquées par des identifiants uniques — ainsi une connexion instable qui relance une synchronisation ne peut pas créer de transactions en double — et appliquées dans un ordre déterministe. Périodiquement, Budgero envoie également un instantané de toute la base de données chiffrée au serveur, ce qui évite aux nouveaux appareils de rejouer des années d'historique pour se mettre à jour.

Tout cela est chiffré de bout en bout avant de quitter votre appareil ; la mise en file d'attente hors ligne ne change rien au modèle de sécurité.

Deux personnes, toutes les deux hors ligne

Le cas intéressant pour les budgets partagés : vous êtes dans un avion en train d'enregistrer un déjeuner, votre partenaire est à la maison en train de réaffecter des catégories, et aucun des deux appareils ne peut voir l'autre.

Lorsque les deux se reconnectent, leurs modifications en attente fusionnent en étant rejouées dans l'ordre :

  • Des éléments différents modifiés — de loin le cas le plus courant — et tout se combine simplement. Vos transactions arrivent, leurs affectations arrivent, personne ne remarque la jointure.
  • Le même élément modifié — vous avez tous les deux changé l'affectation de la même catégorie, par exemple — et la modification la plus récente l'emporte. Il n'y a pas de dialogue de conflit à résoudre ; le budget converge vers un état cohérent, et le calcul des trois chiffres (Affecté, Activité, Disponible) se recalcule à partir de l'historique fusionné.

Un conseil pratique pour les foyers où l'édition hors ligne simultanée est courante : laissez tout le monde enregistrer des transactions librement (elles ne sont jamais en conflit — ce sont des entrées distinctes), et réservez la restructuration — renommer des catégories, réaffecter en masse — aux moments où vous êtes en ligne et synchronisés. C'est moins une question de sécurité des données que d'éviter les surprises mutuelles.

Les quelques choses qui nécessitent une connexion

Tout l'essentiel fonctionne hors ligne. La liste honnête des exceptions :

  • Taux de change récupérés. Les recherches de taux en direct nécessitent le réseau. Si vous tenez un budget multidevise et voyagez, définissez des taux manuels pour les devises que vous utilisez (voir Comptes) — les taux manuels fonctionnent entièrement hors ligne. Lorsqu'aucun taux n'est en cache, Budgero vous propose le taux en cache le plus proche pré-rempli, et par défaut ajuste les conversions aux taux officiels automatiquement lorsque vous vous reconnectez.
  • Invitation de nouveaux membres. La génération et l'utilisation des liens d'invitation sont des opérations en ligne.
  • L'API Push. Côté serveur par nature — bien que les notifications push envoyées pendant que votre appareil est hors ligne attendent simplement dans la file d'attente du serveur jusqu'à votre prochaine synchronisation.

Avant de vous déconnecter délibérément

Vous allez dans un endroit sans connexion ? Deux habitudes rendent la transition fluide :

  1. Ouvrez l'application une fois en ligne sur l'appareil que vous emportez, afin qu'elle conserve le dernier état synchronisé — surtout si quelqu'un d'autre a géré le budget récemment.
  2. Reconnectez cet appareil en premier à votre retour, avant d'effectuer d'importantes réorganisations depuis un autre.

Aucune n'est obligatoire — la fusion gère le désordre — mais elles gardent l'historique ordonné.

Si la synchronisation semble bloquée

Les modifications hors ligne sont durables : elles restent dans la file d'attente locale jusqu'à ce qu'elles soient acquittées par le serveur, et survivent aux redémarrages de l'application et du système. Si les modifications n'apparaissent pas sur un autre appareil, la cause est presque toujours que l'un des deux appareils n'a pas été réellement en ligne avec l'application ouverte. Ouvrez Budgero sur les deux, laissez-leur un instant, et les files d'attente se vident. Vos données ne sont pas en suspens — elles sont chiffrées, locales et en attente.