For the simplest record keeping, add a separate TinyDB instance for each task or activity, changing the NameSpace of each to match the task or activity. Use the date as the tag, formatted in a consistent format using a Clock block. (I like yyyyMMdd because it sorts well.)
Use the count (default 0) of that activity on that date as the value for that tag.
This gives you direct update and read access to each activity of each date.
Use a couple of Date Pickers to set date ranges if you want to set date ranges.
The Clock component has blocks that help you enumerate the dates between start and end dates.