ransome1 / sleek

todo.txt manager for Linux, Windows and MacOS, free and open-source (FOSS)
https://github.com/ransome1/sleek/wiki
MIT License
1.33k stars 104 forks source link

Filtering by Due date #526

Open visvital opened 11 months ago

visvital commented 11 months ago

Feature Request

Description: As a user, I want to filter my tasks by due date, So that I could see the tasks which are:

Use Case: The scenario is pretty basic, the current set of filters on the tab allows for a pretty limited set of conditions (Priority, Context, Project). The user needs to be able to see the "due"'s they have on a particular timeline so that the work could be planned accordingly (regardless of priority). I might have (B) task, which is due Today, for example.

Implementation Details:

  1. The system introduces the following set of filters on the "Filters" tab of the Sleek app:
    • "Overdue" (shows the tasks with "due:"<current_date)
    • "Due today" (shows the tasks with "due:"=current_date)
    • "Due tomorrow" (shows the tasks with "due:"=current_date+1)
    • "Due this week" (shows the tasks with "due:"<=endOfWeek)
    • "Due this month"(shows the tasks with "due:"<=endOfMonth)
    • "All Due" ((shows the tasks with "due:"!=null))
  2. When the user applies the corresponding filter, the system displays the tasks according to the aforementioned instruction.
  3. When other filters are applied, the system accounts for their content and shows the tasks which satisfy the overall condition.

Additional Context: N/A

Important Note: N/A

ransome1 commented 11 months ago

@visvital thank you for this exemplary feature request ❤️

Implementation wise this is going to be quite a tricky one, but I'm glad to add it to the backlog. I think I remember there used to a similar feature request at some point. If I find it and if it is still open I will merge it with this one here.

FYI the latest developer preview (https://github.com/ransome1/sleek/releases/tag/v2.0.0-dev9) does offer a more detailed filtering. All dates can now be used for filtering the list. But from here to your proposal is still a long way.

Be warned, it is a complete rewrite and not yet finished, many things are still missing.

visvital commented 11 months ago

Thank you very much for the detailed response. I will make sure to check out the preview build! :)

visvital commented 11 months ago

@ransome1, I checked out the dev builds, and the filter appears to be okay for my use cases, especially assuming we can always sort by the due date :) One thing to the current dev implementation I would suggest is the highlight of the date tiles and the icons in the list based on the following logic:

Could you please also let us know where the findings of the dev builds could be reported to? (I'm missing the ability to zoom out in the interface a lot :))

Thank you very much!

ransome1 commented 11 months ago

@visvital it'd be best to check the current project kanban, if the missing features appear here in the backlog: https://github.com/users/ransome1/projects/3

For any new feature request either start working on it yourself or create an issue.

visvital commented 11 months ago

I would be glad to help to work on the issues, but, unfortunately, I don't have a proper skill set for programming at the large scale (more than just scripts :|)

Thank you very much, I will go ahead and review the board.

ransome1 commented 7 months ago

@visvital technically all the requirements of your feature request should be achievable with how the search filter function is currently established: https://github.com/ransome1/sleek/issues/179#issuecomment-1892777157

Feel free to text it out (https://github.com/ransome1/sleek/releases/tag/v2.0.7-rc.4) and join the discussion to shape that feature.

ransome1 commented 6 months ago

@visvital it's not exactly what you are asking for, but in this feature request (https://github.com/ransome1/sleek/issues/609) a function has been implemented, which might further help you. It's available in the latest pre-release of sleek.