Client side to-do list