Ğecko web

Non je suis désolé mais leur page officiel ne présente pas d’install Debian/Ubuntu: Downloads | Iridium Browser

Et les instructions sur le wiki Ubuntu ne fonctionne pas chez moi (20.04.1-Ubuntu), le packet n’existe pas: iridium_browser [Wiki ubuntu-fr]


Ok mais seulement parceque tu as décoché la fameuse case sur les cookies.
Sur Iridium vue tes logs ça semble le même problème, sera résolu bientôt.

Non je voulais dire que chez moi iridium installe gecko, puis l’ouvre. Je sais pas trop à quoi ça rime, à côté de la barre d’adresses il y a une possibilité d’installer les programmes qui font tourner les sites web, même ce forum.

Chez archlinux ils ont modifié un .rpm pour pouvoir installer iridium…

Sur iridium il y a un délai avec écran blanc, puis ça marche… en fait j’étais trop impatient!

Ah oui, ça c’est un autre “bug”, c’est juste que le fichier polkadot.js que j’ai généré via le webpack du dépôt polkawallet_sdk pèse 3.2Mo… Une issue est en cours pour utiliser rollup à la place de webpack, pour baisser le poids à quelques centaines de ko à peine.

Ce fichier est de toute façon mis en cache, si le navigateur l’accepte bien sûr…


Il restera bien sûr un léger chargement au premier lancement, c’est dû à canvaskit qu’utilise Flutter web.

Flutter propose 2 formes de build pour web:

  • canvaskit: Ca permet de packager tout un tas de choses et d’éléments graphiques utilisable par Flutter, ce qui permet d’avoir un rendu tout à fait identique à un build mobile ou desktop, et des animations et mécaniques graphiques beaucoup plus performantes.
    L’inconvénient, c’est que ça nécessite de télécharger l’ensemble du canvas au premier chargement de l’app dans le navigateur, qui ensuite est mis en cache. Cela pèse quelques centaines de ko il me semble, mais peut être que ça dépasse le Mo il faudrait vérifier.
  • html: Transpile directement les widgets Flutter en html/css. Le rendu est généralement moins bon, il peut y avoir des choses un peu moches parfois, mais l’avantage est qu’il n’y a pas le canvas à télécharger, c’est beaucoup plus léger et rapide.

Le build par défaut pour flutter web (ce qui est le cas actuellement pour gecko web) c’est:

  • canvaskit pour web sur desktop
  • html pour web sur mobile (besoin d’optimiser les ressources réseaux)

Mais on peut choisir de build uniquement l’un ou l’autre pour tous les appareils.
De toute façon, je n’ai pas encore vraiment optimiser gecko web pour des tailles d’écrans mobiles (en terme de responsive), et je ne comptes pas le faire, car je vais simplement afficher à l’utilisateur de gecko web sur mobile une page pour installer gecko mobile directement.

Je prends le temps d’expliquer un peu ça car c’est important pour la suite de Ğecko web.

1 Like

Ce n’est pas parce qu’on est sur desktop qu’on a nécessairement une bonne connexion, on peut être en ADSL bas débit ou sans box et partager la connexion de son téléphone, cas répandus dans les campagnes.

Il me semble indispensable de proposer en production une version la plus légère possible, et si elle implique nécessairement une UI moins belle, alors il faut déployer les deux variantes sur 2 sites web différents, avec idéalement une popup sur la version plus gourmande indiquant quelque chose du genre « Si votre connexion est lente, nous vous recommandons d’utiliser la [version allégée de gecko web] ».

Oui on peut faire ça, je mettrais le rendu html dans gecko.axiom-team.fr/light/ pour voir déjà comment ça se passe.

Mais de toute façon ce n’est pas le plus lourd actuellement, de loins c’est le polkadot.js mode webpack.
Il faut qu’on finisse de le faire fonctionner avec rollup sur flutter.

De plus on pourra ajouter un écran de chargement un peu sympa au lieu d’une page blanche…

1 Like

Je viens de lancer https://gecko-light.axiom-team.fr, il s’agit du rendu html.

En comparant avec canvakit (https://gecko.axiom-team.fr), c’est vrai qu’il n’y a pas beaucoup de changement visuel hormis les polices de caractères.
Je remarque tout de même une latence entre chaque actions (cliques sur les profiles, la recherche, ect …) plus importante, c’est beaucoup plus fluide en canvakit.

Vous pouvez comparer 2 onglets côte à côte pour voir.

Est-on censé pouvoir se connecter sur ce site web ?
Ou c’est juste pour voir les historiques ?

Pour résumer le but du projet :

  1. La version actuelle n’est qu’en affichage passif. Les interfaces pour réaliser des transactions (virements, certifications…) seront implémentées mais doivent être branchées sur quelque chose.
  2. L’idée est de développer une seule extension navigateur nommée Ğ1-compagnion ou Ğ1-connect ou quelque chose comme ça qui permette à n’importe quel site (Ğecko web mais peut-être aussi Cesium v2, Ğchange v2, Airbnjune…) d’accéder à toutes les fonctionnalités mais en conservant une authentification sécurisée via l’extension.
  3. Cette extension pourra optionnellement se connecter à un lightnode local pour plus de sécurité (côté “multi-client” qui serait une appli desktop ou une autre extension ou même intégré à Ğ1-companion (à voir…).

Donc Ğecko web n’est pas encore utilisable mais devrait le devenir prochainement. Poka parle de Manu et Elois, mais je pense que 1000i100 pourra également apporter une contribution importante quand on aura assuré le financement nécessaire pour le rémunérer deux jours par semaine. Je m’occuperai de ce financement à la rentrée en septembre quand je m’y mettrai à plein temps après mon mois de vacances.

6 Likes

Gecko web a été mis à jours, notamment avec les soldes de chaque compte affichant désormais le solde transférable, comme Gecko mobile (free + unclaimedUds).

Désormais le numéro de version est affiché en bas à gauche de l’écran (0.0.0+2)

Pensez à recharger votre cache.

1 Like

Bonjour à tous (et surtout @poka),

Où en est ce projet ?
J’ai vu que tu as apporté quelques modifs récemment…
Est-ce une version vouée à disparaître ou à être développée ?
Si “à être développée”, je suis intéressé pour y participer :smiley:

3 Likes

Salut @flodef !

Disons que je n’ai pas de roadmap précise pour gecko web, mais toute contribution sera la bienvenue, je peux répondre à toutes tes questions avec plaisir, et t’aider à t’orienter, refacto le nécessaire, ect …

Tu as déjà fait du Flutter ?
Peux-être serais-tu aussi intéressé pour contribuer au v2s-smith-monitoring ? Un outil flutter web développé par @guenoel, en apprentissage, destiné à faciliter la vie des forgerons sur la ĞDev ?

A la réflexion, une fois que Guenoel aura bien avancé sur cet outil, qu’il se sera totalement emparé du code à sa manière, et avec RIverpod en statemanager, il sera probablement pertinent de fusionner gecko web et cet outil, avec simplement un onglet smiths dans gecko web, à voir.

Pour le moment, nous discutons principalement via ce canal chat: https://matrix.to/#/#flutter:yuno.librezo.fr
On peut discuter de tous ça, ici ou là, avec grand plaisir :pray:

1 Like

Merci pour ton accueil ainsi que ta réponse rapide et complète.
Jamais fais de Flutter… donc je suis en train de regarder tout le code que tu as déjà écrit et essaye de comprendre comment ça fonctionne. Je me demande si Dart est le plus pertinent pour une web app ?
Je vais regarder en paralèlle le projet de @guenoel , pour voir si je peux contribuer, même si je suis plutôt partant pour le projet Gecko web.
J’ai aussi rejoint le salon sur Flutter, je consulte l’historique pour comprendre un peu.

1 Like

Honnêtement, je vais te répondre non, Dart n’est pas le plus pertinent pour développer une web app.
D’autant plus qu’ici, j’ai dû créer une interface dart/JS car j’utilise la lib polkadot.js directement.

Cela rajoute donc une couche d’abstraction, qu’on aurait tout simplement pas besoin avec une app pure web en typescript, avec des technos modernes comme nuxt/vue3 par exemple.

Cela dit, je compte bien développer une lib Dart Durt 2.0 qui soit compatible mobile/web/desktop pour Duniter v2s :wink:

Je suis à l’aise avec Dart/Flutter désormais, je compte donc l’utiliser pour tout ce que je souhaite développer, car je trouve ce SDK simple à prendre en main, facilitant le vie pour les développeurs, tout en étant très performant car transpilé et compilé vers les langages natifs pour chaque cible.

Aussi, je compte bien trouver un moyen élégant à terme pour fusionner les dépôt gecko mobile et gecko web évidemment, mais je laisse encore le temps de la réflexion pour ça pour ne pas faire n’importe quoi.

Pas sûr que tu comprenne grand chose, plusieurs discutions s’y croisent, autant poser tes questions directement :wink:

2 Likes

Du coup, étant compétent en Typescript, est-ce que ce serait intéressant d’avoir une web app avec une techno moderne, ou plutôt améliorer ce qui existe déjà avec Dart ?
Super, je regarde tout ça et si j’ai des questions, je fais signe :smiley:
PS : vaut-il mieux que je pose mes questions ici ou directement dans le canal chat ?

1 Like

Non finalement tu peux les poser ici :slight_smile:

Honnêtement je ne saurais te dire, moi j’aurais tendance à encourager toute contribution à Gecko web, car je pourrais aider, et ça irait dans le sens d’seul d’une seul base de code pour un client natif web/mobile.

Mais si tu es à l’aide avec TS, alors peut être que tu serais d’autant plus utile à m’aider de finir de typer l’indexer v2s et à y contribuer avec moi, car Manu n’a pas le temps en ce moment, et cet indexer est une pierre angulaire pour l’ensemble des clients v2s. C’est probablement la contribution la plus utile actuellement

Il y a aussi Ğ1companion, l’extension navigateur qui sera compagnon de gecko web pour signer et envoyer les extrinsics à duniter, et qui a probablement aussi vocation à devenir un client v2s à part entière.

Donc tout dépend de tes envies :wink:

En tout cas, je me sens un peu seul à coder en ce moment, motivation difficile, donc je suis preneur pour un binome sur quoi que ce soit, mais surtout sur l’indexer v2s car il s’agit de technos que je ne maîtrise pas du tout ^^

1 Like

Ah ouuuuuuuui, ça me fait carrément super envie d’avancer ensemble sur l’indexer !! :rocket:
Y a-t-il une roadmap ? Quoiqu’il en soit, je vais d’abord commencer par l’installer.
Effectivement, tout seul c’est un peu démotivant. D’autant plus que ça fait un moment que tu fournis un effort très conséquent !

Sinon, je pensais à Gecko web en TS / Next.js car je suis en ce moment sur un système de paiement / wallet similaire à Gecko web (donc le portage me semble plutôt simple). Mais effectivement, ça peut attendre…
Pour G1companion, quand tu parles d’extension, cela veut dire que c’est juste compatible avec une version desktop ?

2 Likes

Génial :slight_smile:

Tu connais Nuxt.js ? C’est ce que ManuTopik utilise pour ses sites web et pour g1companion.

Non il s’agit d’une extension navigateur, installable comme l’extension Cesium par exemble si tu connais.
Sauf que le rôle de celle-ci se rapproche plus de celui de l’extension polkadot.js, que je t’invite à installer et faire le tour si tu veux commencer à contribuer à v2s :wink:

Cette extension est actuellement utilisable avec ce site web, pour utiliser la ĞDev: Polkadot/Substrate Portal

Cette extension sera centrale dans l’écosystème technique v2s, car tous les clients web (n’importe quelle page web en fait) devra passer par elle pour exécuter des transactions, certifier, et effectuer toute action en blockchain, par mesure de sécurité.

Nuxt.js est basé sur Next.js donc j’imagine que je vais vite comprendre comment ça fonctionne :wink:

Ooops, je me suis incorrectement exprimé. Je voulais dire que G1 companion, en tant qu’extension, est donc indisponible sur mobile.

Je regarde ça …

1 Like

Oui tout à fait, c’est “juste” une extension web.

… après j’imagine que Manu te dira que si, tu peux l’encapsuler dans un cardova ou je ne sais quel packager web pour android et ios, mais ce ne sera jamais aussi performant qu’une app Flutter, et surtout il faudra adapter l’UX pour ces tailles d’écran :wink:

1 Like

2 posts were merged into an existing topic: Ğecko talks / user support