Comment contribuer à Duniter-UI ?

Que proposerais-tu comme première tâche à un nouveau contributeur qui connaît nodejs/typescript et voudrait contribuer au cœur pour découvrir le concept de blockchain ?

Je lui ai parlé de l’api GraphQL et il est partant. Mais c’est peut-être un peu gros pour un début…

Étant donné que l’API GraphQL se fait de plus en plus désirer, je lui proposerai de commencer par développer celle-ci.

Ce n’est d’ailleurs pas si difficile, on peut commencer par cloner Duniter puis faire une copie du fichier app/modules/dump.ts et de s’en inspirer pour créer une nouvelle commande qui prendrait en paramètre un fichier (de requête GraphQL) et produirait en sortie le résultat.

Si un tel développeur réussissait à faire cela, alors il ne resterait plus qu’à brancher la partie réseau et étoffer l’API ainsi débutée :slight_smile:

Ainsi les développeurs de clients pourraient rapidement se brancher sur un nœud qui proposerait cette API, ce qui serait une 1ère chose appréciée, tandis que le développeur en écrivant cette API devrait nécessairement se pencher sur les données et la façon dont elles sont générées (blockchain).

3 Likes

est-ce que tu aurais un extrait de dump à proposer en exemple?

En ce qui concerne l’API GraphQL, je peux faire des requêtes et mutation. mais je vois penses que c’est surtout le système de souscription qui peut être intéressant. et je penses que ça serait pas mal si quelqu’un se penche dessus je veux bien être mis en relation. pour l’instant j’utilise les même dto que bma, je vois certaines requêtes dans les tickets mais pas une api listant les fonctionnalités clairement.

Si quelqu’un si met contactez moi.

Tiens je regardais justement un article de son concepteur où ce dernier explique les grandes lignes de la migration Vue 2 vers Vue 3, notamment celles destinées à favoriser la contribution au cœur.

C’est très inspirant pour Duniter qui se trouve dans une situation similaire, toutes proportions gardées. On voit notamment que Vue est désormais écrit en TypeScript. :wink:

1 Like

salut, je comptais contribuer quelques trucs à duniter-ui.
par exemple le nombre de DU de la masse monétaire qui sort de son carré.
angular ça m’arrange :slight_smile:
je forke le dépot duniter-ui ou bien tu es parti sur un autre dépot ?

2 Likes

Tu peux forker le dépôt https://git.duniter.org/nodes/typescript/modules/duniter-ui, j’ai pushé dessus avant-hier.

Si tu as besoin d’aide sur la mise en route dis-moi :slight_smile:

1 Like

cool,
bon donc j’ai bien la partie duniter-ui qui fonctionne si on met une version de node pas trop récente avec nvm,
cependant il faut faire marcher aussi duniter.
et là c’est curieux, peu importe la version de node, 8, 10 ou 12, lors de l’install des dépendances de duniter (en typescript) j’ai toujours cette erreur:

error /var/www/html/duniter/node_modules/dubp-wot-rs: Command failed.
Exit code: 1
Command: neon build --release
Arguments:
Directory: /var/www/html/duniter/node_modules/dubp-wot-rs
Output:
neon ERR! spawn cargo ENOENT

Error: spawn cargo ENOENT
at Process.ChildProcess._handle.onexit (internal/child_process.js:264:19)

Voici les commandes que j’utilise :

nvm use 9
yarn
node run.js direct_webstart

Je te conseille d’utiliser yarn plutôt que npm ici pour être sûr d’avoir la même version des modules que moi. J’ai mis à jour le README.

Cool ça ! Je ne sais pas si c’est dans tes cordes, mais une traduction en français serait pas de trop, a mon avis :slight_smile: si on veut coller a la réalité de la G1, nous avons tout intérêt, selon moi, a aller dans ce sens. Enfin c’est juste une idée…

yep, ça serait une bonne idée.
j’ai fait une branche avec un fichier en français et ait enregistré sa traduction, le système de trad étant déjà présent avec de l’anglais.
on pourrait carrément dire que la langue par défaut est le Français si on voulait.

Bon j’ai du rajouter en dépendance duniter avec un npm install.
j’ai fait aussi un script npm pour qu’on puisse dire « npm run webstart » ou « yarn run webstart ».
curieusement le npm start demande a ce qu’on ait cesium installé en dépendance, et il n’est pas présent dans le package.json.

pour installer exactement les mêmes dépendances pour tous les devs on peut faire « yarn --pure-lockfile », je le rajoute dans le readme :slight_smile:

je m’attaque en primer au format numérique de masse monétaire foireux sur la vue Overview.
je vais explorer tout ça et j’envoie les modifs sur mon dépot.

Ça provient sans doute d’un passé lointain ou Duniter UI permettait de lancer Cesium directement. Du coup tu peux corriger aussi. Ça n’est plus utilisé il me semble.
Attention a faire des MR distincte, pour que @cgeek et @elois puisse faire une relecture plus facilement.

Bienvenue en tous cas !! :slight_smile:

2 Likes

ah, j’ai pas fait 2 Merge Request, mais des commits bien distincts concernant les différents sujet.
hop une MR

4 Likes

Parce que désormais Duniter nécessite le compilateur Rust pour être buildé (cf ce post).

Je viens de mettre a jours la doc du dépôt en conséquence : Files · dev · nodes / typescript / duniter · GitLab

Pense bien a mettre a jours le compilateur Rust régulièrement avec la commande rustup update, car une nouvelle version stable sort toute les 6 semaines et souvent je me sert des dernières fonctionnalités.

1 Like

MR acceptée :slight_smile:

Pour les volontaires, le fichier de langue FR se trouve ici. Plus qu’à traduire !

3 Likes

Cool merci!
on peut aussi contribuer à ce fichier de traduction FR avec l’éditeur de texte intégré à Gitlab (il faut avoir un compte)


(heu bizarre sur master le fichier est vide)

pour les autres gens, un moyen de trouver des problèmes à résoudre concernant Duniter UI consiste à regarder les Issues avec l’étiquette M-web-UI (pourquoi M?)

je m’attendais à trouver ces issues dans le dépot duniter-ui mais bon, tout a été mis dans les issues de duniter typescript.
Certaines sont probablement obsolètes.
j’ai commencé une autre issue assez simple qui consiste à changer les urls et icones github en gitlab.

3 Likes

Oui tu cibles ton dépôt. Le master du dépôt nodes/typescript/modules/duniter-ui/ contient bien le fichier.

ah oui sauf que y’a une astuce, quand sur le bon dépot on clique sur « web ide », ben on est redirigé vers notre fork. normal, on a pas le droit de modifier l’autre dépot source :smiley:

yop,
si quelqu’un veut bien faire un peu de revue de mes 3 Merge Request sur duniter UI, ça cause de traduction et de logo gitlab :slight_smile:

2 Likes

La convention veut que l’on écrive en anglais sur le dépôt (on attend le contributeur anglophone depuis 5 ans, mais bon, ne désespérons pas…), peux tu renommer le titre de celle en français ?

Voilà, juste pour faire chier. Ne me remercie pas, c’est un plaisir… :grin:

ma foi justement j’avais nothing better to do!
voilà , ça c’est fait