Crypto Todo

Need to get work done? Use the power of social accountability and money to get stuff DONE! How you wonder? Crypto Todo is your answer!

The problem Crypto Todo solves

Have you been procrastinating on a task and need to get work done? Sometimes, the technology around us is turned against us in helping us use it meaningful and get things done (persuasive technology), so you can't blame yourself everytime for not being productive.

Social accountability is a powerful motivator. You're more likely to do something if you know someone else is going to hold you to it. Another powerful motivator is money. Loosing money, even bigger motivator. So, how could you combine these two to be more productive?

Here's where Crypto Todo steps in. Crypto To do is just like any other to-do list except for, for every to-do you add to the list, you need to pay ETH. You can only get this ETH back once you've successfully completed the task. If you don't you loose the money! This is the money aspect to getting things done for this project.

But wait, who verifies if you've actually completed it or not? Here's the social aspect! Your friends! You add your friends' addresses to the to-do while adding it to the list and as you complete the task, you send them proof and once all of them are adequately satisfied with your work, they'll call a method of the contract that'll transfer your money back to your account!

Challenges I ran into

I initially started out with the idea of using conditional tokens for this project. I had a hard time getting them to work (a lot of the import links in the tutorial were broken) and realised I didn't really need them for this project.

One bug I encountered was with the 'if' statement in solidity that limited the number of users who could be added as friends who verify the to do. I am working on this and hopefully will figure it out.

The project has a long way to go to be honest. In the end, my smart contract just didn't compile. I will work on this project further and ship it in the week ahead.