Overview
Most task tools are good at capture and indifferent to what happens afterwards. This one is built around completion: the list is the input, and what it reports on is the follow-through.
Complexities tackled
Recurrence is harder than it looks. A task that repeats has to know the difference between not yet done, done, and missed, and that difference depends on a window rather than a flag. Getting the model right is most of the work; the interface over it is comparatively easy.
Measuring the right thing. Counting completions rewards someone for adding easy tasks. Tracking against what was planned is less flattering and more useful, and choosing the less flattering measure is the whole point of the tool.
Stack
C++.
Working on something similar?
Tell me what you are building and what is in the way. I will tell you honestly whether I am the right person for it.