We are trying to solve the problem of regular crypto donation for our Ukrainian volunteers. So we came up with the idea of the platform where volunteers can create their account page and add different tiers of subscription. For example:
Donors can easily support volunteers in 2 steps: connect wallet and sign subscription transactions.
Also, he can easily unsubscribe just in one click. And volunteers will get sustainable tool for crypto donation and will be able to claim their earnings for the predefined period of time.
It's a static website built with React, we've used Tailwind for CSS stuff, daisyUI for some components on top of React, it's hosted on Netlify, we've used Blocknative plugin to connect wallet and implement all logic of changing wallet, network. The subscription smart contract implemented on Rinkeby network, the contract implemented with Solidity. We don't have back-end since we don't need that, for the hosting provider in order to connect with blockchain we used Alchemy. We leveraged ERC 20 token which has a feature of allowance.
We used allowance mechanism to subscribe. So user just gives as allowance to use his money for some period of time for our smart contract.
But our smart contract doesn’t charge user immediately.
We developed our smart contract on Ethereum comparable blockchain: Ethereum, Polygon, Arbitrium.
We used such blockchain wallet: Metamask, Coinbase, WalletConnect.