DEV Community

Cover image for #1 - Introduction au développement de smartcontracts sur la blockchain Partisia
Kernel 🏴‍☠️
Kernel 🏴‍☠️

Posted on

#1 - Introduction au développement de smartcontracts sur la blockchain Partisia

Aujourd’hui je commence l’exploration de l’écosystème Partisia Blockchain, la fameuse blockchain qui permet de développer des smartcontracts avec une part de confidentialité (une première pour une blockchain qui permet de déployer des smartcontracts).

Je vais donc documenter cette exploration sur plusieurs articles en fonction de mes découvertes.

La première étape est d’installer tous les outils dont nous aurons besoin pour développer nos smartcontracts :

Rust : https://rustup.rs/
Ajouter la target wasm32 à rust via ces 2 commandes :

rustup update
rustup target add wasm32-unknown-unknown
Enter fullscreen mode Exit fullscreen mode

Télécharger le SDK Partisia : https://partisiablockchain.gitlab.io/documentation/partisia-sdk-7.0.0.zip

Puis aller dans le repo cargo-partisia-contract et faire les installations nécessaires via cargo (ça va être long) :

cd partisia-sdk-7.0.0/cargo-partisia-contract
cargo install --path .
Enter fullscreen mode Exit fullscreen mode

Si tout s’est bien passé vous devriez voir apparaitre la version de partisia-contract en tapant cargo partisia-contract —-version dans votre terminal.

Félicitation, si vous en êtes arrivés là, c’est que vous avez tout installé correctement 🎉


Maintenant que nous avons nos outils, nous allons passer à la compilation d’un smartcontract d’exemple.

Dans le repo partisia-sdk-7.0.0 que vous avez téléchargé, vous trouverez quelques exemple de smartcontracts dans le repository contracts .

On va s’intéresser au contract appelé example-token-contract.

Dans ce dossier, vous trouverez un fichier Cargo.toml contenant les dépendances nécessaires à la compilation de ce smartcontract, et un dossier src contenant un fichier lib.rs avec le code de notre smartcontract. Nous allons nous intéresser à ce bout de code un peu plus tard.

Donc dans notre dossier example-token-contract on va lancer la commande :

cargo partisia-contract build --release
Enter fullscreen mode Exit fullscreen mode

Ce qui va compiler le smartcontract et on va se retrouver avec un nouveau fichier Cargo.lock qui est un semblant de yarn.lock pour les développeurs JS, et un dossier target où va se trouver l’output de notre compilation.

Dans ce dossier target on aura :

  • un binaire wasm32-unknown-unknown/release/token_contract.wasm
  • une abi wasm32-unknown-unknown/release/token_contract.abi

Ce sont ces 2 fichiers dont nous aurons besoin pour déployer notre smartcontract.

Une fois qu’on a ces 2 fichiers, il est possible de déployer le smartcontract en visitant https://dashboard.partisiablockchain.com/wallet/upload_wasm ou https://mpcexplorer.com/deploy-contract

Veillez à bien sélectionner token_contract.wasm pour le contrat et token_contract.abi pour l’ABI. Ensuite, entrer les données d’initialisation du contract : nom du token, symbol, nombre de décimales, la supply totale. Et enfin, envoyer la transaction.

A noter que dans cet exemple, on déploie sur le mainnet de Partisia. Vous aurez donc besoin de MPC tokens pour payer le gas.

Félicitation (bis), si vous en êtes arrivés là, c’est que vous avez déployé votre premier smartcontract sur la blockchain Partisia avec succès 🎉


Dans de prochains articles nous verrons comment interagir avec le smartcontract, la structure des smartcontracts, comment déployer sur testnet, et bien plus encore.

Pour patienter, voici une video de l’interaction avec le smartcontract depuis l’interface utilisateur 👉 https://www.youtube.com/watch?v=qV2grtWDxUE


Si vous souhaitez en savoir plus sur Partisia, voici le lien vers la documentation officielle : https://partisiablockchain.gitlab.io/documentation/

Et si vous voulez, vous pouvez aussi me suivre sur twitter pour des infos plus concises sur Partisia, la blockchain en général et un peu d’économie : https://twitter.com/mehdi_kernel

Top comments (0)