nextcloud / nextcloud/tasks

[Enhancement] Vertically demonstrate dependency as a tree.

Open
#2,013 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
JavaScript
Stars
706
Forks
117
Avg merge
8h 50m
Merged PRs (30d)
18

Description

https://github.com/tasks/tasks/issues/1868#issue-1222154156 describes the request, whereas https://github.com/nextcloud/tasks/issues/2185#issue-1561309542 demonstrates the necessity of this.

Request

Many possible methods of easy demonstration of dependency exist, and each provides unique advantages.

Examples:

  1. Tree

    Provides additional information whilst displaying relationships in an intuitive manner.

    Examples:

    1. GitKraken

      image

      https://www.gitkraken.com/github-student-developer-pack-bundle

    2. Phabricator

      image

  2. Mindmap

    Conversely,

    <iframe src="https://anvaka.github.io/sayit/?query=tasks"></iframe> <!-- https://github.com/github/markup/issues/538#issuecomment-786402900 -->
    

    is able to demonstrate complex relation. However it does so without cohesive presentation of additional information, although a basic nested table

    flowchart TD
        A[Task] --> B[<b>Relation</b><br><table><tbody><tr><td><b>Attribute</b></td><td>Value</td></tr><tr><td><b>Attribute</b></td><td>Value</td></tr></tbody></table>]
        A --> C[<b>Relation</b><br><table><tbody><tr><td><b>Attribute</b></td><td>Value</td></tr><tr><td><b>Attribute</b></td><td>Value</td></tr></tbody></table>]
        B --> D[Relation]
        A --> E[Relation]
        B --> F[Relation]
        G[Relation] --> B
        A --> H[Relation]
    

    is not an infeasible manner of overcoming this barrier.

However, I believe that how Phabricator implemented this ability^0 is ideal (scroll to the Task Graph if your browser does not automatically) because it provides the advantages of the previous methods, yet provides intuitive vertical presentation of information, and retains the current list as the primary interface.

This is dependent upon implementation of https://github.com/tasks/tasks/issues/1867#issue-1222152770. It may be a duplicate of https://github.com/tasks/tasks/issues/452#issue-182067503, but I am not confident that it is.

Correlations
  1. https://gitlab.com/gitlab-org/gitlab/-/issues/273597
  2. https://gitlab.com/gitlab-org/gitlab/-/issues/29914
  3. https://github.com/nextcloud/tasks/issues/2013 and
  4. https://gitlab.com/gitlab-org/gitlab/-/issues/223035#note_931729947

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing the linked issues 1867 and 452 to understand the dependency model and whether this request is a duplicate. Done means presenting task dependencies as an intuitive vertical tree while retaining the current list as the primary interface.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
frontend
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.