Skip to content

Nuchain App

Robin Syihab edited this page Mar 19, 2021 · 6 revisions

Nuchain App adalah istilah untuk aplikasi terdistribusi yang jalan di atas jaringan Nuchain, biasa juga disebut Smart Contract atau dApps.

Dokumen ini berisi cara membuat dan mendeploy App ke jaringan Nuchain.

Getting Started

Buka laman dashboard.nuchain.network, lalu pilih menu Developer > Contracts:

Nuchain App Smart Contract

Di laman Contracts klik tombol (+) Upload & deploy code:

Upload and deploy

Kemudian akan muncul dialog upload & deploy code, pada dialog box ini Anda perlu memasukkan alamat akun yang akan digunakan untuk men-deploy dan upload contract bundle, contract bundle adalah file hasil kompilasi dari kode kontrak Anda biasanya berekstensi .contract, contoh umkm4.contract, untuk lebih jelasnya baca contoh dan cara buatnya di sini.

Setelah kode kontrak berhasil diunggah maka tampilannya jadi kurang lebih sebagai berikut:

deploy kontrak

Klik Next dan masuk ke langkah selanjutnya konfigurasi:

konfigurasi nuchain app

pada langkah ini Anda perlu mengisi:

  • deployment constructor - sebagai entry point untuk menginstansiasi app-nya, apabila hanya ada satu constructor maka pilihan ini tidak bisa diganti. Pada contoh gambar di atas saya membuat app yang pada bagian constructor-nya ada parameter owner yang saya siapkan untuk menset siapa yang akan menjadi pemilik dari kontrak ini, karena owner ini memiliki otorisasi khusus yakni menambahkan anggota, menambahkan poin dan mengurangi poin.
  • endowment - adalah biaya sewanya, perlu diketahui bahwa Nuchain menggunakan konsep sewa untuk setiap app yang jalan di atas jaringan Nuchain, hal ini untuk menghindari spammer dari melakukan serangan ddos dengan cara membanjiri jaringan menggunakan data kontrak sampah, dan sewa ini nilainya tergantung dari seberapa besar app yang akan di-deploy dan seberapa banyak item storage yang digunakan di dalamnya. Untuk contoh app umkm4 hanya dibutuhkan 200 ARA untuk endowment ini, isi sesuai dengan app Anda.

Langkah selanjutnya adalah sign & deploy.

Setelah selesai dan sukses di-deploy maka definisi fungsi-fungsi pada app Anda akan muncul di bagian contrats:

Nuchain smart contract

di sini Anda bisa mencoba-coba fungsinya secara langsung melalui dashboard, dan apabila sudah oke Anda bisa mengakses setiap fungsi tersebut melalui API dan sudah tersedia library javascript-nya.

Snippet kode dalam mengakses fungsi addPoint pada contoh applikasi umkm4:

this.contract.tx
    .addPoint(
        { value: 0, gasLimit: -1 },  // parameter wajib untuk setiap call
        this.memberHash,
        10                           // jumlah point yang akan ditambahkan
    )
    .signAndSend(this.selectedAccount.address, this.signer, (status) => {
        this.errorInfo = "";
        if (status.isInBlock) {
           // data telah tertulis di blok
           alert("Sukses, point telah ditambahkan!");
        }
    })
    .catch((err) => {
        alert("Gagal: " + err);
    });

Untuk lebih detailnya bisa lihat contoh kodenya di Nuchain app web frontend.

Clone this wiki locally