stephabauva / defi3-v2

0 stars 0 forks source link

defi3-v2

Défi 3! Here we go!


L'application a des bouttons qui s'auto-bloquent si le status du contract n'est pas le bon.
Le passage entre different status est aussi soumis à un blocage, ça permet à l'admin de ne pas faire d'erreur.

La fonctionnalité de changement de status ainsi que les getters sont tous dans des bouttons type dropdown pour ne pas encombrer l'app.
Il n'y a qu'un seul boutton pour récupérer le ou les gagnants; il utilise la function countVotes (anciennement TallyVotesDraw) et juste reconstruit l'object du getter pour récupérer le ou les gagnants.

Le contrat est commenté en suivant NatSpec, dans solc-docs/ .
La documentation est générée avec solc, pour les dev et utilisateurs. L'app récupère les events dont les valeurs sont utilisées pour les messages d'alerte. Les tests fonctionnent comme dans le défi 2, mis a jour pour nouvelle fonction countVotes.

Set up

npm install
truffle compile

Test with: truffle test All tests good? then:

Either deploy on Ganache:

truffle migrate

Or on Ropsten: add a .env file and add your INFURA_ID and wallet MNEMONIC then:
truffle migrate --network ropsten
Note: Be sure to position on the same directory as your truffle-config file, otherwise truffle won't get your mnemonic

Finally:

npm start

See demo on heroku HERE