Ğecko: Nouveau client de paiements Ḡ1 sur mobile en cours de développement (Dart/Flutter)

@Candidesk8 Cette merge request sur le dépot de la lib flutter audioplayer que j’utiliser devrait régler ton soucis d’écran blanc au démarrage (faite ya 8 jours), il faut juste attendre la prochaine version de cette lib (0.18.4) sorte pour que cette MR soit implémenté :wink:

2 Likes

@Candidesk8 tu veux pas me vendre ton fairphone ?

Ou me l’échanger contre un oneplus 3 ?

heu …

c’est pour que j’ai plus à t’embêter avec mes problèmes de « j’arrive pas à faire marcher ton appli sur mon téléphone » ?!?

j’ai du mal à comprendre pour quelle raison tu voudrais me racheter mon tel …

il est pas entièrement libérable de G00gle contrairement au FP2 ou 3 …

Il est lourd pour sa taille,

il n’y a plus de batterie d’origine, faut faire une bidouille avec un autre modèle de batterie …

Je reste somme toute perplexe, mais pas fermé à la discussion :stuck_out_tongue:

1 Like

C’est pour pouvoir debuguer gecko directement dessus en mode debug avec flutter directement.

J’ai posté une annonce gchange :wink:

1 Like

Et si je te le prêtait ? Mieux, si je te le louais !

1 Like

Tu me l’enverrai par la poste ? Tu as un autre téléphone de remplacement ?
Combien de temps tu me le laisserai ?

On continue en MP :wink:

1 Like

Un petit poste pour vous tenir informé des avancés :slight_smile:

Après 2 semaines de pauses bien mérité, après le hackaton axiom intense, j’ai commencé les premiers tests end to end (dits test d’intégrations en Flutter) avec Flutter Driver.
Cela me semblait prioritaire, car avant d’ajouter de nouvelles fonctions et d’implémenter les nouvelles UX toutes fraiches de la maquette de Boris, je ne veux plus voir aucun bugs connus dans les prochains builds, et ces tests vont dans ce sens, évitant au maximum les régressions :slight_smile:

C’est pas hyper reposant d’observer ce robot jouer à l’utilisateur qui tape partout à notre place ? :slight_smile:

Je vais TOUT tester ainsi.

Une fois fait, d’ici quelques jours, j’attaque le scan du réseau au démarrage pour la sélection des noeuds de la fenêtre courante (non forké).
J’ai déjà tout en tête, grâce aux discutions éclairés que j’ai eu avec @elois ces derniers jours.

Après ça, tests unitaires en vues pour tester ce scan réseau parallélisé, puis enfin, finalisation de la maquette Figma avec Boris, Chopp et Attilax, pour enfin intégrer l’UX définitive avant la sortie de la beta prévu le 21 juin.

Beaucoup de fonctionnalités métier manquantes indispensdables doivent être implémentés côté models/provider, mais je souhaite implémenter l’UI/UX first pour pouvoir implémenter les nouvelles fonctions plus efficacement (et toutes testés aux fur et à mesure bien entendu désormais).

La vidéo de présentation tech du projet Gecko faite pendant le hackaton sortira dans quelques jours.

6 Likes

C’est pas toi qui me disait que tu n’étais pas développeur ? Petit canaillou ! Ben faut admettre l’évidence, tu es développeur maintenant. Être c’est faire !

Je pense que tu es le premier à implémenter les tests d’intégration et l’aspect p2p côté client mobile, se qui promet une application fiable.

Incroyable ce que tu fais actuellement ! Keep up the good job !

4 Likes

Moi j’ai toujours su que c’était un magicien, Poka…

1 Like

Merci ça me touche mais arrêter je vais rougir là ^^
Et encore une fois, c’est un travail d’équipe, sans elois, boris, chopp, l’aide d’hugo tuxmain attilax ect, j’en serais pas là du tout.

Oui je me suis mis en tête de devenir dev Dart/Flutter depuis début décembre en fait, et c’est une fois de plus la monnaie libre qui ma motivé à le faire !

Comme je le disais a elois, j’étais un peu frustré depuis plusieurs années de ne pas me considérer comme dev. Plein de projets, plein de choses à faire, et le sentiment d’impuissance quand à les réaliser.
Maintenant ça va peut être changer un peu.

Bon quoi qu’il en soit il me reste beaucoup de taf sur gecko avant qu’il soit livrable, mais je suis enthousiaste.

5 Likes

Magnifique !

1 Like

La roadmap du projet Gecko est désormais disponible ici:

https://wiki.resilience-territoire.ademe.fr/wiki/Ğecko

Merci @HugoTrentesaux pour ce travail brillant.

7 Likes

Effectivement, parfaitement bien construit et rédigé, bravo ! :white_check_mark: :blush:

1 Like

Y aura-t-il un mode offline pour permettre de réaliser des transactions entre des comptes qui fournissent leur clefs publiques et privée au travers de qrcode?

2 Likes

Salut !

J’ai testé sur un Nexus5 avec /e/, ça marche.
J’ai essayé avec les QRCodes générés par ViGnette, ça ne marche pas à cause du checksum. ViGnette implémente le checksum tel que défini par Tortue. Gchange implémente également ce checksum.

Gecko utilise la nouvelle spec de checksum.

Est-il prévu que Gecko accepte en input les clef pub avec la première specification de checksum ?

Oui, ce serait une super fonctionnalité. On l’a évoquée dans le dossier sans savoir si on arrivera à la formaliser pour la v1.0 mais c’est sûr qu’on veut aller dans cette direction.

1 Like

Le principe du mode OFFLINE peut se caler sur comment le « J-e-u » se joue avec leurs carnets papier.

Avec un QRCode public et un QRCode privé (sécurisé par code PIN).
Gecko pourrait remplir ses « portefeuilles secondaires » pour initialiser les compteurs du mode Offline (ou se mettre en mode monnaie juste solde à 0 (qui ne peut être négatif) qui impose de commencer par une vente)…

Le vendeur indique le montant et le produit (commentaire) puis fait scanner le QRPublic de destination, ensuite il scan le QRPrivé de la source du payement qui demande de taper le PIN à son propriétaire pour découvir la PrivKey, et écrire dans Gecko (chiffré, signé) la « promesse » de transaction du montant (et la clef privée pour le faire). La clef publique c’est le carnet, la clef privé la signature (et la clef d’accès au wallet conservée le temps de l’appliquer)

Une fois reconnecté, les « lignes du livre » sont effacées quand la synchro se fait sur la blockchain (en case de triche l’appli se bloque)… On peut indiquer depuis combien de temps la synchro a été réalisée pour garantir une meilleure confiance sur la fraîcheur de la data :wink:

Cela force le transfert, partage de clef privée pendant toute la durée du mode OFFLINE. Il faudra penser à bien protéger la data gardée par Gecko avant sont effacement… Et comparer le hash du code des App qui discutent ensemble pour être sûr qu’on ne file pas sa PrivKey à une App bidouillée…

1 Like

Comme vous le savez, avec tous les changements actuels, la roadmap du projet Gecko s’en retrouve toute chamboulé aussi.

Les changements d’API ne devraient pas êtres très difficiles, d’autant plus si @tuxmain et @elois se chargent de faire les bindings Rust nécessaires :slight_smile:

Mais il va y avoir une logique métier forcément différente avec Substrate, je vais donc prendre le temps de creuser tous les outils avant tout.

Mais la chose en plus, c’est qu’on va devoir maquetter avec Boris et implémenter tous le système de certification en plus, dès le début…

Sauf si d’autres clients comme Cesium² sortent en même temps grâce à @kimamila , peut être qu’on ne serait pas obligé d’implémenter la toile de confiance dès le début.

C’est pour ça que j’ai besoin de savoir qui est de la partie pour bosser sur les clients en ce moment (surtout sur mobile), pour creuser RPC, substrate, ect …

Moi en tout cas, je ne vais pas pouvoir reprendre Gecko avant fin Aout, mais d’ici là, je pense qu’on aura une POC substrate sur laquel bosser, tester, et découvrir tout l’environnement :slight_smile:

Bref, je republierai une roadmap à jour quand tout ceci sera mature dans mon esprit.


D’autant que, Elois proposera bientôt, quand il sera prêt, des nouveauté pour la toile de confiance, qui devront être débattus ect … Donc ne commencez pas à maquetter cette partie dès maintenant, car ces éventuels changement pour changer des choses non négligeable côté UX …

On à déjà une POC testable sur laquelle bosser, @kimamila l’a déjà testée :blush: Je suppose que tu voulais parler d’une première monnaie de test déjà lancée, oui j’aimerais qu’on en lance une dès que possible, j’espère d’ici quelques semaines :slight_smile:

1 Like

Génial !!

Oui, comme on en a déjà parlé, le plus simple pour Gecko est de continuer sur l’archi binding rust étant donné que tout existe en Rust, et le dépôt Dart n’est plus vraiment à jour: News about this repository · Issue #5 · Pocket4D/Polkadot-Dart · GitHub

Je vais donc attendre les binding avant de toucher à Gecko, obligé. Par contre, si il y a des changements d’UX à prévoir, on peut les commencer dès maintenant.