project screenshot 1
project screenshot 2
project screenshot 3

ENS Expiry Notice from MetaMask

MetaMask Snap that reminds users of soon-to-expire ENS names in their wallet.

ENS Expiry Notice from MetaMask

Created At

ETHGlobal Tokyo

Winner of

🏊 The Graph — Pool Prize

2️⃣ Metamask — Best Snap

Project Description

This project will notify users when ENS names they own are about to expire, directly in MetaMask (and even natively with Chrome notifications when MetaMask is locked). These notifications are sent every week, at the start of the week, starting 45 days prior to the ENS name expiring. The ENS data is fetched from The Graph.

How it's Made

This project was kickstarted from the MetaMask Snap template repo (https://github.com/MetaMask/template-snap-monorepo). That includes Flask, the Snaps CLI, and a Gatsby frontend. I heavily modified the frontend using ENS' Thorin component library (https://thorin.ens.domains/) and used all new permissions in the Snap.

Initially, I was retrieving ENS expiration data from a standard API one by one, then realized I could use The Graph to make batch requests which allowed me to keep the code nice and clean (for a hackathon at least 😅). ENS has a subgraph deployed to Goerli which I'm using in the repo, but it's mapped perfectly with mainnet so switching it out once Snaps are in production will be trivial.

background image mobile

Join the mailing list

Get the latest news and updates