مرکزی مواد پر جائیں

ایتھیریم ڈیولپمنٹ کا آغاز

JavaScript
ethers.js
نوڈز
کیوری کرنا
Alchemy
ابتدائی
ایلان ہیلپرن
۳۰ اکتوبر، ۲۰۲۰
6 منٹ کی پڑھائی

ایتھیریم اور الکیمی کے لوگو

یہ ایتھیریم ڈیولپمنٹ شروع کرنے کے لیے ایک ابتدائی گائیڈ ہے۔ اس ٹیوٹوریل کے لیے ہم Alchemy (opens in a new tab) کا استعمال کریں گے، جو کہ ایک سرکردہ بلاک چین ڈیولپر پلیٹ فارم ہے اور Maker، 0x، MyEtherWallet، Dharma، اور Kyber سمیت 70% سرفہرست بلاک چین ایپس کے لاکھوں صارفین کو طاقت فراہم کرتا ہے۔ Alchemy ہمیں ایتھیریم چین پر ایک API اینڈ پوائنٹ تک رسائی دے گا تاکہ ہم ٹرانزیکشنز کو پڑھ اور لکھ سکیں۔

ہم آپ کو Alchemy پر سائن اپ کرنے سے لے کر آپ کی پہلی web3 اسکرپٹ لکھنے تک لے جائیں گے! بلاک چین ڈیولپمنٹ کے کسی تجربے کی ضرورت نہیں ہے!

1. ایک مفت Alchemy اکاؤنٹ کے لیے سائن اپ کریں

Alchemy پر اکاؤنٹ بنانا آسان ہے، یہاں مفت سائن اپ کریں (opens in a new tab)۔

2. ایک Alchemy ایپ بنائیں

ایتھیریم چین کے ساتھ بات چیت کرنے اور Alchemy کی پروڈکٹس استعمال کرنے کے لیے، آپ کو اپنی درخواستوں کی تصدیق کے لیے ایک API کلید (key) کی ضرورت ہے۔

آپ ڈیش بورڈ سے API کیز بنا سکتے ہیں (opens in a new tab)۔ ایک نئی کلید بنانے کے لیے، نیچے دکھائے گئے طریقے کے مطابق "Create App" پر جائیں:

ShapeShift (opens in a new tab) کا خاص شکریہ جنہوں نے ہمیں اپنا ڈیش بورڈ دکھانے کی اجازت دی!

Alchemy ڈیش بورڈ

اپنی نئی کلید حاصل کرنے کے لیے "Create App" کے تحت تفصیلات پُر کریں۔ آپ یہاں اپنی پہلے سے بنائی گئی ایپس اور اپنی ٹیم کی بنائی گئی ایپس بھی دیکھ سکتے ہیں۔ کسی بھی ایپ کے لیے "View Key" پر کلک کر کے موجودہ کیز حاصل کریں۔

Alchemy کے ساتھ ایپ بنانے کا اسکرین شاٹ

آپ "Apps" پر ہوور (hover) کر کے اور کسی ایک کو منتخب کر کے بھی موجودہ API کیز حاصل کر سکتے ہیں۔ آپ یہاں "View Key" کر سکتے ہیں، اور ساتھ ہی مخصوص ڈومینز کو وائٹ لسٹ کرنے، کئی ڈیولپر ٹولز دیکھنے، اور اینالیٹکس دیکھنے کے لیے "Edit App" بھی کر سکتے ہیں۔

صارف کو API کیز حاصل کرنے کا طریقہ دکھانے والا Gif

3. کمانڈ لائن سے ایک درخواست کریں

JSON-RPC اور curl کا استعمال کرتے ہوئے Alchemy کے ذریعے ایتھیریم بلاک چین کے ساتھ تعامل کریں۔

دستی درخواستوں کے لیے، ہم تجویز کرتے ہیں کہ POST درخواستوں کے ذریعے JSON-RPC کے ساتھ تعامل کریں۔ بس Content-Type: application/json ہیڈر اور اپنی کیوری کو POST باڈی کے طور پر درج ذیل فیلڈز کے ساتھ پاس کریں:

  • jsonrpc: JSON-RPC کا ورژن—فی الحال، صرف 2.0 تعاون یافتہ ہے۔
  • method: ETH API کا طریقہ۔ API کا حوالہ دیکھیں۔ (opens in a new tab)
  • params: طریقہ کار (method) کو پاس کرنے کے لیے پیرامیٹرز کی ایک فہرست۔
  • id: آپ کی درخواست کی ID۔ یہ جواب (response) کے ذریعے واپس کی جائے گی تاکہ آپ ٹریک رکھ سکیں کہ کون سا جواب کس درخواست کا ہے۔

موجودہ گیس کی قیمت حاصل کرنے کے لیے یہاں ایک مثال ہے جسے آپ کمانڈ لائن سے چلا سکتے ہیں:

curl https://eth-mainnet.alchemyapi.io/v2/demo \
-X POST \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","method":"eth_gasPrice","params":[],"id":73}'

نوٹ: https://eth-mainnet.alchemyapi.io/v2/demo (opens in a new tab) کو اپنی API کلید https://eth-mainnet.alchemyapi.io/v2/**your-api-key سے تبدیل کریں۔

نتائج:

1{ "id": 73,"jsonrpc": "2.0","result": "0x09184e72a000" // 10000000000000 }

4. اپنا Web3 کلائنٹ سیٹ اپ کریں

اگر آپ کے پاس پہلے سے کوئی کلائنٹ موجود ہے، تو اپنے موجودہ نوڈ پرووائیڈر کے URL کو اپنی API کلید کے ساتھ Alchemy کے URL میں تبدیل کریں: “https://eth-mainnet.alchemyapi.io/v2/your-api-key"

نوٹ: ذیل کی اسکرپٹس کو نوڈ کے سیاق و سباق (node context) میں چلانے یا کسی فائل میں محفوظ کرنے کی ضرورت ہے، انہیں کمانڈ لائن سے نہیں چلایا جانا چاہیے۔ اگر آپ کے پاس پہلے سے Node یا npm انسٹال نہیں ہے، تو میک (Macs) کے لیے یہ فوری سیٹ اپ گائیڈ (opens in a new tab) دیکھیں۔

ایسی بہت سی Web3 لائبریریاں (opens in a new tab) ہیں جنہیں آپ Alchemy کے ساتھ مربوط کر سکتے ہیں، تاہم، ہم Alchemy Web3 (opens in a new tab) استعمال کرنے کی تجویز کرتے ہیں، جو web3.js کا ایک ڈراپ ان متبادل ہے، اور اسے Alchemy کے ساتھ بغیر کسی رکاوٹ کے کام کرنے کے لیے بنایا اور کنفیگر کیا گیا ہے۔ یہ خودکار ری ٹرائی (automatic retries) اور مضبوط WebSocket سپورٹ جیسے متعدد فوائد فراہم کرتا ہے۔

AlchemyWeb3.js انسٹال کرنے کے لیے، اپنی پروجیکٹ ڈائرکٹری میں جائیں اور چلائیں:

Yarn کے ساتھ:

1yarn add @alch/alchemy-web3

NPM کے ساتھ:

1npm install @alch/alchemy-web3

Alchemy کے نوڈ انفراسٹرکچر کے ساتھ تعامل کرنے کے لیے، NodeJS میں چلائیں یا اسے کسی JavaScript فائل میں شامل کریں:

1const { createAlchemyWeb3 } = require("@alch/alchemy-web3")
2const web3 = createAlchemyWeb3(
3 "https://eth-mainnet.alchemyapi.io/v2/your-api-key"
4)

5. اپنی پہلی Web3 اسکرپٹ لکھیں!

اب تھوڑی سی web3 پروگرامنگ کا عملی تجربہ حاصل کرنے کے لیے ہم ایک سادہ اسکرپٹ لکھیں گے جو ایتھیریم مین نیٹ (Mainnet) سے تازہ ترین بلاک نمبر پرنٹ کرے گی۔

  1. اگر آپ نے پہلے ایسا نہیں کیا ہے، تو اپنے ٹرمینل میں ایک نئی پروجیکٹ ڈائرکٹری بنائیں اور اس میں cd کریں:
1mkdir web3-example
2cd web3-example
  1. اگر آپ نے پہلے سے نہیں کیا ہے تو اپنے پروجیکٹ میں Alchemy web3 (یا کوئی بھی web3) ڈیپینڈنسی انسٹال کریں:
1npm install @alch/alchemy-web3
  1. index.js کے نام سے ایک فائل بنائیں اور اس میں درج ذیل مواد شامل کریں:

آپ کو بالآخر demo کو اپنی Alchemy HTTP API کلید سے تبدیل کرنا چاہیے۔

1async function main() {
2 const { createAlchemyWeb3 } = require("@alch/alchemy-web3")
3 const web3 = createAlchemyWeb3("https://eth-mainnet.alchemyapi.io/v2/demo")
4 const blockNumber = await web3.eth.getBlockNumber()
5 console.log("The latest block number is " + blockNumber)
6}
7main()

async چیزوں سے ناواقف ہیں؟ یہ Medium پوسٹ (opens in a new tab) دیکھیں۔

  1. اسے node کا استعمال کرتے ہوئے اپنے ٹرمینل میں چلائیں
1node index.js
  1. اب آپ کو اپنے کنسول میں تازہ ترین بلاک نمبر کا آؤٹ پٹ نظر آنا چاہیے!
1The latest block number is 11043912

واہ! مبارک ہو! آپ نے ابھی Alchemy کا استعمال کرتے ہوئے اپنی پہلی web3 اسکرپٹ لکھی ہے 🎉

سمجھ نہیں آ رہا کہ آگے کیا کرنا ہے؟ اپنا پہلا اسمارٹ کانٹریکٹ (smart contract) ڈیپلائے کرنے کی کوشش کریں اور ہماری ہیلو ورلڈ اسمارٹ کانٹریکٹ گائیڈ (opens in a new tab) میں کچھ Solidity پروگرامنگ کا عملی تجربہ حاصل کریں، یا ڈیش بورڈ ڈیمو ایپ (opens in a new tab) کے ساتھ اپنے ڈیش بورڈ کے علم کی جانچ کریں!

Alchemy پر مفت سائن اپ کریں (opens in a new tab)، ہماری دستاویزات (opens in a new tab) دیکھیں، اور تازہ ترین خبروں کے لیے، ہمیں Twitter (opens in a new tab) پر فالو کریں۔

صفحہ کی آخری اپ ڈیٹ: ۳ مارچ، ۲۰۲۶

کیا یہ ٹیوٹوریل مددگار تھا؟