It is easy to schedule a transaction on your bank account. Like the monthly payment for you rent. But for Ethereum transactions, this is different. Easy things like putting DAI every week into a DeFi protocol requires you to do the transaction manually.
What it does
With On Time you can schedule your transaction on arbitrary conditions. Are you getting paid with Ether from your employer? Swap X amount into a ERC20 token on Uniswap based on arriving of payments in your wallet.
How I built it
Build it with the Gelato network. For the UI I used Angular and Angular Material Design. Ethers.js for handling the web3 connection.
Challenges I ran into
Calculating the correct data to call the smart contract with. Also there is no pattern yet, how do you build a DApp. Which address is connected on which network. If you support multiple networks, like mainnet and rinkeby. You need to distinguish between them for your ABIs and also for your smart contract addresses. Also support different proxy contracts which the user can use to interact with the Gelato network was a big pain point.
Accomplishments that I'm proud of
The whole DApp.
What I learned
A lot about web3 and smart contracts
What's next for on-time
Add new smart contracts like mStable that you can put something in their savings contract and accumulate mUSD.