BURADAN yapılacak görevler ve ödül açıklamasına ulaşabilirsiniz.
Ethereum üzerinde Layer-2 çözümü olan Nahmii testnetinde bazı basit görevleri yaparak katılabilirsiniz.
Nahmii Test Ağı
Öncelikle cüzdanımıza Nahmii test ağını ekleyerek başlayalım;
Ağ adı: Nahmii Testnet
Yeni RPC URL adresi: https://ngeth.testnet.n3.nahmii.io
Zincir Kimliği: 4062
Para Birimi Sembolü: ETH
Blok Gezgini URL Adresi: https://explorer.testnet.n3.nahmii.io/
Ağı cüzdanımıza ekledikten sonra, bridge işlemine başlıyoruz.
Nahmii Bridge
BURADAN platforma gidiyoruz ve cüzdanımızı bağlıyoruz. Goerli ETH ağından Nahmii Test ağında ve tersi işlemlerle bridge adımlarını tamamlıyoruz. Burada Nahmii test ağından Goerli ETH ağında gönderdiğinizde Claim ile gelen test tokenleri çekmeniz gerektiğini unutmayın.
Token Transfer
Nahmii test ağından başka cüzdanlara test ETH gönderiyoruz.
Cüzdan adresim:
0x13B19fd63d34Be9d3D6d25ebd7142134C0cfc725
isterseniz, yedek cüzdanlarınıza da aynı şekilde transfer yapabilir, yada karşılıklı göndermek için Telegram, twitter sosyal medya adreslerimizi kullanabilirsiniz. Rehberimizin altındaki yorumlar bölümüne de cüzdan adreslerinizi bırakabilirsiniz.
NiiFi DEX
Swap
BURADAN platforma gidiyoruz ve Nahmii test ağında cüzdanımızı bağlıyoruz. İlk olarak takas işlemi yapıyloruz. Cüzdanımıza bridge ile geçirdiğimiz ETH’ları, DAI, USDC gibi farklı tokenlere çevirmeyi unutmayın. Ayrıca pool’lar için gerekli olan WETH takas işlemini de mutlaka yapın.
Pool
Pool bölümüne geçiyoruz. Mevcut havuzlardan birini seçiyoruz ve likidite ekliyoruz. Burada istediğiniz havuzları seçebilirsiniz. Düzenli işlemler yapmaya özen gösterin. O nedenle tüm havuzları sırasıyla kullanabilirsiniz. Yukarıdaki görselde örnek olarak DAI-WETH pool’unu seçtik. Likidite ekledik, eklediğimiz likiditenin bir bölümünü geri çektik ve tekrardan likidite ekledik.
Create Pool
Bu bölümde Create Pool ile yeni bir havuz oluşturuyoruz. Oluşturmak istediğimiz tokenleri seçiyoruz ve likidite yatırır, gibi cüzdanımıza gelen onayları kabul ediyoruz.
Nahmii USD
Burada işlemleri yaparken adımlara dikkat ediyoruz. Öncelikle BURADAN kontrat adresine ulaşıyoruz. Write Contract bölümüne geliyoruz, cüzdanımızı bağlıyoruz. 5. adımda faucet var. O bölüme gelip, write diyerek faucet fonksiyonunu çağırıyoruz. Cüzdanımıza gelen bildirimi kabul ediyoruz. Goerli ağında 1000 NUSD geldi. Şimdi de birinci adımda yaptığımız bridge işleminin aynısını, NUSD seçerek yapıyoruz.
BURADAN bridge yerine ulaşıyoruz. ETH olan yere basıp NUSD seçiyoruz ve Nahmii test ağına gönderiyoruz. Sonrasında withdraw işlemiyle tekrar goerli ağına gönderiyoruz.
Diğer görevler geldiğinde rehberimizi güncellemeye devam ederiz. Bizi takipte kalın…
Nahmii NFT Yaratma
Burada basit adımlarla, Nahmii ağında NFT yaratıp mint edeceğiz. Öncelikle BURADAN Remix sitesine gidiyoruz. FILE EXPLORER bölümünden Create New File basıyoruz. Dosya adını istediğiniz gibi oluşturabilirsiniz. Örnek olarak “coinhunters-nft.sol” istediğiniz adı verebilirsiniz. sonunda .sol uzantısı olması gerekiyor.
Sağda açılan bölüme alttaki kodları kopyalayıp yapıştırabilirsiniz
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.9;
import "@openzeppelin/contracts@4.8.2/token/ERC721/ERC721.sol";
import "@openzeppelin/contracts@4.8.2/token/ERC721/extensions/ERC721URIStorage.sol";
import "@openzeppelin/contracts@4.8.2/access/Ownable.sol";
contract CoinHunters is ERC721, ERC721URIStorage, Ownable {
constructor() ERC721("CoinHunters", "CHT") {}
function safeMint(address to, uint256 tokenId, string memory uri)
public
onlyOwner
{
_safeMint(to, tokenId);
_setTokenURI(tokenId, uri);
}
// The following functions are overrides required by Solidity.
function _burn(uint256 tokenId) internal override(ERC721, ERC721URIStorage) {
super._burn(tokenId);
}
function tokenURI(uint256 tokenId)
public
view
override(ERC721, ERC721URIStorage)
returns (string memory)
{
return super.tokenURI(tokenId);
}
}
SOLIDITY COMPILER bölümüne geliyoruz. COMPILER 0.8.18+commit87f61d96 seçiyoruz. Otomatik olarak geldiyse dokunmanıza gerek yok. Compile ….sol(verdiğiniz dosya adı) şeklinde bir buton göreceksiniz. O butona basıyoruz. Herhangi bir sorun yoksa solda yeşil tik işareti geliyor.
DEPLOY & RUN TRANSACTIONS bölümüne geliyoruz. ENVIRONMENT bölümünden Injected Provider – MetaMask seçiyoruz. Metamask cüzdanımızın Nahmii test ağında olmalı ve içinde ETH olduğuna dikkat ediyoruz. Deploy butonuna basıyoruz. Aşağıdaki görsel gibi bir sonuç elde ettiyseniz, işleminiz başarılı olmuştur.
Nahmii NFT Mint
DEPLOY & RUN TRANSACTIONS bölümünde NFT ağ üzerinde yarattıktan sonra, mint işlemi yapacağız. Deployed Contracts bölümünde yaratmış olduğunuz NFT contrat adresi ile yazar solundaki ok işaretine basıyoruz. “safeMint” fonksiyonunu buluyoruz ve üzerine tıklıyoruz. “to:” bölümüne cüzdan adresimizi yazıyoruz. “tokenId:” 1,2… bir rakam veriyoruz. Gerekli yerleri doldurduktan sonra, transact butonuna basıyoruz. Metamask’ımıza gelen bildirimi onaylıyoruz.
Aşağıdaki gibi bir sonuç alırsanız işleminiz onaylanmış demektir.
NFT Transfer
Mintlemiş olduğumuz NFT’yi başka bir cüzdana transfer etmek için Aynı bölümden “safeTransferFrom” fonksiyonuna basıyoruz. “from:” kendi cüzdan adresimizi “to” göndermek istediğimiz cüzdan adresini “tokenId:” ise mintlerken verdiğimiz rakamı veriyoruz. transact butonuna basıyoruz. Metamask’ımıza gelen bildirimi onaylıyoruz.
Contract Yayınlama
Nahmii test ağında kendimize ait bir kontrat yayınlayacağız.
Öncelikle BURADAN Remix sitesine gidiyoruz. FILE EXPLORER bölümünden Create New File basıyoruz. Dosya adını istediğiniz gibi oluşturabilirsiniz. Örnek olarak “coinhunters.sol” istediğiniz adı verebilirsiniz. sonunda .sol uzantısı olması gerekiyor.
Sağda açılan bölüme alttaki kodları kopyalayıp yapıştırabilirsiniz. Kodda gördüğünüz, “CoinHunters” “CHTT” isimlerini değiştirmeyi unutmayın.
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.9;
import "@openzeppelin/contracts@4.8.2/token/ERC20/ERC20.sol";
import "@openzeppelin/contracts@4.8.2/token/ERC20/extensions/ERC20Burnable.sol";
import "@openzeppelin/contracts@4.8.2/access/Ownable.sol";
contract CoinHunters is ERC20, ERC20Burnable, Ownable {
constructor() ERC20("CoinHunters", "CHTT") {
_mint(msg.sender, 10000 * 10 ** decimals());
}
function mint(address to, uint256 amount) public onlyOwner {
_mint(to, amount);
}
}
SOLIDITY COMPILER bölümüne geliyoruz. COMPILER 0.8.18+commit87f61d96 seçiyoruz. Otomatik olarak geldiyse dokunmanıza gerek yok. Compile ….sol(verdiğiniz dosya adı) şeklinde bir buton göreceksiniz. O butona basıyoruz. Herhangi bir sorun yoksa solda yeşil tik işareti geliyor.
DEPLOY & RUN TRANSACTIONS bölümüne geliyoruz. ENVIRONMENT bölümünden Injected Provider – MetaMask seçiyoruz. Metamask cüzdanımızın Nahmii test ağında olmalı ve içinde ETH olduğuna dikkat ediyoruz. Deploy butonuna basıyoruz. Aşağıdaki görsel gibi bir sonuç elde ettiyseniz, işleminiz başarılı olmuştur.
Token Burn Yapma
DEPLOY & RUN TRANSACTIONS bölümünde Token ağ üzerinde yarattıktan sonra, burn işlemi yapacağız. Deployed Contracts bölümünde yaratmış olduğunuzToken contrat adresi ile yazar solundaki ok işaretine basıyoruz. “burn” fonksiyonunu buluyoruz ve üzerine tıklıyoruz. “amount:” bölümüne bir sayı giriyoruz. 10bin token bastığımız için bu sayı 10binin altında olması gerekiyor. transact butonuna basıyoruz. Metamask’ımıza gelen bildirimi onaylıyoruz. İşlem başarılı şekilde tamamlanmış oluyor.
Sonuçları Ağ Üzerinde Kontrol Etme
Hem kontratı yayınlamayı hemde NFT mint sonucunu ağ üzerinde kontrol etmek için BURADAN explorera gidiyoruz. Remix sayfasında yeşil tikli olan sonucun üzerine basıyoruz.
“transaction hash” yazan yerdeki karakterleri sağına basıp kopyalıyoruz. Explorer sayfasında aratıyoruz. Karışımıza alttaki gibi bir sonuç gelirse, işlemler düzgün şekilde yapılmış demektir.
chainlist sitesine girip test ağını kolay bir şekilde de metamaska bağlayabiliriz. 😊😊
0x7eaFcc697e7Bc14313c22325Ecc17B21d5232bF9 devam hocam