Starknet antifomo 2.0
С момента прошлого поста прошло немало времени и появилось одно довольно важное изменение: деплоить смартконтракт в мейннет можно без аллоулиста, как было показано в предыдущем посте.
Хочу напомнить, что мы тут все строго фанаты технологий и любители пожечь газ, за перехватом переписки СЕО/взломами смартконтрактов вам в другой канал. Цель статьи - запустить самый простой контракт в майннете.
Все действия выполняются на MacOS, как и что работает в других ОС можно узнать тут
Штош, мы снова возьмем публичный контракт из прошлой статьи и попытаемся задеплоить его в майннет более простым способом. Спасибо доброму дяде Давиду, что помог разобраться в этом нелегком пути.
Открываем наш кошелек Argent-x -> Settings -> Developer setting -> Smart contract development -> Declare smart contract
Нажимаем Click to upload smart contract JSON, и загружаем JSON, полученный при компиляции контракта из прошлой статьи (он находится в папке build, выбираем именно main.json)
В Network выбираем Mainnet, в Account свой аккаунт, жмем Declare
Нам выдастся Contract classhash, который копируем и вставляем в Settings -> Developer setting -> Smart contract development -> Deploy smart contract. В Parameters ставим 0.
Вуаля, контракт запилен в мейннет, осталось дождатся всех подтверждений, а пока можно сделать еще одну штуку - апрувнуть контракт в Starkscan. Зачем это нужно - как минимум, доп активность в сети, ну а как максимум - новые знания, мы ведь за этим тут собрались (хи-хи)
Тут все проще некуда, переходим на офф гитхаб и повторяем все за серьезной гифкой
Вам понадобится установленный npx, благо гайдов в интернете много. После этого переходим в директорию проекта в консоли и запускаем код
# в директории вашего проекта пишем npx starkscan
Указываем адрес или classhash контракта, что мы запилили (его можно найти в Starkscan прямо из Argent-x). Важно, берем не hash транзакции, а именно classhash. Выбираем последню версию компилятора и Is this an account contract выбираем n, далее придумываем название контракту. That's all.
Ну и на последок, потыкаем наш контракт с другого кошелька (никакой не мультиаккинг, просто 2ой кошелек, например, Braavos)
В starkscan выбираем Deployed Contract
Далее во Write contract подключаем 2ой кошелек
Подтверждаем и получаем проверку того, что наш контракт что-то умеет - им можно пользоваться. Ура!