Blacksmith يولد واجهة بسيطة للتفاعل مع العقود الذكية.
تهدف هذه الأداة على وجه التحديد إلى استخدامها مع مسبك.
استنساخ الريبو.
git clone https://github.com/blacksmith-eth/blacksmith.gitبدء تطبيق الحدادة.
cd blacksmith
pnpm install
pnpm devفي نافذة طرفية ثانية ، ابدأ عقدة testnet محلية.
anvilفي نافذة طرفية ثالثة ، قم بإنشاء مشروع مسبك في دليل منفصل.
forge init example
cd exampleمن دليل Foundry نشر عقد العداد إلى عقدة testnet المحلية.
forge create src/Counter.sol:Counter --verify --unlocked
--from 0xf39fd6e51aad88f6f4ce6ab8827279cfffb92266
--rpc-url http://localhost:8545
--verifier-url http://localhost:3000/api/verify
--verifier sourcifyملاحظة: في حالة فشل هذا الأمر ، راجع قسم تكوين Foundry في أسفل README.
انتقل إلى http: // localhost: 3000 ، انقر فوق الزر Connect Wallet ، واختر Blackorsmith.
ملاحظة: قم بتحديث الصفحة إذا فشل مشروط المحفظة في الفصل.
حدد العقد المضاد في الشريط الجانبي للعقود وابدأ التفاعل!
استبدل $INFURA_KEY بمفتاح API الشخصي الخاص بك.
anvil --fork-url https://mainnet.infura.io/v3/ $INFURA_KEYانتقل إلى صفحة الحدادة "البدء" من خلال النقر فوق عنوان "الحدادة".
في قسم "إدارة العقد" ، أدخل عنوان العقد لـ DAI 0x6b175474e89094c44da98b954eedeac495271d0f وانقر فوق زر الاستيراد.
حدد عقد DAI في الشريط الجانبي للعقود وابدأ التفاعل!
مثال: حاول إدخال 0xad0135af20fa82e106607257143d0060a7eb5cbf في وظيفة balanceOf .
ملاحظة: لكي ينجح استيراد العقد ، يجب التحقق من العقد على Etherscan.
إنشاء .env.local في الدليل الجذر للحدادين وتضمين مفتاح API الخاص بك لتجنب حدود المعدل.
echo " ETHERSCAN_API_KEY=XXX " >> .env.local يمكن العثور على مثال على حجج CLI اللازمة لاستيراد العقود عبر forge script أدناه.
forge script script/Counter.s.sol:CounterScript --broadcast --verify --unlocked
--sender 0xf39fd6e51aad88f6f4ce6ab8827279cfffb92266
--fork-url http://localhost:8545
--verifier-url http://localhost:3000/api/verify
--verifier sourcifyإذا كنت تعمل مع Hardhat تحقق من؟ سقالة-إيث!