RPCdot.com
  • Welcome To RPCdot.com Services
  • πŸš€Update
  • πŸŒ€Spheron
    • πŸŒ€Spheron Network Node Setup
  • πŸ¦„UniChain
    • πŸ¦„UniChain Node Setup
  • 🧊Nexus
    • Nexus Node Setup
  • πŸ”ΌVANA
    • 6️Vana - SixGPT Node Setup
      • πŸ”ΌVana SixGPT Update
      • πŸ”ΌVana SixGPT Update 1.1.5
  • Hemi Network
    • Hemi Network Node Setup
      • πŸ”ΌHemi Node Update v0.4.5
      • πŸ”ΌHemi Node Update v0.5.0
      • πŸ”ΌHemi Node Update v0.6.0
      • πŸ”ΌHemi Node Update v0.7.0
      • πŸ”ΌHemi Node Update v0.8.0
  • πŸ‰ZenRock
    • πŸ‰ZenRock Node Setup
    • πŸ‰Sidecar (Oracle)
  • πŸ”΅ORA
    • πŸ”΅Ora Node Setup
  • πŸ†—AlignedLayer
    • SP1 Proofs with Aligned
  • πŸŸͺFarcaster
    • Farcaster Node
      • Farcaster Update
      • πŸ‡ΉπŸ‡·Farcaster RPC Problemi / Turkish / TΓΌrkΓ§e
  • 🟧Nubit
    • Nubit Node
  • πŸ‡¨πŸ‡­SwissTronik
    • πŸ‡¨πŸ‡­SwissTronik Deploy Simple Contract
      • πŸ‡¨πŸ‡­ SwissTronik Mint 100 ERC-20 Tokens
      • πŸ‡¨πŸ‡­SwissTronik Upload Github Repository
  • 🎯Sonaric
    • Sonaric Node Setup
      • ♻️Update 1.5
      • πŸ‡ΉπŸ‡·Update 1.5 / Turkish / TΓΌrkΓ§e
      • 🎯Sonaric Operator Role
      • 🎯Sonaric Operator RolΓΌ
      • Sonaric Delete / Silme
      • ⬆️Sonaric Update 1.6
      • Your Node Not Collect Points:
      • ⬆️Sonaric Update 1.7
      • πŸ‡ΉπŸ‡·Sonaric Node - Panel Rehber
  • πŸ”³Chasm
    • πŸ”²Chasm Node Setup
      • πŸ“›FOR "HANDSHAKE FAILED ERROR"
  • ⚫Kuzco
    • Kuzco Node Setup
      • Swap Ram
  • ⭐Allora
    • Worker Node
      • Other Commands
        • 408 Sorunu ÇâzΓΌm
        • Problem 408 Solution
        • πŸ‡ΉπŸ‡·Allora V2 Update Turkish / TΓΌrkΓ§e
        • Oluşabilecek Sorunlar :
        • πŸ‡ΉπŸ‡·3 Worker Setup Turkish / TΓΌrkΓ§e
      • Allora OffChain Node - Update
      • Allora Worker Node Update
      • Allora Huggingface Node Setup
  • πŸ”‘Fiamma
    • Fiamma Node Setup
  • βš•οΈSymphony
    • βš•οΈSymphony Node Setup
      • Symphony Node v0.3.0 Update
  • β™’Dill Andes
    • Dill Andes Node Setup
  • πŸ”ΆFractal Bitcoin
    • 🌏Fractal Bitcoin Node Setup
  • 🌈Rainbow
    • 🌈Rainbow Protocol Node Setup
      • Delete
      • Update
  • Nesa
    • Nesa Node Setup
  • 🟦Nillion
    • 🟦Nillion Verifier Node
      • Nillion Node False Sorunu ÇâzΓΌm 1
      • Nillion Node False Sorunu ÇâzΓΌm 2
      • Nillion Update v1.0.0
      • Nillion Update v1.0.1
  • βš›οΈEmpe
    • Empeiria's Testnet
      • Empeiria's Testnet Node Setup With Relase
      • v0.2.2 Update
  • 🐲Rivalz Cli
    • Rivalz Node Setup Ubuntu - Server
      • 🌎Rivalz Update 2.3.4
      • πŸ‡ΉπŸ‡·Rivalz Update 2.3.4 Turkish / TΓΌrkΓ§e
      • Rivalz V2 Update :
  • ✴️Citrea
    • Citrea Node Setup
    • Citrea Node Setup With Docker
  • 🟠Humanode
    • Setup / ENG
      • Humanode Setup / ENG
      • Setup / ES
  • Servers
    • Server Providers
      • Hetzner
      • Contabo
      • Linode
      • AWS
      • Digital Ocean
      • InterServer
      • Fastcomet
  • πŸ‘‘Cheat Sheet
    • Update
    • Cosmos ECO
  • How to Connect Server
    • Termius - How To Connect Server
    • Mobaxterm - How To Connect Server
    • Putty - How To Connect Server
    • CMD - How To Connect Server
  • Sunucuya NasΔ±l BağlanΔ±rΔ±m ?
    • Termius - Sunucuya NasΔ±l BağlanΔ±rΔ±m
    • MobaxTerm - Sunucuya NasΔ±l BağlanΔ±rΔ±m
    • Putty - Sunucuya NasΔ±l BağlanΔ±rΔ±m
    • CMD - Powershell - Sunucuya NasΔ±l BağlanΔ±rΔ±m
  • CΓ³mo Conectarse Al Servidor
    • Termius - CΓ³mo Conectarse Al Servidor
    • MobaxTerm - CΓ³mo Conectarse Al Servidor
    • Putty - CΓ³mo Conectarse Al Servidor
    • CMD - CΓ³mo Conectarse Al Servidor
  • πŸ‹Docker
    • πŸ‡ΉπŸ‡·Docker / Container KomutlarΔ± :
  • πŸ““Nano
    • πŸ‡ΉπŸ‡·Nano KomutlarΔ± / KΔ±sa YollarΔ± :
  • Ubuntu
    • πŸ‡ΉπŸ‡·Ubuntu KomutlarΔ± :
    • πŸ‡ΉπŸ‡·Ubuntu KullanΔ±lan PortlarΔ± GΓΆrme :
  • Projeler :
    • πŸ‡ΉπŸ‡·Liste
  • T3RN
    • T3RN Node Setup
  • Vana
    • Vana Node Setup - DLP Validator Moshka
      • Vana Node Setup - DLP Validator Satori
      • Vana Node Setup - DLP Validator - OLD
  • 🟣SOLV
    • 🟣SOLV Node Setup
  • πŸ”ΊIthaca
    • πŸ”ΊOdyssey Testnet - Transcation
  • 🟣InkonChain - Ink Node
    • πŸŒ†Ink Node - Setup
  • πŸͺΌPell Network
    • πŸͺΌPell Network - Pell Devnet 0.1.0 Node Setup
Powered by GitBook
On this page
  • 3-2-1 GO !
  • Crate A Directory :
  • Enter The Directory :
  • Copy - And Paste
  • Change "PASTE UR PRIVATE KEY WITHOUT 0X" Without 0x !
  • Copy And Paste !
  • Copy And Paste :
  • Copy the contract address !! And Save.
  • Save TX URL ! Paste it into the required field in the task.
  1. SwissTronik
  2. SwissTronik Deploy Simple Contract

SwissTronik Mint 100 ERC-20 Tokens

3-2-1 GO !

cd $HOME

Crate A Directory :

mkdir Swissmint

Enter The Directory :

cd Swissmint
sudo apt-get remove -y nodejs
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh | bash && export NVM_DIR="/usr/local/share/nvm"; [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"; [ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"; source ~/.bashrc; nvm install --lts; nvm use --lts
npm install --save-dev hardhat
npm install --save-dev @nomicfoundation/hardhat-toolbox
npx hardhat

Enter

rm package.json
nano package.json

Copy - And Paste

{
  "name": "hardhat-project",
  "devDependencies": {
    "@nomicfoundation/hardhat-toolbox": "^3.0.0",
    "hardhat": "^2.17.1"
  },
  "dependencies": {
    "@openzeppelin/contracts": "^4.9.3",
    "@swisstronik/utils": "^1.2.1"
  }
}

CTRL X - CTRL Y - Enter. Saved.

rm hardhat.config.js
nano hardhat.config.js

Change "PASTE UR PRIVATE KEY WITHOUT 0X" Without 0x !

require("@nomicfoundation/hardhat-toolbox");

const PRIVATE_KEY = "PASTE UR PRIVATE KEY WITHOUT 0X";

module.exports = {
  defaultNetwork: "swisstronik",
  solidity: "0.8.19",
  networks: {
    swisstronik: {
      url: "https://json-rpc.testnet.swisstronik.com/",
      accounts: [`0x` + `${PRIVATE_KEY}`],
    },
  },
};

CTRL X - CTRL Y - Enter. Saved.

cd contracts
rm Lock.sol
nano Token.sol

Copy And Paste !

// SPDX-License-Identifier: UNLICENSED
pragma solidity ^0.8.9;

import "@openzeppelin/contracts/token/ERC20/ERC20.sol";

contract TestToken is ERC20 {
    constructor()ERC20("RPCDOT","RPC"){} 

    function mint100tokens() public {
        _mint(msg.sender,100*10**18);
    }

    function burn100tokens() public{
        _burn(msg.sender,100*10**18);
    }
    
}

CTRL X - CTRL Y - Enter. Saved.

npm install
npx hardhat compile
cd ..
mkdir scripts && cd scripts
nano deploy.js

Copy And Paste :

const hre = require("hardhat");

async function main() {
  const contract = await hre.ethers.deployContract("TestToken");

  await contract.waitForDeployment();

  console.log(`deployed to ${contract.target}`);
}

main().catch((error) => {
  console.error(error);
  process.exitCode = 1;
});

CTRL X - CTRL Y - Enter.

cd ..
npx hardhat run scripts/deploy.js --network swisstronik

Copy the contract address !! And Save.

cd scripts
nano mint.js

Change : ENTER YOUR CONTRACT ADDRESS HERE

const hre = require("hardhat");
const { encryptDataField, decryptNodeResponse } = require("@swisstronik/utils");
const sendShieldedTransaction = async (signer, destination, data, value) => {
  const rpcLink = hre.network.config.url;
  const [encryptedData] = await encryptDataField(rpcLink, data);
  return await signer.sendTransaction({
    from: signer.address,
    to: destination,
    data: encryptedData,
    value,
  });
};

async function main() {
  const contractAddress = "ENTER YOUR CONTRACT ADDRESS HERE";
  const [signer] = await hre.ethers.getSigners();

  const contractFactory = await hre.ethers.getContractFactory("TestToken");
  const contract = contractFactory.attach(contractAddress);

  const functionName = "mint100tokens";
  const mint100TokensTx = await sendShieldedTransaction(
    signer,
    contractAddress,
    contract.interface.encodeFunctionData(functionName),
    0
  );

  await mint100TokensTx.wait();

  console.log("Transaction Receipt: ", mint100TokensTx.hash);
}

main().catch((error) => {
  console.error(error);
  process.exitCode = 1;
});

CTRL X - CTRL Y - Enter - Saved.

nano transfer.js

Change "PASTE YOUR CONTRACT ADDRESS HERE" :

const hre = require("hardhat");
const { encryptDataField, decryptNodeResponse } = require("@swisstronik/utils");
const sendShieldedTransaction = async (signer, destination, data, value) => {
  const rpcLink = hre.network.config.url;
  const [encryptedData] = await encryptDataField(rpcLink, data);
  return await signer.sendTransaction({
    from: signer.address,
    to: destination,
    data: encryptedData,
    value,
  });
};

async function main() {
  const replace_contractAddress = "PASTE YOUR CONTRACT ADDRESS HERE";
  const [signer] = await hre.ethers.getSigners();

  const replace_contractFactory = await hre.ethers.getContractFactory("TestToken");
  const contract = replace_contractFactory.attach(replace_contractAddress);

  const replace_functionName = "transfer";
  const replace_functionArgs = ["0x16af037878a6cAce2Ea29d39A3757aC2F6F7aac1", "1"];
  const transaction = await sendShieldedTransaction(signer, replace_contractAddress, contract.interface.encodeFunctionData(replace_functionName, replace_functionArgs), 0);

  await transaction.wait();
  console.log("Transaction Response: https://explorer-evm.testnet.swisstronik.com/tx/" + transaction.hash);
}

main().catch((error) => {
  console.error(error);
  process.exitCode = 1;
});

CTRL X - CTRL - Enter . Saved.

cd ..
npx hardhat run scripts/mint.js --network swisstronik
npx hardhat run scripts/transfer.js --network swisstronik

Save TX URL ! Paste it into the required field in the task.

Remove Private KEY !

nano hardhat.config.js

CTRL X - CTRL Y - Enter. Saved.

PreviousSwissTronik Deploy Simple ContractNextSwissTronik Upload Github Repository

Last updated 9 months ago

πŸ‡¨πŸ‡­
πŸ‡¨πŸ‡­
πŸ‡¨πŸ‡­