Salut à toutes et à tous !
Pour lancer ce sujet je vais repprendre certaines parties de l'article dédié à ce projet qui sortira plus tard sur mon blog.Parfois il m'arrive de me dire "il n'existe pas de projet pour ça, il faudrait que je le développe", c'est le cas de ce projet !Aujourd'hui je vous présente un nouveau projet dont j'avais vraiment besoin.
L'histoire du projet[...]Mais je ne fais pas que m’intéresser à celles-ci ( Aux Cryptos-Monnaies ), j'en possède aussi un petit panel.
Plus j'en possède, plus je me confronte à un problème.Il m'est impossible de me tenir au courant des événements des toutes celles-ci efficacement ( Notamment être au courant des
swaps de certaines ).
C'est la qu'entre en jeu le site Coinmarketcal !
[...]Coinmarketcal : Le site idéal ?[...]Le problème de ce site, c'est qu'il il faut se rendre sur celui-ci régulièrement, au risque de manquer un événement important.
A noter qu'anciennement, il était possible de s'abonner à une newletter pour recevoir par mail les événements d'une Crypto-Monnaie en particulier. Cependant depuis quelques temps cette fonctionnalité n'est plus disponible.Tout ça pour dire que le site dans l'état actuel n'est pas super pratique ( En tout cas pour les personnes ne souhaitant pas se rendre dessus tous les jours ).
Une extension pour navigateur ?C'est là qu'entre donc en jeu mon projet, une extension pour navigateur !
L'idée avec cette extension, c'est de proposer certaines fonctionnalités du site, mais directement dans une extension pour navigateur.
Pour ça, j'ai développé tout un script permettant notamment de scraper certaines informations du site, pour ensuite les retranscrire sur l'extension ( Je ne souhaitais pas utiliser l'API du site, du fait que le projet est open-source ).
Actuellement, l'extension permet donc plusieurs choses que voici.
- Visualiser les événements à venir.
- Effectuer une recherche parmi tous les événements enregistrés sur le site.
- Recevoir une notification lorsqu'un nouvel événement est ajouté sur le site.
- Voter pour un événement directement depuis l'extension.
A noter qu'il est possible que l'extension reçoive d'autres fonctionnalités dans le futur. Je n'ai pour le moment pas eu le temps d'en développer plus.Je vous invite à tester ces fonctionnalités en l'installant directement sur votre navigateur, via l'un de ces liens.
Chrome :
https://chrome.google.com/webstore/detail/coinmarketcal-browser-add/ggmdichehphkoadpoanjiohaflbmoaanFirefox :
https://addons.mozilla.org/fr/firefox/addon/coinmarketcal-browser-addon/Voir le projet sur GitHub :
https://github.com/luluwebmaster/coinmarketcal-browser-addonUtiliser Coinmarketcal sans API ? Un défi ?[...]Et oui, en temps normal pour développer un projet du genre, il est préférable d'utiliser une API pour faciliter la communication entre l'extension et le site en question.
[...]Rendre open-source un projet avec une API non propre à moi même est compliqué, étant donné que ça impliquerait la demande et l’utilisation d'une clef d'API unique pour chaque utilisateur.
Déjà que c'est pas ce qu'il y a de plus simple à faire, je me voyais mal infliger ça aux utilisateurs, le but étant d'avoir vraiment une extension "clef en main". Juste besoin de l'installer, et c'est parti pour l'utiliser.
Donc tout ça m'a emmené à devoir développer un système pour scraper les données depuis le site internet directement.
[...]Une autre défi technique, ça a été d'implémenter la possibilité de voter directement depuis l'extension. Ça ne parait pas comme ça, mais c'est vraiment compliqué ( Pour les connaisseurs, vous pouvez analyser le code source ) !
Conclusion[...]Il est important de noter que j'ai développé ce projet assez rapidement ( Moins d'une semaine ), c'est pour cette raison que le code source n'est pas forcement très propre, et qu'il peut sur certain points paraître assez brouillon. L'objectif était d'avoir un projet utilisable rapidement.
Si vous souhaitez aider au développement de celui-ci, je ne peux que vous inviter à le faire via
la page du projet sur GitHub.
D'ailleurs n'hésitez pas à reporter les possibles bugs / problèmes sur
cette page, ou encore aider à la traduction du projet en vous basant sur
les traductions actuelles.
Bref, je pense en avoir assez dit sur ce projet.
Vous vouvez soutenir mon travail sur le projet avec ces adresses.Je vous remercie d'avoir pris le temps de tout lire, n'hésitez pas à me donner vos retours sur celui-ci !
A très bientôt !