Перейти к содержимому

Snapshot Snap: пользовательские уведомления об активности в блокчейне

«MetaMask Snaps — очевидное будущее web3», — считает Минси, независимый разработчик, создавший Snapshot, расширение MetaMask Snap, позволяющее пользователям настраивать...

4 мин чтения
Snapshot Snap: пользовательские уведомления об активности в блокчейне

MetaMask Snaps — это дорожная карта к тому, чтобы сделать MetaMask самым расширяемым кошельком в мире. Как разработчик, вы можете добавлять свои функции и API в MetaMask совершенно новыми способами. Web3-разработчики — это основа этого роста, и данная серия материалов призвана продемонстрировать новаторские MetaMask Snaps, создаваемые сегодня.

Snapshot Snap вместе с Minci

Мы беседуем с независимым Web3-разработчиком Minci, который создал Snapshot Snap на хакатоне ETHWarsaw — прототип приложения для настройки пользовательских уведомлений об on-chain активностях.

Snapshot: Demo Video

Snap Repo: https://github.com/iamminci/snapshot

Почему вы это создали?

Меня очень привлекает идея уведомлений кошелька об on-chain событиях. В web2 мы видим это повсюду — в PayPal и Venmo, — однако то, что индексирование делает эту функцию столь сложной задачей для web3, представляет собой интересную техническую проблему. Я хотел попробовать создать прототип приложения, который позволит любому пользователю настроить собственные уведомления об on-chain активностях. Для построения прототипа я использовал реализацию уведомлений в MetaMask Snaps.

Можете рассказать о технической реализации?

Техническая реализация включала в себя сначала настройку notification snap путём запуска установки через клиентское приложение. Затем пользователь настраивает snap для отслеживания интересующих его on-chain событий. Идея состояла в том, чтобы пользователь мог добавить в белый список любой адрес контракта и связанные с ним события, что инициировало бы не только уведомление, но и автоматические on-chain действия — например, отправку транзакции или выполнение DEX-сделки по триггеру. Автоматическая отправка стала возможной благодаря получению приватного ключа пользователя из BIP44 Address Key Deriver (отдельная благодарность Olaf за его воркшоп по использованию этой библиотеки), что позволяет выполнять действие без явного подтверждения со стороны пользователя. Мой прототип был ограничен примером ставки на Opensea и реализован с использованием API Opensea в тестовой сети Rinkeby.

Каковы следующие шаги, если вы будете реализовывать это дальше?

Демо-видео было основано на прототипе, который работал лишь для нескольких заранее настроенных сценариев (ставка на Opensea, автоматизация отправки эфира). Следующие шаги для воплощения этой идеи включают настройку какого-либо хранилища, позволяющего динамически обновлять события, которые отслеживает snap, без необходимости переустанавливать notification snap. Также было бы полезно реализовать дашборд для пользователей, позволяющий отслеживать существующие snaps и визуализировать сработавшие события в едином интерфейсе. Кроме того, стоит расширить диапазон автоматизированных триггерных действий — не ограничиваясь только отправками, но включив более сложные вызовы контрактов, такие как выставление лимитных ордеров или арбитраж.

Когда вы впервые познакомились с MetaMask Snaps и каким был ваш опыт?

Впервые я узнал о MetaMask Snaps, когда посетил стенд MetaMask на конференции Miami Permissionless. Идея о том, что это может стать экосистемой плагинов для MetaMask, меня очень воодушевила.

Чем MetaMask Snaps отличается от других кошельков?

Ни один другой кошелёк не предлагает настраиваемых плагинов, ориентированных на разработчиков. Я считаю, что это уникальная особенность MetaMask во всей экосистеме.

Расскажите, каково это — создавать MetaMask Snaps с MetaMask для вас и вашей команды.

Честно говоря, разработка с MetaMask Snaps не была лёгкой прогулкой. Думаю, главным недостатком стало отсутствие надлежащей документации. К счастью, было достаточно интересных примеров, из которых можно было черпать вдохновение для собственных решений, поэтому я настоятельно рекомендую любому разработчику, заинтересованному в создании snaps, сразу погрузиться в репозиторий с примерами.

Что для вас значит MetaMask Snaps?

MetaMask Snaps — это очевидное будущее web3.

Какие возможности вы видите в MetaMask Snaps и что это открывает для пространства Web3?

MetaMask Snaps может открыть безграничный мир возможностей в web3. Так же, как Chrome стал браузером по умолчанию благодаря экосистеме расширений, а VSCode — благодаря собственному маркетплейсу расширений. Я вполне могу представить, как MetaMask Snaps выводит MetaMask на новый уровень, позволяя разработчикам подключаться к инструментарию и смело экспериментировать, кастомизируя кошелёк по своему вкусу (и тем самым привлекая пользователей, которым эти инструменты окажутся полезными). Вокруг разработчиков, предлагающих наиболее интересные MetaMask Snaps, могла бы выстроиться интересная токеномика.

Есть ли советы, которыми вы хотели бы поделиться с разработчиками, желающими попробовать MetaMask Snaps?

Я бы призвал всех, кто интересуется MetaMask Snaps, сразу перейти к репозиторию с примерами, сделать форк и поэкспериментировать!

Разработка с MetaMask Snaps

Чтобы начать работу с MetaMask Snaps:

  1. Ознакомьтесь с документацией для разработчиков

  2. Установите MetaMask Flask

  3. Изучите руководство по MetaMask Snaps

  4. Оставайтесь на связи с нами в Twitter, GitHub discussions и Discord

Следите за нашей командой на следующем хакатоне рядом с вами! Удачной разработки ⚒️

Дисклеймер: MetaMask Snaps, как правило, разрабатываются третьими сторонами, а не Consensys Software. Использование MetaMask Snaps, разработанных третьими сторонами, осуществляется по вашему собственному усмотрению и на ваш риск, и вы соглашаетесь с тем, что несёте единоличную ответственность за любые убытки или ущерб, возникшие в результате такой деятельности. Consensys не предоставляет никаких явных или подразумеваемых гарантий, устных или письменных, в отношении MetaMask Snaps, разработанных третьими сторонами, и отказывается от какой-либо ответственности за них. Использование программного обеспечения, связанного с блокчейном, сопряжено с рисками, которые вы принимаете в полной мере при использовании MetaMask Snaps.

Переведено ИИ. Может содержать ошибки. Пожалуйста, всегда проверяйте информацию.

Оцените перевод

Автор статьи:

  • MetaMask

    MetaMask, ранее известная как Consensys Software Inc, — крупнейшая в мире самостоятельная финансовая платформа, предоставляющая людям единое место для хранения, расходования, накопления и приумножения средств как в криптовалюте, так и в традиционных активах. Компания создаёт потребительскую платформу, объединяющую платежи, сбережения, инвестиции и цифровые активы в едином бесшовном опыте. Вырастая из самого широко используемого в мире self-custodial кошелька, MetaMask предоставляет пользователям прямой контроль над их деньгами и активами, охватывая около 190 стран. MetaMask сыграл основополагающую роль в развитии Ethereum с 2016 года. Сегодня MetaMask занимает центральное место в экономике блокчейна, создавая операционную систему для Open Money и предоставляя людям полный контроль над их финансовой жизнью.

    Читать все статьи