If you want to learn to get up early, you will create a recurring schedule for example at 8:00 AM, and other participants with the same desire will join your schedule. At the start all of you will need to stake an amount of ETH (as much as you want, but preferably an uncomfortable amount to lose). Each morning you and other participants in the schedule will need to come online *at the specific time* and `sign` a few quizes in a 5 minute window. (questions will be easy, just to wake you up a bit :o ). The signatures will be off-chain, without cost, verifying it's you, by the Contract, which will also hold and redistribute the funds. If someone snoozes or didn't wake up, he will be slashed, and his ETH will be shared across the other participants in the same room/schedule. It's just a game theory in practice. Can you survive the challenge till the end ? On your way, you can also receive some ETH from the others who failed.

Utro showcase

How it's made

Schedules creation and updates are stored in the blockchain. I do a lot of essential functionality directly on it to keep the decentralization. Nodejs + mongodb/mongoose to keep some data replication to manage the bussiness logic and coordination. React + antd for UI. I planned to use bulljs for cron jobs, but no time ..